:
: <스크립트>
: A='ls *'
:
: for B in 'echo $A'
: do
: echo $B
: done
: </스크립트>
:
: 위에 쉘스크립트를 실행을 시키면 'ls *'의 결과만큼 for문이 도는것으로 알고 있습니다..
:
아뇨... 그렇지 않습니다. 우선..
A='ls *' 이걸 확인 해 보셨습니까? 이건...
echo $A하셔보면 아시겠지만.. ls와 그 디렉토리 내의 모든 파일을 열거한
것이 되는 군요...(님도 아래에 똑같은 결과를 얻으셨죠?)
그리고 for문에서 in 'echo $A'라고 하시면... for문이 한 번 돕니다...
매개변수가 하나('echo $A')니깐요...
아마 작은 따옴표(')가 아니라 숫자 1 왼쪽편에 있는 (`)을 쓰셔야할겁니다.
(`)이 무슨 역할을 하는지는 직접 해보시면 알겁니다.
: 근데요.. 위에걸 실행시키면
:
: ./fortest: //echo: No such file or directory
이건 의심스럽습니다. 뭔가 설명하시지 않으신 부분이 있진 않은지요...
: echo $A
:
: 이렇게 에러가 납니다.. 어떻게 해야될지... 참....
:
: <스크립트>
: A='ls *'
: echo $A
: </스크립트>
:
: 이렇게 test를 해 보니
:
: ls checkABCD checkpc filecheck fortest numcompare tempcheck user
: ./fortest: /bin: is a directory
: echo $A
: ./fortest: user/: is a directory
:
: 이런 에러가 나오더군여...
:
: 뭣때문인지 좀 도와주십시오.. 제가 쉘을 이제 막 시작을 해서요.. 부탁드립니다...^^
그리고 결론적으로 echo $B의 의미가 없는듯 싶은데...
(for문이 돌때마다.. B에 해당하는 변수값이 있습니까? 없다면
공백만 표시 되겠죠..)
아마 echo대신 다른 명령어를 쓰셨다고 생각됩니다...
아마 그래서 디렉토리에 접근했을 때 오류가 나는 것은 아닐런지...
뭔가 설명을 빼신 게 있다는 느낌이 드네요.