2012-12-01 87 views
1

我想從bash腳本產生udev規則文件。爲此,我使用cat命令。不幸的是生成的文件缺少「$」字符。下面是例子test.sh腳本:

#!/bin/sh 


rc=`cat <<stmt1 > ./test.txt 

-p $tempnode 
archive/$env{ID_FS_LABEL_ENC} 

stmt1` 

結果是以下幾點:

cat test.txt 

-p '' 
archive/{ID_FS_LABEL_ENC} 

在哪裏的問題是什麼?

+0

嘗試'存檔/ \ $ ENV {ID_FS_LABEL_ENC}'(介意反斜線) –

回答

5

如果你不希望任何變量插值,運用:

#!/bin/sh 

group="test_1" 

cat <<'stmt1' > ./test.txt 

-p $tempnode 
archive/$env{ID_FS_LABEL_ENC} 

stmt1 
rc=$? 

(注意''周圍stmt1

+0

哦,太好了。非常感謝您的快速重播和不錯的解決方案! – PiotrO