Chinaunix
标题:
赋值时出现单引号
[打印本页]
作者:
beauty2003
时间:
2008-12-11 16:47
标题:
赋值时出现单引号
FULL_FILENAME=/data/cjtest/feedata1/%Y%m/%D/TEST%H%M.Tdat
代码:
amar_conf[$i]=$(eval grep -w "FULL_FILENAME=" "${amar_list[$i]}"|awk -F= '{print $NF}'|sed 's/%M/\*/g'|sed 's/%/\$/g')
echo ${amar_conf[$i]}
if [ "$select_mode" = "first" ];then
ls "${amar_conf[$i]}"
feedata_name=$(eval ls "${amar_conf[$i]}"|sed -n '1p')
echo $feedata_name
相关运行截图:
很纳闷,为什么再把值赋给amar_conf[$i]时,前面会多了个'号
我的bash版本如下:
GNU bash, version 3.00.15(1)-release (x86_64-redhat-linux-gnu)
tu.jpg
(546.52 KB, 下载次数: 21)
下载附件
2008-12-11 16:47 上传
作者:
beauty2003
时间:
2008-12-11 17:00
我试过这段代码:
amar_conf[$i]=$(eval grep -w "FULL_FILENAME=" "${amar_list[$i]}"|awk -F= '{print $NF}'|sed 's/%M/\*/g'|sed 's/%/\$/g')
如果不用sed做处理,赋值时不会出现这种前面只有一个单引号的情况。现在只有一个单引号,到后面ls的时候,就提示找不到相关文件了。
作者:
waker
时间:
2008-12-11 17:09
file一下你的那些xxxxxxxx.ini
作者:
beauty2003
时间:
2008-12-11 17:09
问题已解决,和文件的内容有关系,我把那个文件dos2unix下,就正常了。
作者:
beauty2003
时间:
2008-12-11 17:13
格式化那个.ini文件后。
再赋值时,就有成对的单引号了
+ amar_conf[$i]='/data/cjtest/feedata1/$Y$m/$D/TEST$H*.Tdat'
+ echo '/data/cjtest/feedata1/$Y$m/$D/TEST$H*.Tdat'
不过那个文件的原先面貌也被毁了。。。。。。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2