[code]linux:~ # cat file.txt guangzhou hangzhou suzhou liuzhou yongzhou chenzhou linux:~ # awk 'gsub("zhou","china"){print $0}' file.txt guangchina hangchina suchina liuchina yongchina chenchina linux:~ # awk '{print gsub("zhou","china")}' file.txt 3 2 1[/code]这个第二条怎么解释呢?
by xiaoshichao143 - Shell - 2012-07-25 15:23:13 阅读(3461) 回复(11)
本文全文来自 http://blog.sina.com.cn/s/blog_54c5f9c50100fo7z.html 未作修改 awk提供了许多强大的字符串函数,见下表: awk内置字符串函数 gsub(r,s) 在整个$0中用s替代r gsub(r,s,t) 在整个t中用s替代r index(s,t) 返回s中字符串t的第一位置 length(s) 返回s长度 match(s,r) 测试s是否包含匹配r的字符串 split(s,a,fs) 在fs上将s分成序列a sprint(fmt,exp) 返回经fmt格式化后的exp sub(r,s) 用$0中最左边最长的子串代...
awk提供了许多强大的字符串函数,见下表: awk内置字符串函数 gsub(r,s) 在整个$0中用s替代r gsub(r,s,t) 在整个t中用s替代r index(s,t) 返回s中字符串t的第一位置 length(s) 返回s长度 match(s,r) 测试s是否包含匹配r的字符串 split(s,a,fs) 在fs上将s分成序列a sprint(fmt,exp) 返回经fmt格式化后的exp sub(r,s) 用$0中最左边最长的子串代替s substr(s,p) 返回字符串s中从p开始的后缀部分 substr(s,p,n) 返回字符串s中从p开始...
大家好,我现在有这样一个以逗号“,”为分隔符的文件文件: a,2,a11,a12,a21,a22 b,4,b11,b12,b21,b22,b31,b32,b41,b42 c,1,c11,c12 d,3,d11,d12,d21,d22,d31,d32 之后想要通过awk实现之下的输出: a,2,a11,a12 a,2,a21,a22 b,4,b11,b12 b,4,b21,b22 b,4,b31,b32 b,4,b41,b42 c,1,c11,c12 d,3,d11,d12 d,3,d21,d22 d,3,d31,d32 不知道有没有描述清楚(有点类似于一个参数多个值,把该参数的各个值分行来描述),望多多指教,谢谢...
求助,awk处理文件: 文件a: sun 21 m liu 19 n li 23 o ma 22 h 文件b: he 20 g sun 21 m liu 19 n du 33 n li 23 o ma 22 h chen 17 k 大家可以看到其实a文件 是包含在b文件中的,现在想要得到这样的结果: 就是b文件中不存在于a文件中的行(b中有而a没有)。 例如这样的结果: he 20 ...
原数据 a1 hdsk1 a1 hdk2 b1 hdk3 a1 hdisk5 a1 hdk6 b1 hdk7 c1 hk8 想要输出结果 a1 hdsk1,hdk2,hdisk5,hdk6 b1 hdk3,hdk7 c1 hk8 请高手指教?
for db in `find ./ -type f|awk -F ./ '$2 != type { type = $2 ;print $2;}'|awk -F . '$2 != db { db = $2 ;print $2;}'|sort|uniq` '$2 != type { type = $2 ;print $2;}' 这个是什么意思呢?
echo "similer" | awk '/er\{1,2\}/' 这个为什么没有打印结果? echo "similer" | grep 'er\{1,2\}' 可以打印出结果 awk中的{}应该怎么写?
echo ${f}|awk '{l=split("F130086T2F|U131086T2F|P132086T2F",status,"|");for (i=1;i<=l;i++) { s=" "status;print "eval F=("s ")" }}' 运行结果 eval F=( F130086T2F) eval F=( U131086T2F) eval F=( P132086T2F) 但是我想取 F=(F130086T2F U131086T2F P132086T2F)后面函数想用${f}|