金鳞
目标->软件测试架构师
IT博客
管理
公告
该博客已经停止更新了 {QQ群:44758540 (Enjoy Test 1)} {QQ群:82480755 (Enjoy Test 2)} {QQ群:82480523 (渗透测试-非专业群)}
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔分类
*nix(10)
AWK(1)
c(1)
Mysql(1)
Oracle(1)
perl(1)
心情(22)
测试随聊(5)
文章分类
C(10)
information(1)
java(4)
Linux(7)
Loadrunner(3)
mysql(4)
net security(10)
Oracle(5)
perl(6)
perl-File::Find(1)
perl-Getopt::Long(1)
perl-LWP
perl-yaml(1)
QTP(4)
Selenium (1)
SQL Server(1)
产品改进(1)
养生(1)
好玩的(4)
正则表达式(1)
算法(1)
跟吃有关的美文(1)
过程改进
最新随笔
1. 找出低效SQL
2. 现在的领导都是屁股决定脑袋
3. 往数据库里导文件
4. 在中国联通办理宽带业务,看你晕不晕
5. linux文件系统分区
6. weblily和F谈安全总监都干点啥--名字都加密了,防社工的,^_^
7. 安装centos提示未找到任何驱动器--感谢景泰蓝同学
8. VM中设置linux上网--感谢醉生梦死 小梦小朋友
9. 感谢joe的分享,看到有位大牛做个针对进程统计IO情况的小工具
10. AWK(更新)
积分与排名
积分 - 54656
排名 - 115
最新评论
1. re: AWK(更新)
评论内容较长,点击标题查看
--egi
2. re: 用perl分析apache日志
cat /usr/local/apache/logs/access.log |grep -v "aaServlet\|bbServlet"|wc -l
这个更快
--d
3. re: Perl自动化测试脚本笔记--testage第三十四次(北京)软件测试交流会
评论内容较长,点击标题查看
--金鳞
4. re: Perl自动化测试脚本笔记--testage第三十四次(北京)软件测试交流会
希望学习perl软件测试
--彭晶
5. re: 转载 竹笋炒肉 的正则表达
其实竹笋炒鸡蛋也好吃,(*^__^*) 嘻嘻……
--金鳞
AWK(更新)
Question1
shell_老汤(13129252) 09:22:25
请教awk: 取出第1到第4行的第6个字段,且行长度大于10的 awk语句怎么写?
shell_一阵风(305063721) 09:39:02
awk 'NR==1,NR==4{if(length($0)>10)print $6}' file 试试
posted on 2009-12-02 09:43
金鳞
阅读(593)
评论(3)
编辑
收藏
引用
所属分类:
AWK
评论
#
re: AWK(更新) 2009-12-23 15:41
chenxin9821
SHELL版的题:
[root@tch254 ~]# cat aa.txt
aaa/bbb/ccc
ddd/eee/fff
ggg/hhh/iii
aaa/bbb/ccc/aaa/bbb/ccc/ddd/eee
[root@tch254 ~]# 变成这样输出:
ccc aaa/bbb
fff ddd/eee
iii ggg/hhh
eee aaa/bbb/ccc/aaa/bbb/ccc/ddd
[root@tch254 ~]#
************************
shell
[root@tch254 ~]# while read var;do echo "${var##*/} ${var%/*}";done < aa.txt
ccc aaa/bbb
fff ddd/eee
iii ggg/hhh
eee aaa/bbb/ccc/aaa/bbb/ccc/ddd
[root@tch254 ~]#
************************************
sed
[root@tch254 ~]# sed -nr 's/(.*)(\/)(.*)/\3 \1/p' aa.txt
ccc aaa/bbb
fff ddd/eee
iii ggg/hhh
eee aaa/bbb/ccc/aaa/bbb/ccc/ddd
[root@tch254 ~]#
***********************************
$是变量
#是左边的字串 %是右边的字串
%%右贪婪匹配
##左贪婪匹配
*_galf 15:38:05
${var%%/*} 从右匹配/* 贪婪情况下 /a/b/c/d 全部匹配
*_galf 15:38:23
${var%/*} 非贪婪 /a/b/c/d 只匹配 /d
*_galf 15:38:35
#为从左侧开始
*_galf 15:38:40
能明白么?
pl-hellodolly 15:39:29
為了完整起見,我這裡再用一些例子加以說明 ${ } 的一些特異功能:
假設我們定義了一個變量為:
file=/dir1/dir2/dir3/my.file.txt
我們可以用 ${ } 分別替換獲得不同的值:
${file#*/}:拿掉第一條 / 及其左邊的字串:dir1/dir2/dir3/my.file.txt
${file##*/}:拿掉最後一條 / 及其左邊的字串:my.file.txt
${file#*.}:拿掉第一個 . 及其左邊的字串:file.txt
${file##*.}:拿掉最後一個 . 及其左邊的字串:txt
${file%/*}:拿掉最後條 / 及其右邊的字串:/dir1/dir2/dir3
${file%%/*}:拿掉第一條 / 及其右邊的字串:(空值)
${file%.*}:拿掉最後一個 . 及其右邊的字串:/dir1/dir2/dir3/my.file
${file%%.*}:拿掉第一個 . 及其右邊的字串:/dir1/dir2/dir3/my
記憶的方法為:
# 是去掉左邊(在鑑盤上 # 在 $ 之左邊)
% 是去掉右邊(在鑑盤上 % 在 $ 之右邊)
單一符號是最小匹配﹔兩個符號是最大匹配。
${file:0:5}:提取最左邊的 5 個字節:/dir1
${file:5:5}:提取第 5 個字節右邊的連續 5 個字節:/dir2
回复
更多评论
#
re: AWK(更新) 2009-12-23 15:43
chenxin9821
[root@tch254 ~]# awk -F/ 'BEGIN{OFS="/"}{v=$NF;$NF="";print v" "$0}' aa.txt
ccc aaa/bbb/
fff ddd/eee/
iii ggg/hhh/
eee aaa/bbb/ccc/aaa/bbb/ccc/ddd/
[root@tch254 ~]#
@chenxin9821
回复
更多评论
#
re: AWK(更新)
2013-01-31 22:34
egi
@chenxin9821
# awk -F/ 'BEGIN{OFS="/"}{v=$NF;NF-=1;print v" "$0}' a
ccc aaa/bbb
fff ddd/eee
iii ggg/hhh
eee aaa/bbb/ccc/aaa/bbb/ccc/ddd
回复
更多评论
刷新评论列表
只有注册用户
登录
后才能发表评论。
Powered by:
IT博客
Copyright © 金鳞