bash -c 'some command'과잉 사용시 실제 이점이 있습니까?bash <<< 'some command'
그들은 같은 효과를 얻는 것처럼 보입니다.
답변
bash -c 'some command'발신자의 표준 입력에 대한 액세스 권한을 유지하므로 read표준 입력에서 읽는 명령이 정상적으로 작동합니다. bash <<< 'some command'라인에 입력 전달, 그렇게되고 있음을 대체 bash -c cat하고 bash <<< cat다른 일을.
$ bash -c cat
abc
abc
^D
$ bash <<< cat
$
반면에 $'...'매우 신중한 경우 해당 기능을 사용하여 사용할 표준 입력을 제공 할 수 있습니다 .
$ bash <<< $'read x y\nabc def ghi\necho $y'
def ghi
$
나는 그것에 의존하고 싶지 않지만 때로는 편리 할 수 있습니다.
bash -c또한 인수를 스크립트에 전달하고 $0설정할 수 있습니다.
bash -c 'some command' sh abc def
설정됩니다 $1에 abc와 $2로 def내부 some command.