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

주요 문제는 명령과 매개변수를 동시에 참조하는 것입니다.

파일을 한 줄씩 읽으려면 항상 while루프가 아닌 for루프를 사용하십시오.

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

또한,

'명령'

구문은 2020년부터 더 이상 사용되지 않으며 다음 형식으로 대체되었습니다.

$(command)

최신 구문을 사용하는 것이 좋습니다. $() 내부의 백슬래시 처리는 놀라운 일이 아니며 $()는 중첩하기 더 쉽습니다. 바라보다http://mywiki.wooledge.org/BashFAQ/082

관련 정보