
を入力すると、cd Desktop
現在端末が開いているフォルダに関係なく、次に移動したいと思います。/home/bob-ubuntu/Desktop
私の.bashrc
ファイルの一番下には次の行があります。
alias desktop='/home/bob-ubuntu/Desktop'
alias Desktop='/home/bob-ubuntu/Desktop'
それからそれを得ましたが、入力するとcd Desktop
まだcd desktop
同じエラーが発生しますか?
答え1
alias desktop='/home/bob-ubuntu/Desktop' cd desktop
エイリアスはコマンド名です。コマンドの引数はcd
コマンド名ではありません。このコンテキストではエイリアスは使用されません。
と入力すると、エイリアスがdesktop
呼び出されます。しかし、デフォルトではエラーが発生します。
bash: /home/bob-ubuntu/Desktop: Is a directory
コマンドの場所にディレクトリ名を入力して、実行する行をshopt -s autocd
ディレクトリに追加します。この方法では、(代わりに)を入力するか、エイリアスを使用してディレクトリを変更できます。~/.bashrc
cd
~/Desktop
~/Desktop
cd ~/Desktop
desktop
または、有効なコマンドのエイリアスを定義します。
alias desktop='cd /home/bob-ubuntu/Desktop'
答え2
いくつかの方法があります:
- 変数を作成し
$desktop
たり$D
ショートカットとして機能したりできます。 - あなたはできます
alias desktop='cd /home/bob-ubuntu/Desktop'
- あなたはそれを使用することができます
$USER/Desktop
$XDG_DESKTOP_DIR
次の場合に使用できます。XDGユーザーディレクトリが設定されました。/home/bob-ubuntu
コマンドの環境変数に追加できます。CDPATH
cd
しかし、以下を使用することをお勧めします。
cd ~/Desktop
チルダがけがをしてはいけません! :D
$HOME
次のように、tildaを使用してシステム内の複数のユーザーのディレクトリに切り替えることもできます。
cd ~root
ls ~ftp
echo ~nobody
答え3
icarusがコメントで提案したように、簡単な方法はエイリアスを作成することです。cd ~/Desktop
ただし、本当にこれを行うには、ディレクトリが次のようになっていることを確認する関数にエイリアスを割り当てることcd
ができます。cd
Desktop
_cd () {
if [ "$1" == "Desktop" ]; then
cd ~/Desktop
else
cd $1
fi
}
alias cd="_cd"
ただし、これによりタブの完成がcd
中断される可能性があります。