/home/downloads/
たとえば、特定のディレクトリでターミネータを開き、コマンドを実行したいとします。
この「カスタムコマンド」を使用して最初の部分を完了しました。cd /home/downloads; bash
ターミネータはこのディレクトリで実行されますが、2番目の部分をどのように完了できますか?
ls
今すぐダウンロードディレクトリから終了者が起動したので、rake
コマンドやいくつかのエイリアスをコマンドとして使用するなど、必要なコマンドを実行したいと思います。どうすればいいですか?
ターミネータを右クリックし、「パラメータ」を選択してから「レイアウト」を選択し、「カスタムコマンド」セクションにテキストを追加しました。
これらのタスクはすべて、ターミネータの起動後に自動的に実行する必要があります。
答え1
cd /home/downloads; exec bash
カスタムコマンドで実行します。 (exec
組み込み機能はbash
ターミナルエミュレータの子孫になることを保証します。組み込み機能がなければ最終的に孫になることができます。)terminator -e 'cd /home/downloads; exec bash'
コマンドラインから実行できます。
エイリアスはによって定義されるため、カスタムコマンドではエイリアスを使用できません~/.bashrc
。ただし、ファイルは、ターミナルエミュレータとスクリプトシェルの間をリンクするように機能するスクリプトシェルではなく、対話型シェルによってのみロードされます。エイリアスを使用するには、明示的にロードする必要があります。別のファイルに入れるとこんな感じになります。
. ~/.bash_aliases; cd /home/downloads; exec bash
またはコマンドラインから
terminator -x bash -c '. ~/.bash_aliases; cd /home/downloads; exec bash'
エイリアスがある場合~/.bashrc
を使用してください。ただし、シェルが対話型ではないため、エイリアスに. ~/.bashrc
エラーを引き起こす可能性がある可能性があることに注意してください。.bashrc
これが発生した場合、最も簡単な解決策は、エイリアス(およびグルーコードで使用したい機能やその他の設定)を別々のファイルに分割し、それを使用し.
ます.bashrc
。
答え2
私も同じ問題がありますTerminator を使用した仮想環境の有効化。
秘密は、「1つの」コマンドですべてのことを実行することですbash
。-i
オプション(インタラクティブ)を活用し、必要に応じて設定--rcfile
でカスタマイズを使用します。PROMPT_COMMAND
結果は次のとおりです。
command = "bash --rcfile <(cat ${HOME}/.bashrc; echo 'export PROMPT_COMMAND="your commands; go here; unset PROMPT_COMMAND"') -i"
your commands; go here;
実際のコマンドに置き換えてください。説明についてはこの回答をご覧ください。。
答え3
最初のコマンドを追加したのと同じ方法で別のコマンドを追加するだけです。たとえば、次のようにしますls
。
cd /home/downloads; ls; bash
プロフィールの「コマンド」オプションに以下を追加できます。
取得できない理由は、rake
デフォルトパスにないためです。これを使用するにはパスを指定する必要があります。したがって、まず端末で次のコマンドを実行します。
type rake
これにより、このような結果が返されます/foo/bin/rake
。それ必要な道です。上記のカスタムコマンドに以下を追加します。
cd /home/downloads; /foo/bin/rake; bash
エイリアスには機能しません。エイリアスはシェルによって設定され、ここでは使用できません。解決策はスクリプトを使用することです。したがって、次のエイリアスがある場合:
alias foo="command1 argument2"
スクリプトを作成して呼び出したら、次の内容でfoo.sh
保存してください。/home/youruser/bin
#!/usr/bin/env bash
command1 argument2
実行可能にします。
chmod a+x /home/username/bin/foo.sh
次に、カスタムコマンドセクションで次を使用します。
cd /home/downloads; /home/username/bin/foo.sh; bash
答え4
開いているターミネータウィンドウを右クリックすると、「初期設定」を選択できます。 「プロファイル」を選択し、「コマンド」タブを選択します。 「私のシェルの代わりにカスタムコマンドを実行する」というチェックボックスがあります。
私はこれがあなたが探しているものだと思います。