λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
λ”°λ°°μ…Έ

[λ”°λ°°μ…Έ] 6. Positional Parameters

by Engineer-Lee 2025. 2. 13.
λ°˜μ‘ν˜•

πŸ“Œ μ˜μƒ μš”μ•½: 포지셔널 νŒŒλΌλ―Έν„°(Position Parameter)와 μ‰˜ 슀크립트 ν™œμš©

이 μ˜μƒμ—μ„œλŠ” λ¦¬λˆ…μŠ€ μ‰˜ μŠ€ν¬λ¦½νŠΈμ—μ„œ μœ„μΉ˜ λ§€κ°œλ³€μˆ˜(Position Parameter, 포지셔널 νŒŒλΌλ―Έν„°)λ₯Ό μ‚¬μš©ν•˜λŠ” 방법을
닀룬닀.
즉, μ»€λ§¨λ“œ λΌμΈμ—μ„œ μž…λ ₯된 인자λ₯Ό μ‰˜ μŠ€ν¬λ¦½νŠΈμ—μ„œ μ–΄λ–»κ²Œ μ²˜λ¦¬ν•  것인지 λ°°μš°λŠ” λ‚΄μš©μ΄λ‹€.


πŸ”Ή 1. 포지셔널 νŒŒλΌλ―Έν„°(μœ„μΉ˜ λ§€κ°œλ³€μˆ˜)λž€?

πŸ’‘ μ‰˜ μŠ€ν¬λ¦½νŠΈμ—μ„œ μ‹€ν–‰ μ‹œ μ „λ‹¬λœ 인자λ₯Ό μ €μž₯ν•˜λŠ” νŠΉμˆ˜ν•œ λ³€μˆ˜

λ¦¬λˆ…μŠ€μ—μ„œ μ»€λ§¨λ“œ λΌμΈμ—μ„œ μž…λ ₯ν•˜λŠ” κ°’(인자, argument)을 λ³€μˆ˜λ‘œ μ €μž₯ν•˜μ—¬ μ²˜λ¦¬ν•˜λŠ” 방식을 μ„€λͺ…ν•©λ‹ˆλ‹€.

bash
볡사
λͺ…λ Ήμ–΄ 인자1 인자2 인자3 ...

μœ„μ™€ 같은 λ°©μ‹μœΌλ‘œ μž…λ ₯된 값듀은 μžλ™μœΌλ‘œ νŠΉμ • λ³€μˆ˜μ— μ €μž₯λ©λ‹ˆλ‹€.

βœ… μ£Όμš” 포지셔널 νŒŒλΌλ―Έν„°

λ³€μˆ˜μ˜λ―Έ

$0 μ‹€ν–‰λœ 슀크립트 파일 이름
$1 첫 번째 인자(argument)
$2 두 번째 인자
$3 μ„Έ 번째 인자
$9 아홉 번째 인자
${10} μ—΄ 번째 μ΄ν›„μ˜ 인자 (μ€‘κ΄„ν˜Έ μ‚¬μš© ν•„μˆ˜)
$# μ „λ‹¬λœ 인자의 개수
$@ λͺ¨λ“  인자λ₯Ό κ°œλ³„μ μœΌλ‘œ 리슀트 ν˜•νƒœλ‘œ λ°˜ν™˜
$* λͺ¨λ“  인자λ₯Ό ν•˜λ‚˜μ˜ λ¬Έμžμ—΄λ‘œ λ°˜ν™˜

πŸ”Ή 2. 예제: μ»€λ§¨λ“œ 라인 인자 μ‚¬μš©ν•˜κΈ°

πŸ’‘ κ°„λ‹¨ν•œ 슀크립트 예제
μ‚¬μš©μžκ°€ μž…λ ₯ν•œ μΈμžλ“€μ„ 좜λ ₯ν•˜λŠ” κ°„λ‹¨ν•œ μ‰˜ 슀크립트

 

πŸ“Œ μ‹€ν–‰ 방법

πŸ“Œ μ‹€ν–‰ κ²°κ³Ό

 

πŸ”Ή 3. ν™œμš© 예제: 디렉토리 크기 확인 슀크립트

μ‚¬μš©μžκ°€ μž…λ ₯ν•œ λ””λ ‰ν† λ¦¬μ˜ 크기λ₯Ό κ³„μ‚°ν•˜λŠ” 슀크립트

πŸ“Œ μ‹€ν–‰ 방법

πŸ“Œ μ‹€ν–‰ κ²°κ³Ό


πŸ”Ή 4. κ³ κΈ‰ ν™œμš©: μ‚¬μš©μž μž…λ ₯을 λ°›μ•„ 계정 μƒμ„±ν•˜κΈ°

πŸ“Œ μ‹€ν–‰ 방법

πŸ“Œ μ‹€ν–‰ κ²°κ³Ό

 

πŸ”Ή 5. shift λͺ…λ Ήμ–΄: 인자 μˆœμ„œ λ³€κ²½

shiftλ₯Ό μ‚¬μš©ν•˜λ©΄ 첫 번째 인자λ₯Ό μ—†μ• κ³  λ‚˜λ¨Έμ§€ 인자λ₯Ό μ•žμœΌλ‘œ μ΄λ™μ‹œν‚¬ 수 있음.

πŸ“Œ μ‹€ν–‰ 방법

πŸ“Œ μ‹€ν–‰ κ²°κ³Ό


πŸ“Œ πŸ’‘ 정리

  • 포지셔널 νŒŒλΌλ―Έν„° ($1, $2, $#, $@) 등을 ν™œμš©ν•˜λ©΄ μ‰˜ μŠ€ν¬λ¦½νŠΈκ°€ 더 λ™μ μœΌλ‘œ λ™μž‘ν•  수 있음.
  • 디렉토리 크기 확인, μ‚¬μš©μž 계정 생성, λ°±μ—… 슀크립트 λ“± λ‹€μ–‘ν•œ 관리 μž‘μ—… μžλ™ν™” κ°€λŠ₯.
  • shiftλ₯Ό ν™œμš©ν•˜λ©΄ μž…λ ₯된 μΈμžλ“€μ„ 순차적으둜 μ²˜λ¦¬ν•˜λŠ” μœ μ—°ν•œ 슀크립트 μž‘μ„± κ°€λŠ₯.

πŸš€ 포지셔널 νŒŒλΌλ―Έν„°λ₯Ό μ΄ν•΄ν•˜λ©΄ μ‹€λ¬΄μ—μ„œ κ°•λ ₯ν•œ μžλ™ν™” 슀크립트λ₯Ό λ§Œλ“€ 수 있음

λ°˜μ‘ν˜•