본문 바로가기

스크립트

쉘 스크립트의 명령행 인자(arguments)를 사용하는 방법

반응형

쉘 스크립트의 명령행 인자(arguments)를 사용하는 방법

명령행 인자는 스크립트를 실행할 때 스크립트에 전달되는 값들을 나타냅니다. 스크립트 내에서는 $1, $2, $3, ..., $n과 같은 변수를 사용하여 명령행 인자에 접근할 수 있습니다. 여기서 $1은 첫 번째 인자, $2는 두 번째 인자, 그리고 $n은 n 번째 인자를 나타냅니다.

간단한 쉘 스크립트의 예제

  • 쉘 스크립트 편집
vim myscript.sh
#!/bin/bash

# 명령행 인자 사용
echo "첫 번째 인자: $1"
echo "두 번째 인자: $2"
echo "세 번째 인자: $3"

# 전체 인자 개수
echo "전체 인자 개수: $#"

# 전체 인자 배열
echo "전체 인자 배열: $@"

# 인자들을 반복하여 출력
for arg in "$@"; do
  echo "인자: $arg"
done
  • $#는 전체 인자의 개수를 나타내며, $@는 전체 인자들을 배열로 나타냅니다.

이 스크립트를 실행할 때 명령행에서 값을 전달하면 해당 값들이 스크립트에서 참조됩니다.

 

  • 스크립트 실행 권한 여부
chmod +x myscript.sh
  • 스크립트 실행
./myscript.sh value1 value2 value3
$ ./myscript.sh value1 value2 value3
첫 번째 인자: value1
두 번째 인자: value2
세 번째 인자: value3
전체 인자 개수: 3
전체 인자 배열: value1 value2 value3
인자: value1
인자: value2
인자: value3

스크립트 내에서 $1, $2, $3 등을 사용하여 명령행 인자에 접근할 수 있습니다.

728x90

인자(Argument)

  • 용어 설명 : 함수나 명령어에 전달되는 값 또는 데이터.
  • 사용 예제 : 함수 호출 시 전달되는 값이나 명령어 실행 시 전달되는 값.
  • 컨텍스트 : 함수나 명령어에 값을 전달할 때 사용되는 값.
# 예제: echo 명령어에 전달된 "Hello, World!"가 인자이다.
echo "Hello, World!"

파라미터(Parameter)

  • 용어 설명 : 함수나 명령어에 전달된 인자를 받아들이는 변수 또는 위치.
  • 사용 예제 : 함수나 명령어 정의 시 받아들일 값을 나타내는 변수 또는 위치.
  • 컨텍스트 : 함수나 명령어를 정의할 때 사용되는 변수 또는 위치.
# 예제: 함수 정의 시 받아들일 인자를 나타내는 $1과 $2가 파라미터이다.
my_function() {
  echo "첫 번째 파라미터: $1"
  echo "두 번째 파라미터: $2"
}

즉, 인자값 자체를 나타내고 파라미터는 해당 값을 받아들이는 변수나 위치를 나타냅니다. 함수나 명령어를 사용할 때 값을 전달할 때 그 값은 인자이고 해당 값을 받아들이는 변수나 위치는 파라미터입니다.

 

예를 들어, 함수를 호출할 때 전달되는 값들은 인자이고 함수를 정의할 때 받아들일 값들은 파라미터입니다. 이러한 용어들은 프로그래밍 언어나 환경에 따라 조금씩 다를 수 있으므로 구체적인 문맥에서 사용되는 의미를 파악하는 것이 중요합니다.

 

728x90
반응형