我所用到的Linux命令
来源:互联网 发布:在线考试管理系统php 编辑:程序博客网 时间:2024/06/06 03:43
记录日常工作中用到的Linux命令:grep,awk,find,sed,tar,zip,hexdump,tcpdump
grep
使用grep命令从一大串输出或者文件中获取自己想要的行。因此使用grep需要指定数据源和匹配条件(你想要的行的特征)。
- 如何指定数据源?最简单的方式就是最后一个参数指定某个文件!当然,与大多数GNU命令一样,grep可以从标准输入中获取数据,这意味着可以将grep放到管道符 | 的后面。
- 如何指定匹配条件呢?直接指定你想要匹配的单词!同时grep也支持正则表达是,默认grep使用的是基本正则表达式,加上"-E"参数后,grep支持扩展正则表达式。
- 其他常用的参数。-r 递归的搜索目录下的文件。-n 将匹配的行号打印出来。-v 参数表示剔除掉包含匹配内容的行。
示例:
awk
复杂而强大的脚本语言。我通常用来将行中的部分内容取出。原理比较简单,可以指定awk安装某个符号将行做split(想想python中的split),split后的各个部分就可以用$1 $2 $3 $NF等表示,然后print出来。与grep命令一样,awk也可以从标准输入和文件中读取内容,也是按行操作,与管道符号的结合也是非常的自然。
- 如何指定分隔符呢?使用-F选项,如-F "-",默认情况下分隔符为空格。
- 特殊的变量NF表示当前处理行split之后,总共的段落数。NR表示当前正在处理的行的行号。
另外,awk也支持将其执行语句放到awk文件中,类似于shell脚本。
示例:
awk简单使用中通常包含两个部分,-F段指示分隔符。然后使用'{ }' 包含对每行的处理。一般情况下就是print的操作。复杂一点的,可以进行一点逻辑判断,比如示例中所示,只打印行号唯一的行中的内容。
find
简单来说,find命令用来查找某个目录下带有指定特征的文件,并对这行文件执行相应的操作。因此可以看出,主要包含三个参数:目录,特征,执行的操作。这三个参数都是有默认值的,比如目录默认是当前目录,特征默认是全部匹配,执行的操作默认是将匹配成功的文件名打印到标准输出中。日常中最常用的操作是,直接find某个目录,然后将输出重定向到grep,找到想要的文件,然后用xargs之类的将其print出来。其实想想,这个操作可以简单的使用find dir -name "*.yfsc" 这种方式来代替,估计会剩许多内存和时间。find /mnt/uuid | grep "yfsc" find /mnt/uuid -name "*.yfsc"
执行的操作有许多中表示如:
-print 表示将文件名打印出来-exec comand '{}' \ 表示对文件执行某个命令操作-delete 表示删除掉文件-fprint file 表示将匹配到的文件名输入到某个文件中保存-printf format 按format所表示的格式,输出没一个文件名
sed
tar
zip
tcpdump
阅读全文
0 0
- 我所用到的Linux命令
- 我所用到的LINUX命令&我的理解
- 我所用到的yacc与lex命令
- 我所用到的有用的网址!!!
- 我所用到的WEB2.O网站......
- ThreadLocal 我所用到的地方
- Linux格式化数据 所用的命令
- 截止到目前我所用到的第三方库
- ctags 命令及使用 2 我所用的命令
- 我的RUBY之路--所用到的网址记录
- 我在自动化所用到的sources.list
- ArrayList相关(记录我自己所用到的方法)
- 我经常找资料所用到的网站
- 我所用到的第三方开源库源码阅读分析笔记
- 一些我所用到的前端与PS基础知识总结
- 我所用的软件
- Linux文件所用到的系统调用的函数总结
- 编写linux驱动所用到的头文件
- 一个合格的程序员应该读过哪些书
- STL-map
- 分布式系统设计之基础设施(三)
- 欢迎使用CSDN-markdown编辑器
- 自定义ImageView圆角,椭圆,圆形图片
- 我所用到的Linux命令
- 杭电acm2039:给三边长判断能不能构成三角形
- 优先级高的线程并不一定先执行
- Win10切换到了Users用户怎么切换回来
- SMTP connect() failed 解决方案
- 图片上传预览
- Cause: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Data too long for column 'content' at ro
- 虚拟机安装
- Spark wordcount开发并提交到单机(伪分布式)运行