ping用のbashスクリプトを作成してください。

ping用のbashスクリプトを作成してください。

以下のスクリプトは機能しません。どんな助けでも大変感謝します。

for host in `cat db_hosts_imsi.txt` ; do "ping6 $host"; done
-bash: ping6 2606:ae00:3001:8311:172:16:244:1d: command not found
-bash: ping6 2606:ae00:3001:8311:172:16:244:45: command not found
-bash: ping6 2606:ae00:3001:8311:172:16:244:54: command not found

ベストアンサー1

このように:

while IFS= read -r host; do
    ping6 "$host"
done < db_hosts_imsi.txt

主な問題は、コマンドとパラメータを同時に参照することです。

ファイルを1行ずつ読み取るには、常にwhileループではなくforループを使用してください。

http://mywiki.wooledge.org/BashFAQ/001

また、

「コマンド」

構文は2020年以来廃止され、次の形式に置き換えられました。

$(command)

最新の構文を使用することをお勧めします。 $() 内のバックスラッシュ処理は驚くべきことではなく、$() は入れ子になりやすいです。バラよりhttp://mywiki.wooledge.org/BashFAQ/082

おすすめ記事