사용자가 확인 메시지를 누를 때까지 기다리고 싶습니다 Return. Bash에서는 전화할 수 있어요
$ read
$
그러나 sh(내 경우에는 대시)에서는 다음을 얻습니다.
$ read
sh: 1: read: arg count
$
내가 보기엔~ 해야 하다인수를 제공하시겠습니까? 이 차이는 어디에서 오는가?
답변1
이것표준 read
유틸리티필요마지막 하나변수의 이름입니다.
일부 쉘 read
구현에서는 다음을 사용합니다.기본예를 들어 변수는 REPLY
이름을 제공하지 않고 읽은 데이터를 저장하지만 dash
POSIX 호환을 위한 쉘은 그렇지 않습니다(표준에서는 이를 요구하지 않으므로). 쉘에서 이에 상응하는 것은 다음 과 같습니다 dash
.
read REPLY
shell bash
POSIX 모드에서도하다POSIX가 아닌 일부 기능을 활성화합니다. 이는 read
쉘을 실행하더라도 변수 이름 없이 작동한다는 것을 의미하는 것 중 하나입니다 bash --posix
.
POSIX 모드가 활성화되었을 때 발생하는 이벤트의 전체 목록 bash
(이 질문은 실제로 관련이 없음)을 보려면 다음을 참조하세요.https://www.gnu.org/software/bash/manual/html_node/Bash-POSIX-Mode.html