私は次のようなことをしようとしています。
alias ftp='echo do not use ftp. Use sftp instead.'
偶発的な使用を防ぐためにftp
。しかし、私は気づいた。
ftp abcd.com
コマンドがエコーされるようにします。
do not use ftp. Use sftp instead. abcd.com
abcd.com
引数が検討されているからですecho
。
abcd.com
Bashで代替エントリを追加しないか、追加echo
引数として受け入れる方法はありますか? (それぞれの方法に解決策がありますか?)
私は私ができると思いました。
alias ftp='sftp'
しかし、私はコマンドを使用しないことを思い出させるためにすべてのコマンドを停止したいと思いますftp
。
ベストアンサー1
エイリアスを定義すると、作成したコマンドではなく、設定したコマンドが実行されます。つまり、 を実行するときにftp abc.com
実際に実行される内容は次のとおりです。
echo do not use ftp. Use sftp instead abc.com
簡単な解決策は、エイリアスの代わりに関数を使用することです。
ftp(){ echo 'do not use ftp. Use sftp instead'; }
または、printf
Costasの提案に応じて、次のものを使用できます。
alias ftp="printf 'do not use ftp. Use sftp instead\n'"