
다음과 같이 읽기를 사용하여 파일 설명자에서 읽으려고 합니다.
read -u fd
좋다이 링크에서.
이것은 내 bash 스크립트에서 사용하는 코드입니다.
MESSAGE=$(read -u $NODE_CHANNEL_FD)
echo " parent message => $MESSAGE" >&2
정확한 오류 메시지:
read: Illegal option -u
이것이 무엇인지 아는 사람 있나요?
답변1
이 오류 메시지는 실제로 실행 스크립트를 사용하고 있지 않음을 나타냅니다 bash
.
스크립트를 실행 가능하게 만들고 #!
스크립트의 첫 번째 줄에 적절한 -line을 추가합니다.
#!/bin/bash
또는 스크립트를 명시적으로 실행합니다 bash
.
$ bash script.sh
별도의 언어를 구현하는 것으로 간주 sh
하고 bash
작성 중인 스크립트에 맞는 인터프리터를 사용해야 합니다. 이 경우에는 read
with 옵션을 사용합니다 -u
. 이는 원래 ksh
표준 read
사양 의 확장 bash
이었으며 zsh
. 따라서 을 사용 bash
하거나 zsh
스크립트를 실행 해야 합니다 ksh
.
언제 사용해야 하는지 sh
, 언제 다른 쉘을 사용해야 하는지 어떻게 알 수 있나요 bash
? 간단하며 sh
작동 방식과 다른 쉘에 추가되는 다른 기능을 배울 수 있습니다.