以下のスクリプトを使用して、最後に出力される IP アドレスを取得し、ping を実行できるようにします。
#!/usr/local/bin/bash
echo -n "Enter server number:"
read userinput
lookupip="d $userinput"
if [[ $userinput -lt 0 || $userinput -gt 9999 ]] #checks that the input is within the desired range
then
echo "Input outside acceptable range."
else
#grep gets just the IP address
$lookupip | grep -E -o '(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)' | sed '1 ! d'
出力でこれを行う方法がわかりません:
> or >> filename | xargs ping
grep コマンドの前後で " または ` を使用する (または、次のように変数に入れる:
ipgrep=$(grepcommand)
ipgrep=`grepcommand`
または変数が機能していないようです。