特定のコマンドを実行するために単語を指定する方法

特定のコマンドを実行するために単語を指定する方法

私はそれについて非常に新しく、bash私が望むことが可能であるかどうかわかりません。私が無意識のうちにあまりにも多くを要求して、これが不可能な場合は、あらかじめごめんなさい。

bash少し編集した後は、テストや学習プロセスのために多すぎるさまざまなスクリプトを実行していました。

毎分コマンド全体を繰り返し入力することは本当に迷惑で、多くの時間を無駄にします。

たとえば、現在のスクリプトを実行するときは、常に次のように入力します。

su -c sh /sdcard/downloads/script1.sh

とにかく、1つを入力して起動するようにコマンド全体を割り当てることはできますか?一言?たとえば、入力したいと思います。

script1 

これは実際に実行する必要があります

su -c sh /sdcard/downloads/script1.sh 

(またはそのインスタンスに対して定義されたコマンド)。

簡単に言えば、単語とそのコマンドのペアが多く、時間が節約されます。

そしてこれは永久的でなければなりません。

端末を閉じて再度開き、指定した単語を入力しても対応する定義コマンドを実行する必要があります。

私はこれを行う方法があったらと思います。

答え1

~/.bashrcファイルにエイリアスを作成します。

alias script1='su -c sh /sdcard/downloads/script1.sh'

このエイリアスは、開始する次のシェルセッションで使用できます。

答え2

alias script1="su -c /sdcard/downloads/script1.sh && su -c /sdcard/downloads/script2.sh'. 正しく表示されますか?

まさか。これはおそらく行く道ではないでしょう。これは非現実的です。そのエイリアスと現在位置の両方のスクリプトに対して機能しますが、呼び出すすべてのスクリプトに対してエイリアスを作成したくありません。 「様々な学習スクリプト」に言及しました。

タブ補完、コマンド履歴、パス、エイリアス、関数、スクリプト、bashログイン()を設定する必要があります.bashrc。時間はかかりませんが、調整が必要です。

注:aliasコマンド自体はタブで完了できます。 readline 関数は、shell-expand-line実行前にエイリアスを拡張できます。つまり、scri<tab><M-C-e>行全体をインポートするので、Enterキーを押す前に編集できます。何ができるかを見せるためです。

特別なコマンドを繰り返すには、コマンド履歴を使用することをお勧めします。通常のスクリプトを実行するには、エイリアス、パス、関数、その他のスクリプトなどのシェル機能を使用できます。

関連情報