私はマシンのホスト名を抽出し、その後に存在するすべてを省略したいと思います.
。たとえば、コマンドはhostname
次のようになりますcompute-0-0.local
。だから`cutコマンドをこのように使用しました。
# hostname | cut -f 1 -d "."
compute-0-0
今、その出力を変数に入れたいと思います。次のコマンドは機能しません。
# HT=`hostname` | cut -f 1 -d "."
# echo $HT
compute-0-0.local
回避策がありますか?
答え1
代わりにこのコマンドを使用してください。完全なコマンドはバックティックで囲む必要があります。
HT=`hostname | cut -f 1 -d "."`
$()
以下も使用できます。
HT=$(hostname | cut -f 1 -d ".")
このコマンド代替構文はサポートされていません。特定の殻しかし、元のBourneシェル、csh、およびtcshが含まれています。これらのシェルの場合は、バックティックを使用する必要があります。