쉘 프로그래밍에서 파일의 내용을 환경변수의 내용으로 바꾸는 ?

이경한의 이미지

만약 test.dat 파일안에
hello world!!
라는 문자열이 있을 때
쉘에서 HELLO라는 환경변수에 어떻게 hello world!!를 넣어줄 수 있을까요?
다시 말하면
export HELLO="hello world!!"
와 같은 효과내려면 어떻게 해야되죠?
맨날 질문만 드립니다... :?
혹시 환경변수에 들어갈수 문자열의 개수가 몇 개까지 넣을 수 있는지 정해져 있나요?

eseo의 이미지

저같은 경우 다음과 같이 사용합니다만,
export HELLO=`cat test.dat`
더 좋은 방법이 있을까요?

---
배려하는 마음을 갖자.

익명 사용자의 이미지

scenario@dbaqua:~/public_html$ export HELLO='cat test.dat'
scenario@dbaqua:~/public_html$ echo $HELLO
cat test.dat

이렇게 됩니다만..
근데 언듯보기에도 "cat test.dat"가 나올 수 밖에 없는거 같은데요..
[/code]
kslee80의 이미지

Anonymous wrote:
scenario@dbaqua:~/public_html$ export HELLO='cat test.dat'
scenario@dbaqua:~/public_html$ echo $HELLO
cat test.dat

이렇게 됩니다만..
근데 언듯보기에도 "cat test.dat"가 나올 수 밖에 없는거 같은데요..

' 가 아니라 ` 입니다.
backquote 라고 하죠. 보통 키보드에서는 1자 왼쪽에 있는겁니다.

그리고, 보통 bash 스크립트들에서는
변수에 특정 커맨드의 결과값을 넣을때는 ` ` 대신에
$() 를 씁니다..
즉,
export HELLO=$(cat test.dat)
로 말이죠;

이경한의 이미지

ㅋㅋㅋ
자세히 보니 '가 아니라 `였군요..
어머 벌써 친절하게 `라고 알려주시네여..
어쨋든 감사합니다.
아 그리고 $(cat test.dat)도 좋은 팁입니다.
감사합니다.