저는 Linux를 시작하는 방법을 배우고 있는데 이해하지 못하는 내용을 발견했습니다. "다음 명령이 실행되었습니다.
set 10 20 30 40 50
변수 값을 입력하세요 $#
.
내가 이해하는 것은 변수 $1=10 $2=20
등입니다. 그럼 $#
어떻게 될까요?
답변1
다음 bash를 가정하십시오.
#!/bin/bash
echo $#
이것을 실행하면 ./arg.sh g jt t uu
셸에 전달한 인수 수인 4가 반환됩니다.
쉘 스크립트의 매개변수를 연구하는 것이 좋습니다.
다음과 같은 프로그램 사용법이 있다고 가정합니다.
--value PATTERN -o PS_COMMAND_OPTIONS
그러면 다음과 같이 코드를 조사할 수 있습니다.
if [ "$1" = "--value" -a "$3" != "-o" -o "$1" != "--value" -a "$3" = "-o" -o ! $# -eq 4 ]; then
help;
exit;
fi;
답변2
저도 리눅스를 시작하고 있습니다. 나는 그것이 총 매개 변수 수를 의미한다는 것을 이해합니다. 다음과 같이 사용할 수 있습니다.
#!/bin/bash
if [ $# = 2 ]
then echo "Your name is $1 $2"
else
echo "You need two arguments"
fi