Computer >> 컴퓨터 >  >> 프로그램 작성 >> BASH 프로그래밍

2개의 예제 셸 스크립트로 설명된 Bash 위치 매개변수

매개변수는 값을 저장하는 엔티티입니다. 이름, 숫자 또는 일부 특수 문자가 될 수 있습니다. 변수는 이름으로 표시되는 매개변수입니다. 일부 변수는 이미 설정되어 있으며 대부분은 값을 할당할 수 없습니다.

이러한 변수에는 쉘 스크립트가 실행 중인 환경에 대해 알 수 있는 유용한 정보가 포함되어 있습니다.

Bash는 두 종류의 매개변수를 제공합니다.

  • 위치 매개변수
  • 특수 매개변수

이 기사에서는 예제를 통해 bash 위치 매개변수에 대해 논의해 보겠습니다.

이 기사는 진행 중인 bash 튜토리얼 시리즈의 일부입니다.

예시 1:Bash 위치 매개변수 – $0, $1, $2 ..

위치 매개변수는 스크립트가 호출될 때 스크립트에 제공되는 인수입니다. $1에서 $N까지 가능합니다. N이 한 자리 이상으로 구성된 경우 ${N}과 같이 중괄호로 묶어야 합니다.

변수 $0은 기본 이름입니다. 프로그램 이름 그대로.

다음 예제는 두 개의 인수를 가져오고 두 정수 간의 산술 연산 결과를 제공합니다.

<센터>

먼저 아래와 같이 arithmetic.sh 쉘 스크립트를 생성합니다.

$ cat arithmetic.sh
#!/bin/bash

echo -e "\$1=$1"
echo -e "\$2=$2"

let add=$1+$2
let sub=$1-$2
let mul=$1*$2
let div=$1/$2

echo -e "Addition=$add\nSubtraction=$sub\nMultiplication=$mul\nDivision=$div\n"

그런 다음 아래와 같이 적절한 매개변수를 사용하여 arithmetic.sh를 실행합니다.

$ ./arithmetic.sh 12 10
$1=12
$2=10
Addition=22
Subtraction=2
Multiplication=120
Division=1

위의 출력에서 ​​$1의 값은 12이고 $2의 값은 10입니다.

쉘 내장 'let'을 사용하면 쉘 변수에 대해 산술 연산을 수행할 수 있습니다. 위의 스크립트는 주어진 매개변수에 대해 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 산술 연산을 수행합니다.

예시 2:Bash 위치 매개변수 설정/해제

내장된 set 명령은 위치 매개변수를 설정 및 해제하는 데 사용됩니다.

먼저 아래와 같이 positional.sh 쉘 스크립트를 생성합니다.

$ cat positional.sh
#!/bin/bash

# From command line
echo -e "Basename=$0"
echo -e "\$1=$1"
echo -e "\$2=$2"
echo -e "\$3=$3"

# From Set builtin
set First Second Third
echo -e "\$1=$1"
echo -e "\$2=$2"
echo -e "\$3=$3"

# Store positional parameters with -(hyphen)
set - -f -s -t
echo -e "\$1=$1"
echo -e "\$2=$2"
echo -e "\$3=$3"

# Unset positional parameter
set --
echo -e "\$1=$1"
echo -e "\$2=$2"
echo -e "\$3=$3"

위의 스크립트는 먼저 명령줄 인수를 인쇄한 다음 set 명령이 위치 매개변수를 명시적으로 설정합니다. –로 설정하면 옵션의 끝을 참조합니다. 이후의 모든 인수는 '-'로 시작할 수 있는 경우에도 위치 매개변수입니다. 다른 인수 없이 '-'로 설정하면 모든 위치 매개변수가 설정 해제됩니다.

다음으로 아래와 같이 positional.sh를 실행합니다.

$ ./positional.sh
Basename=t.sh
$1=12
$2=10
$3=
$1=First
$2=Second
$3=Third
$1=-f
$2=-s
$3=-t
$1=
$2=
$3=

다음 기사에서는 bash 특수 매개변수에 대해 예제를 통해 논의해 보겠습니다.