쉘스크립트에서 환경변수 이름을 read x y로 입력받아서 환경변수 값을 출력하고 싶은데 echo $$y 이렇게 출력하게 되면 다른 값이 나와서 어떻게 해야되나요??ㅜ
$$ 말고 $를 쓰시면 됩니다.
$ read x y asdf fdsa $ echo $x asdf $ echo $y fdsa
$$는 bash shell의 pid를 반환하므로 아래와 같이 의도와 다르게 동작했을 것입니다.
$ echo $$ 2283 $ ps PID TTY TIME CMD 2283 pts/0 00:00:00 bash 15603 pts/0 00:00:00 ps $ echo $$x 2283x
제가 질문을 섯부르게 읽었네요. 아래의 익명님 답글이 맞겠습니다.
아마도 이런 것을 바라신 듯.
$ export env1=env1_value $ export env2=env2_value $ read x y env1 env2 $ echo $x $y env1 env2 $ echo ${!x} env1_value $ echo ${!y} env2_value
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
$$ 말고 $를 쓰시면 됩니다.
$$ 말고 $를 쓰시면 됩니다.
$$는 bash shell의 pid를 반환하므로 아래와 같이 의도와 다르게 동작했을 것입니다.
제가 질문을 섯부르게 읽었네요.
제가 질문을 섯부르게 읽었네요.
아래의 익명님 답글이 맞겠습니다.
아마도 이런 것을 바라신 듯.
아마도 이런 것을 바라신 듯.
댓글 달기