この質問にはすでに回答があります :cdとlsのエイリアスを作成するにはどうすればよいですか?
(6つの回答)
6年前に閉鎖されました。
Ubuntu
(6つの回答)
6年前に閉鎖されました。
最初のbashスクリプトでは、本当に迷惑なものを作成したいと思います。フォルダを切り替えるときに、そのフォルダの内容が自動的に削除されるようにしたいのです。次のコードを〜/ .bashrcに追加してみました:
alias go='cd; ls'
簡単だと思いました!そうではありません。 go /etc
と入力している間 確かに/etcの内容がリストされていますが、作業ディレクトリは実際には変更されていません。以前のディレクトリに残っています。どうすればこれを修正できますか?
承認された回答:
あなたの例では、go /etc
cd; ls /etc
。つまり、最初にcd
現在のディレクトリをホームディレクトリに変更します。次に、ls /etc
/etc
の内容を表示します 。
次のように関数を定義することで、目的を達成できます。
function go() {
cd "$1" && ls
}
または、コマンドラインに1行で入力するだけです:
function go() { cd "$1" && ls; }
次に、go /etc
あなたが望むことをします。
$1
この例では、コマンドに渡される最初のパラメーターを参照します/etc
。 $2
で後続のパラメータを参照できます 、$3
など。