본문 바로가기
OS/Linux Server

[Shell Programming] 6. Positional Parameters

by Haengsin 2022. 3. 7.

 

Positional Parameters
  • 위치 매개변수(Positional Parameters)
  • 입력하는 argument들은 $0, $1, $2 와 같은 변수에 저장되어 script에 전달.
  •    name of shell script : $0
  •    first argument : $1
  •    second argument : $2
  •    Numeber of argument in $#
  •    List of all parameters in $@, $*
$ cp	file1	file2	\
  $0    $1      $2  ...  ${10}
  • Special shell variables
  •    로그인 shell의 PID : $$
  •    현재 작업 디렉토리 : $PWD
  •    부모 프로세스 ID : $PPID

 

실습 1
[centos@linux-mypc bin]$ cat > parm.sh
#!/bin/bash
#: Usage        :param.sh arg1 arg2 arg3
echo "The scriptname: $0"
echo "The first argument: $1"
echo "The second argument: $2"
echo "The number of arguments:$#"
echo "The list of arguments: $@"
echo "The list of arguments: $*"

# [ctrl] + [d]

[centos@linux-mypc bin]$ sudo chmod +x parm.sh

[centos@linux-mypc bin]$ cat parm.sh -n
     1  #!/bin/bash
     2  #: Usage        :param.sh arg1 arg2 arg3
     3  echo "The scriptname: $0"
     4  echo "The first argument: $1"
     5  echo "The second argument: $2"
     6  echo "The number of arguments:$#"
     7  echo "The list of arguments: $@"
     8  echo "The list of arguments: $*"

 

실습 2

- 첫 번째 Argument 로 입력한 디렉토리의 모든 파일 목록을 /tmp/날짜.txt 파일에 저장하는 shell script 작성.

 

[centos@linux-mypc bin]$ cat lab.sh
#!/bin/bash

bash=$1

ls -l $1 1> ~/$(date +%Y-%m-%d).txt

 

 

 

Reference

- https://www.youtube.com/watch?v=Y88jOdaBs4Q&list=PLApuRlvrZKog2XlvGJQh9KY8ePCvUG7Je&index=7

'OS > Linux Server' 카테고리의 다른 글

[Shell Programming] 8. Branching  (0) 2022.03.08
[Shell Programming] 7. Input & Output  (0) 2022.03.07
[Shell Programming] 5. Bash shell Script  (0) 2022.03.02
[Shell Programming] 4. Bash shell의 Rules(2)  (0) 2022.02.21
[Linux] Disk 추가  (0) 2022.02.17