シェル スクリプト中に頻繁に使用するパスの「エイリアス」を作成しようとしました。 いろいろ試してみましたが、失敗しました。
myFold="~/Files/Scripts/Main"
cd myFold
bash: cd: myFold: No such file or directory
どうすれば動作させるのでしょうか?
ただし、cd ~/Files/Scripts/Main
動作します。
ベストアンサー1
これは環境変数なので (alias は では異なる定義を持っていますbash
)、次のように評価する必要があります。
cd "${myFold}"
または:
cp "${myFold}/someFile" /somewhere/else
しかし、そのディレクトリに簡単に切り替えたいだけなら、本物bash
エイリアス(のようなスタートアップ ファイルの 1 つ.bashrc
)を使用すると、キーストロークを節約できます。
alias myfold='cd ~/Files/Scripts/Main'
次に、( なしでcd
) を使用します。
myfold
定義を削除するには、 を使用しますunalias
。次のトランスクリプトは、全て実際のところ、次のようになります。
pax> cd ; pwd ; ls -ald footy
/home/pax
drwxr-xr-x 2 pax pax 4096 Jul 28 11:00 footy
pax> footydir=/home/pax/footy ; cd "$footydir" ; pwd
/home/pax/footy
pax> cd ; pwd
/home/pax
pax> alias footy='cd /home/pax/footy' ; footy ; pwd
/home/pax/footy
pax> unalias footy ; footy
bash: footy: command not found