Chinaunix
标题:
for里面的贴换
[打印本页]
作者:
viato
时间:
2014-05-31 11:33
标题:
for里面的贴换
本帖最后由 viato 于 2014-06-03 14:35 编辑
请教,用sed替换不成功,因为文件中间有一个空格,请教要怎么修改才可以做到贴换效果
for i in `cat file_list`
do
sed -r 's#^put.*#put "'$i'"#' put.sh
done
复制代码
文件内容如下
/tmp/1.jpg ./install/a/1.jpg
/tmp/2.jpg ./install/a/2.jpg
作者:
prcardin
时间:
2014-05-31 11:48
空格加上引号,试一下呢
作者:
viato
时间:
2014-05-31 11:49
添加一个 IFS=$(echo -en "\n\b") 就可以了,大家还可以想想其他办法
作者:
Herowinter
时间:
2014-05-31 12:31
回复
3#
viato
不是文件内容,是文件名中间有空格吧?
作者:
viato
时间:
2014-05-31 12:56
回复
4#
Herowinter
是内容之间有空格,导致一行在for里面读的时候,变成了两个参数
作者:
Shell_HAT
时间:
2014-05-31 14:49
while read line; do
sed -r "s#^put.*#put $line#" put.sh
done < file_list
复制代码
作者:
viato
时间:
2014-06-03 14:37
回复
6#
Shell_HAT
while 可以
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2