バックグラウンドで実行するコマンドのエイリアス


25

キーボードショートカットが機能するようにしたい:

> e foo.txt

として展開する

> emacs foo.txt &

を使用するのは簡単ですが、ファイル名alias e=emacs&後に挿入するにはどうすればよいですか?だけaliasでは使用できない可能性があるので、bashソリューションを受け入れます。シェルスクリプトが必要な場合は、その仕組みを説明してください。


4
あなたは使うべきemacsclientか、gnuclient新しいを開くのではなく、コマンドラインからファイルを開くには、emacsファイルごとに:emacswiki.org/emacs/EmacsClientを
andcoz

回答:


38

bashのエイリアスには引数を指定できませんが、関数を使用できます。

e() { emacs "$@" & }

それから

e foo.txt

あなたがしたいことをします。


1
これには、e foo*との両方foo.cppを含むディレクトリを入力したときに問題が発生foo.hします。ファイルの1つだけが開きます。
フック

4
@Hooked、関数の"$@"代わりに使用"$1"します。
AProgrammer

1
@AProgrammerはワイルドカードでは機能しないようです。私が使用している構文は次のとおりです。emacs $* &そしてさらに良い解決策があると思われるe() { command emacs $* & disown }
名前
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.