리눅스 bash -s

1 개념[ | ]

bash -s
  • bash에서 "-s" 옵션이 있거나 인자가 없을 경우 표준 입력으로부터 명령을 받는다.
  • 위치 매개변수 설정이 가능하다.

2 예시[ | ]

  • 위치 매개변수 설정
$ bash -s My name is John.
$ echo "$1"
My
$ echo "$2"
name
$ echo "$3"
is
$ echo "$4"
John.
$ echo "$@"
My name is John.
  • bash가 앞의 echo의 출력값을 전달 받아 위치 매개변수 처리
$ echo 'ls $*' | bash -s /
bin   cdrom  etc   initrd.img	   lib	  lost+found  mnt	    opt   root	sbin  srv  tmp	var	 vmlinuz.old
boot  dev    home  initrd.img.old  lib64  media       node_modules  proc  run	snap  sys  usr	vmlinuz
→ bash에서 옵션 "-s"가 있으므로 표준 입력을 받게됨. 예제의 $* 가 bash -s다음의 "/"를 $1 으로 처리하여 "ls /"로 최종 처리되며 그 결과값을 출력해줌

3 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}