回答:
ショートカットの簡単な方法は、 alias
alias dcls='docker container ls'
これはユーザーdocker container ls
が入力dcls
したときに実行alias
され、コマンドは定義されたエイリアスをリストします。このエイリアスを削除するには、を使用しますunalias dcls
。
bashを使用する場合は、エイリアスを~/.bashrc
やに保存できます~/.bash_aliases
。
~/.bash_aliases
起動時にが読み込まれない場合は、次の行を追加できます~/.bashrc
。
[ -f ~/.bash_aliases ] && . ~/.bash_aliases
~/.bashrc
か、~/.profile
あなたがログアウトしたときに、それが失われたエイリアスまたは近いターミナル保存しないと...か。
echo "alias dcls='docker container ls'" >> ~/.bashrc
、ソースを入力する. ~/.bashrc
か、ログアウトして再度ログインします。
実際、あなたが説明することはうまくいくでしょう、いくつかのメモがあります:
docker container ls
と呼ばれるファイルに単に置くことができます/bin/dcls
。しかし、その動作は少し複雑になる可能性があります。「シェバン」と呼ばれる行でファイルを開始する方が少し信頼性が高いので、ファイルは次のようになります。#!/ bin / sh ドッカーコンテナーlsこれは、ファイルがシェルスクリプトであることを指定します。
chmod + x / bin / dclsこれを行うには、おそらくrootである必要があります(つまり、で実行します
sudo
)。上記の2つの手順を実行すると、入力できるようにdcls
なり、実行されますdocker container ls
。ただし、と入力してもdcls -l foo
、引き続き機能しますdocker container ls
。やりたい場合はdocker container ls -l foo
、スクリプトを次のように変更する必要があります。
#!/ bin / sh Dockerコンテナls "$ @"これは、
dcls
コマンドラインで入力する引数をコマンドに渡す必要があることを指定しますdocker container ls
。
当然ながら、コマンドライン引数を使用してできることはもっと複雑です。
1つの単純なコマンド→1つの単純なコマンドのマッピングで、他のユーザーと共有する必要がない場合は、エイリアス(Freddyが示唆したとおり)またはシェル関数を定義する方が簡単です。多くの場合、より複雑な関数はスクリプトとして記述されます。つまり、コマンドを含むテキストファイルです。ただし、他のユーザーと共有する必要がない場合は、プライベートbin
ディレクトリを使用するのが一般的です。
$ cd #(ホームディレクトリに) $ mkdir bin次ににコピー
dcls
し$HOME/bin
て追加しますexport PATH = "$ HOME / bin:$ PATH"あなたに
~/.bashrc
。
また、個人的なスクリプトをに入れて、システムに付属のプログラムに/usr/local/bin
残すことも一般的/bin
です。
/bin
、 /usr/bin
と一般的に共有ディレクトリのように/usr/local/bin
、時には/opt
ので、これらのディレクトリ内のプログラムは、すべてのユーザーにご利用いただけます。
/usr/local/bin
、パッケージマネージャーに干渉しないようにしてください。
$HOME/bin
ます。あなたは本当にこれを使うべきです。これは適切なスコープであるだけでなく、システムを再インストールするときに(およびを保持するときにHOME
)カスタムコマンドを失わないようにするのに役立ちます。
あなただけの場合、エイリアスは問題ありませんが、Linux Filesystem Hierarchy Standardによると、ローカルシステム全体のスクリプトは、/usr/local/bin/
ではなくに移動し/bin
ます。
/bin
ますが、特にソフトウェアを顧客のサイトに展開する場合は、標準を維持することをお勧めします。/opt
スクリプト自体は次のようになります。
#!/bin/bash
#
# Version 1.0 DD 2019-05-04
# dcls = docker container ls
docker container ls "@0"
if [[ $? -eq 0 ]]; then
echo -e "Errors encountered..."
exit 1
fi
/bin
追加できます。この場合は、エイリアスを使用する方が適切です。~/bin
/usr/local/bin