たとえば、次のように設定できます。
gb = cd /media/Dan/evolution
gb
... bashで実行するたびにcd
その特定のディレクトリに移動できるようにするには?
オンラインで何かを見つけました:alias
コマンド。しかし、上記の作業を完了できないようです。
可能ですか?どのように?
答え1
以下を入力してください。
alias gb='cd /media/Dan/evolution'
この設定を永続的にするには(再起動するか、他のコンソールを開いた後も保持するように)、〜/ .bashrcファイルにこの行を追加します(bashをデフォルトのシェルとして使用するとします)。
答え2
エイリアスの代替
gb() { cd /media/Dan/evolution; }
これは、引数を使用せずにcd /media/Dan/evolutionを実行するシェル関数gbを定義します。他の提案と同様に、~/.bashrcに追加できます。
答え3
これは可能で、alias
あなたが探しているコマンドです。たとえば、alias ll="ls -l"
bashでは、エイリアスを設定するときにスペースは使用されませll
んls -l
。man alias
役に立つかもしれません。
答え4
あるいは、Cプログラムを作成して必要なコマンドを呼び出し、それを/ usr / binに保存することもできます。
#include <stdio.h>
#include <string.h>
int main () {
char command[50]; //notice you can change this to fit your needs
int return_val;
strcpy( command, "echo \"cd /media/Dan/evolution\" | bash -i" );
return_val = system(command);
//this is equivalent to entering the command in a new bash,
//which will return and exit
return return_val;
}
コンパイルするには、ソースコードを保存したディレクトリに移動して実行します(sudoが必要な場合があります)。
gcc ./gb.c -o /usr/bin/gb
さらなる調査の後ここsystem()
、単にコマンドを入力するだけではbashの組み込み機能が機能しないことに気づきました。これがインタラクティブなbashインスタンスを作成し、ここにコマンドを反映する必要がある理由です。シェルスクリプトへの呼び出しを短くしたい場合を除き、複雑すぎておそらく役に立たないでしょう(some_script
そうではありませんsh ~/radgeRayden/Scripts/some_script
)。