免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: vip_xin
打印 上一主题 下一主题

请教:能够把变量代入文本文件里显示吗? [复制链接]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
11 [报告]
发表于 2006-06-07 14:16 |只看该作者
sed 's/\${[^}]*}/\n&\n/g'|sed '/\${[^}]*}/! d'

论坛徽章:
0
12 [报告]
发表于 2006-06-14 14:01 |只看该作者
原帖由 waker 于 2006-6-7 14:16 发表
sed 's/\${[^}]*}/\n&\n/g'|sed '/\${[^}]*}/! d'


是这样吗???
eval $( sed 's/\${[^}]*}/\n&\n/g'|sed '/\${[^}]*}/! d' file|sort -u|(echo 'sed "'; sed 's/.*/s#\\&#&#g;/'; echo '" file'))
可我在linux和aix上试了都不行,请赐教.谢谢!!

论坛徽章:
0
13 [报告]
发表于 2006-06-16 16:37 |只看该作者
???没有人可以回复一下吗????

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
14 [报告]
发表于 2006-06-16 18:04 |只看该作者
eval "echo $line"改为:
eval echo "$line"
楼主的十三问算是白看了。^_^
提示再仔细看看“IFS”和“引号”的地方
上面开玩笑的,当然不会白看了,多少会有提高的。

论坛徽章:
0
15 [报告]
发表于 2006-06-19 10:25 |只看该作者
原帖由 woodie 于 2006-6-16 18:04 发表
eval "echo $line"改为:
eval echo "$line"
楼主的十三问算是白看了。^_^
提示再仔细看看“IFS”和“引号”的地方
上面开玩笑的,当然不会白看了,多少会有提高的。



你所指的是“
cat file.txt|while read line
do
eval "echo $line"
done
”吧,这个一位朋友给我回复的,不是我写的!
eval echo "$line"是无法解决我后来提的保持格式不变的要求的!?
之后你给我提供的grep -o在redhat上可以,但AIX上不认,后来用sed替换grep -o 我也试了,总提示不对,请教如何解决??

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
16 [报告]
发表于 2006-06-19 10:50 |只看该作者
原帖由 vip_xin 于 2006-6-14 14:01 发表


是这样吗???
eval $( sed 's/\${[^}]*}/\n&\n/g'|sed '/\${[^}]*}/! d' file|sort -u|(echo 'sed "'; sed 's/.*/s#\\&#&#g;/'; echo '" file'))
可我在linux和aix上试了都不行,请 ...



  1. eval $( sed 's/\${[^}]*}/\n&\n/g' file |sed '/\${[^}]*}/! d' |sort -u|(echo 'sed "'; sed 's/.*/s#\\&#&#g;/'; echo '" file'))
复制代码

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
17 [报告]
发表于 2006-06-19 10:51 |只看该作者
有空读读新手导航吧?谢谢

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
18 [报告]
发表于 2006-06-19 14:10 |只看该作者
原帖由 vip_xin 于 2006-6-19 10:25 发表
...
你所指的是“
cat file.txt|while read line
do
eval "echo $line"
done
”吧,这个一位朋友给我回复的,不是我写的!
eval echo "$line"是无法解决我后来提的保持格式不变的要 ...

呵呵,不好意思,以前没测试。嗯,的确有点问题,还是少引用了一层。应该写成这样:
  1. while read line
  2. do
  3.   eval "echo \"$line\""
  4. done < file.txt
复制代码

[ 本帖最后由 woodie 于 2006-6-19 14:25 编辑 ]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
19 [报告]
发表于 2006-06-19 16:56 |只看该作者
外面一层""是没有必要的吧?

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
20 [报告]
发表于 2006-06-19 17:06 |只看该作者
原帖由 waker 于 2006-6-19 16:56 发表
外面一层""是没有必要的吧?

你说得对,可以写成:
  1. while read line; do
  2.   eval  echo \"$line\"
  3. done < file
复制代码

谢谢waker!

[ 本帖最后由 woodie 于 2006-6-19 17:27 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP