Shell 스 크 립 트 전송 매개 변수 방법 요약
[root@svn shell_example]# cat params.sh
#!/bin/bash
#
echo "My name is `basename $0` -I was called as $0"
echo "My first parameter is : $1"
echo "My second parameter is : $2"
빈 매개 변수 실행
[root@svn shell_example]# sh params.sh
My name is params.sh -I was called as params.sh
My first parameter is :
My second parameter is :
매개 변수 2 개 전달 실행
[root@svn shell_example]# sh params.sh one two
My name is params.sh -I was called as params.sh
My first parameter is : one
My second parameter is : two
2.그럼 인자 가 있 으 면 어떻게 합 니까?한 명 씩 더?정 답 은 부정 적 이다다음 용법 은 낯 설 지 않 을 것 입 니 다.바로 스 크 립 트 자 체 를 직접 실행 하 는 것 입 니 다.어떠한 인자 도 첨부 되 지 않 았 습 니 다.그러면 스 크 립 트 는 도움말 정 보 를 말 합 니 다.즉,이 스 크 립 트 를 어떻게 사용 하 는 지 입 니 다.빨 간 글자 부분 을 보십시오.
[root@svn shell_example]# sh params_v2.sh
My name is params_v2.sh -I was called as params_v2.sh
I was called with 0 parameters.
Usage: params_v2.sh first second
You provided 0 parameters,but 2 are required.
코드 는 다음 과 같다.
[root@svn shell_example]# cat params_v2.sh
#!/bin/bash
#
echo "My name is `basename $0` -I was called as $0"
echo "I was called with $# parameters."
if [ "$#" -eq "2" ];then
echo "My first parameter is $1"
echo "My second parameter is $2"
else
echo "Usage: `basename $0` first second"
echo "You provided $# parameters,but 2 are required."
fi
자세 한 실행 과정 은 다음 과 같다.전달 되 지 않 는 매개 변수 실행
[root@svn shell_example]# sh params_v2.sh
My name is params_v2.sh -I was called as params_v2.sh
I was called with 0 parameters.
Usage: params_v2.sh first second
You provided 0 parameters,but 2 are required.
매개 변수 3 개 전달 실행
[root@svn shell_example]# sh params_v2.sh one two three
My name is params_v2.sh -I was called as params_v2.sh
I was called with 3 parameters.
Usage: params_v2.sh first second
You provided 3 parameters,but 2 are required.
매개 변수 2 개 전달 실행
[root@svn shell_example]# sh params_v2.sh one two
My name is params_v2.sh -I was called as params_v2.sh
I was called with 2 parameters.
My first parameter is one
My second parameter is two
문제 가 생 겼 는데 후기 에 인 자 를 더 하면 어떻게 합 니까?아니면 나 도 도대체 몇 개의 인 자 를 전달 할 지 확실 하지 않다.해결 방법 은 다음 과 같 고 상세 한 집행 결 과 는 다음 과 같다.
[root@svn shell_example]# cat manyparams.sh
#!/bin/bash
# N
echo " `basename $0` - $0"
echo " $# "
count=1
while [ "$#" -ge "1" ];do
echo " $count $1"
let count=count+1
shift
done
매개 변수 실행[root@svn shell_example]# sh manyparams.sh one
제 이름 은 manyparams.sh 입 니 다.-저 는 manyparams.sh 입 니 다.
저 는 1 인자 가 있 습 니 다.
매개 변수 번호 가 1 이면 one 입 니 다.
5 개 매개 변수 실행
[root@svn shell_example]# sh manyparams.sh one two three four five
제 이름 은 manyparams.sh 입 니 다.-저 는 manyparams.sh 입 니 다.저 는 5 인자 가 있 습 니 다.
매개 변수 번호 가 1 이면 one 입 니 다.
매개 변수 번호 2 는 two 입 니 다.
매개 변수 번호 3 은 three 입 니 다.
매개 변수 번호 4 는 four 입 니 다.
매개 변수 번호 5 는 five 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Shell alias 명령에 별칭을 설정하는 방법명령에 별명을 설정하면 명령의'작은 이름'으로 삼을 수 있지만, 이렇게 하는 것이 무슨 의미가 있습니까? 이때 별명이 작용할 수 있다.vim 명령의 별명을vi라고 정의하면 이후에 실행된vi 명령은 실제로vim 명령을...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.