当前位置:IT教程网教程中心程序开发Shell → 教程内容

awk中如何用print输出单引号

减小字体 增大字体 作者:佚名  来源:不详  发布时间:2006-12-27 13:52:00

用\转义好像不行耶!
如:
echo "something" | awk '{print "\'"}'
时提示输入下一行,但下一行输入"
报错:
awk: cmd. line:1: {print "\}'
awk: cmd. line:1:        ^ unterminated string
谁来帮小弟一把!

 taige 回复于:2002-07-30 09:07:06
突然想到一个办法:
echo "aa"|awk '{print "\047"}'
似乎可读性有些差!

 eagle 回复于:2002-07-30 09:25:02
 echo "'"|awk '{print $0}'

 valentine 回复于:2002-07-30 18:06:09
cat /dev/null|awk "BEGIN{print \"'\"}"

 menghan 回复于:2002-10-20 11:26:35
斑竹终究是斑竹,善解人意

 yezhujing 回复于:2002-10-20 17:56:30
[这个贴子最后由yezhujing在 2002/10/21 11:39am 编辑]

忘了是在坛子里篇文章上看到过的,说是这样也可以
cat filename | awk "{printf \"Var1='%s',Var2='%s'\n\",$1,$2}"
记不太清,不知对不对?
今天试了下,果然不对,应该这样
cat filename | awk "{printf \"Var1='%s',Var2='%s'\n\",\$1,\$2}"

 microroad 回复于:2002-10-20 21:09:30
[这个贴子最后由microroad在 2002/10/20 09:09pm 编辑]

引用内容 引用内容
下面引用由valentine在 2002/07/30 06:06pm 发表的内容:
cat /dev/null|awk "BEGIN{print \"'\"}"


cat /dev/null 是做何用? 
 cat /dev/null|awk "BEGIN{print \"'\"}" 在csh下通不过!

 valentine 回复于:2002-10-21 13:53:26
有老版本的awk没有输入会等待.
新版本的awk直接用BEGIN就可以了.
可以在自己的系统上测一下。

广告位置