내가 이것을 가지고 있다고 가정 해 봅시다 script.sh
:
env -i SOMEVAR=SOMEVALUE eval -- "$@"
나는 그것을 실행합니다 :
./script.sh echo "\$SOMEVAR"
이제 다음을 보여줍니다:
env: ‘eval’: No such file or directory
eval
Bash가 내장되어 있기 때문에 작동하지 않는 것 같습니다 .
env
우리가 함께 일할 수 있는 방법이 있나요 eval
?
답변1
왜 그걸 원해요 eval
? 그냥 쉘을 사용하세요:
$ cat foo.sh
#!/bin/sh
env -i SOMEVAR=SOMEVALUE sh -c "$@"
그런 다음 다음과 같이 실행합니다.
$ foo.sh 'echo $SOMEVAR'
SOMEVALUE