:
foo() { echo [email protected]; }
이 기능은 위의 전달 된 인수를 인쇄합니다 :
$ foo -a bar
-a bar
이가
$ foo -l 'bar' -m "asd asd"
-l bar -m asd asd
내가 예상 : 나는 따옴표를 통과 할 때 좋은,하지만 난 하나 개의 인수에 보관 할
-l bar -m "asd asd"
내가 어떻게 할 수 있습니까? 또한 내 기대에 작업의 $*
변수를 전달하기 위해 그들 중 누구도 시도하지 "[email protected]"
:
[email protected]
을 넣어했습니다.
'echo' 명령은 사용자가 생각하는 것을 알려주지 않습니다. '-l 'bar'-m "asd asd"'는'foo' 함수가하는 것처럼'-l bar -m asd asd'를 출력합니다. 그래서'echo' * 따옴표를 출력해서는 안됩니다! (.는 따옴표를 인쇄 않은 경우에, 그 사실 뭔가 심각하게 잘못되었다는 표시 할 것)() 함수'printargs를 정의하는 시도 {에코 "$ # 인수를 얻었다 :"; if [$ # -gt 0]; printf " '% s'\ n" "$ @"; fi; }'를 사용하고,'echo' 대신에 그것을 사용하십시오. –