별칭은 백그라운드에서 실행할 명령


25

키보드 단축키가 다음과 같이 작동하도록하고 싶습니다.

> e foo.txt

로 확장

> emacs foo.txt &

사용 alias e=emacs하는 것은 간단 하지만 &파일 이름 뒤에는 어떻게 삽입 합니까? 을 사용하여 가능하지 않을 수도 있으므로 aliasbash 솔루션을 수락합니다. 쉘 스크립트가 필요한 경우 어떻게 작동하는지 설명하십시오.


4
각 파일에 대한 새 파일 을 여는 대신 명령 줄에서 파일을 사용 emacsclient하거나 gnuclient열어야 emacs합니다. emacswiki.org/emacs/EmacsClient
andcoz

답변:


38

bash의 별칭은 인수를 사용할 수 없지만 함수를 사용할 수 있습니다.

e() { emacs "$@" & }

그때

e foo.txt

당신이 원하는 것을 할 것입니다.


1
내가 입력 할 때이 문제가 e foo*둘 다를 가진 디렉토리 foo.cppfoo.h열립니다 파일의 하나.

4
@Hooked, "$@"대신 "$1"함수에서 사용하십시오.
AProgrammer

1
와일드 카드에서는 작동하지 않는 @AProgrammer 내가 사용 구문은 다음과 같습니다 emacs $* &과 더 나은 솔루션이 될 것으로 보인다e() { command emacs $* & disown }
이름
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.