扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
背景:可能我们会遇到获取Linux命令执行结果的某一列或某一行的信息。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的邯山网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
awk -F '\t' '{print $1}' name.txt
其中-F表示分割符,本例为\t,$1表示第1列 ,$0表示全部。
ls -lrt | awk -F ' ' '{print $NF}'
好处:这种情况下不需要知道所获取信息在哪一列,直接取最后一列即可。
其中-F表示分割符,本例为空格,$NF表示最后一列,$(NF-1)表示倒数第二列。
awk 'NR awk 'NR==1,NR==4 {print}' file
行号等于1和4的打印出来
awk 'END {print}' name.txt
部分参考
sort命令用于对文档内容进行排序处理,命令使用格式如下:
sort 选项 文件1 文件2 ......
sort命令的常用选项包括:
-t 指定分割文本的分隔符
-k 指定按照分割后文本内容的第几列排序
-r 结果降序排序
-n 把文本转换为数值再排序
使用sort命令的示例如下:
①sort -rn -k 2 f1:按照文档第二列的数值大小进行降序排序。-n表示按照数值大小比较排序,默认为升序,加上-r表示为降序,-k指定按照第几列排序。
②sort -rn -u -k 2 f1:-u表示去除重复行。
③sort -t ":" -rn -k 2 f1:-t指定列之间的分隔符为“:”,不写则默认空格作为分隔符。
cut命令用于显示按照分隔符截取分指定列的文本内容,命令使用格式如下:
cut 选项 文件1 文件2 ......
cut命令的常用选项包括:
-d 指定文本分隔符
-f 指定显示分割后文本的第几列
cut -d " " -f 3 f1:截取文档中的第三列。-d指定分隔符为一个空格,-f指定显示第几列。但是,cut命令对分隔符连续较多的情况,审核较为死板,很难按照我们想要的效果实现截取,如有以下文件:
aaa 111 ccc
bbb 222 ccc
每行文字中各列间的空格数不同,“aaa”与“111”之间有一个空格,而“bbb”与“222”之间有两个空格,在使用cut命令时,如果设定分隔符为一个空格,希望截取用空格隔开的文字时,对于行“bbb 222”由于文字中存在二个空格,其中的第二个空格则被视为第二列,所以cut命令不会把“222”视为第二列而是第三列。因此,cut在截取数量不确定的空格隔开的文字时十分不便。所以一般在连续分隔符个数不统一时,更习惯使用awk命令。
linux系统下用ls命令列出当前目录下的文件。
ls 命令将每个由 Directory 参数指定的目录或者每个由 File 参数指定的名称写到标准输出,以及您所要求的和标志一起的其它信息。如果不指定 File 或 Directory 参数, ls 命令显示当前目录的内容。
ls运行时可指定下列参数,
-a 列出目录下的所有文件,包括以 . 开头的隐含文件。
-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。
-c 输出文件的 i 节点的修改时间,并以此排序。
-d 将目录象文件一样显示,而不是显示其下的文件。
-e 输出时间的全部信息,而不是输出简略信息。
-f -U 对输出的文件不排序。
-g 无用。
-i 输出文件的 i 节点的索引信息。
-k 以 k 字节的形式表示文件的大小。
-l 列出文件的详细信息。
-m 横向输出文件名,并以“,”作分格符。
-n 用数字的 UID,GID 代替名称。
-o 显示文件的除组信息外的详细信息。
-p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通
文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套
接字(sockets)。
-q 用?代替不可输出的字符。
-r 对目录反向排序。
-s 在每个文件名后输出该文件的大小。
-t 以时间排序。
-u 以文件上次被访问的时间排序。
-x 按列输出,横向排序。
-A 显示除 “.”和“..”外的所有文件。
-B 不输出以 “~”结尾的备份文件。
-C 按列输出,纵向排序。
-G 输出文件的组的信息。
-L 列出链接文件名而不是链接到的文件。
-N 不限制文件长度。
-Q 把输出的文件名用双引号括起来。
-R 列出所有子目录下的文件。
-S 以文件大小排序。
-X 以文件的扩展名(最后一个 . 后的字符)排序。
-1 一行只输出一个文件。
缺省情况下,ls 命令按照文件名的字母顺序显示所有信息。整理顺序由环境变量 LANG 或 LC_COLLATE 环境变量确定。在 AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 "National Language Support Overview for Programming" 包含更多细节。当 ls 命令显示目录内容时,它不显示名称以 .(点)开头的文件项,除非使用了 -a 或者 -A 标志。如果命令由 root 用户执行,它缺省使用 -A 标志。格式化输出有三种主要方式:* 每行列出一项。* 通过指定 -C 或 -x 标志以多列列出各项。当向 tty 输出时,-C 标志是缺省格式。如果文件或目录名太长,ls 命令显示单列输出。* 通过指定 -m 标志可以以逗号分隔系列列出项。要确定输出行中字符位置的数目,ls 命令使用环境变量 COLUMNS。如果没有设置此变量,命令获取显示的当前列值。如果使用这些方法,ls 命令还不能确定字符位置的数量,它就使用缺省值 80。使用 -e 和 -l 标志所显示的方式解释如下:如果第一个字符是:d 此项为目录。b 此项为块特殊文件。c 此项为字符特殊文件。l 此项为符号链接,或者指定 -N 标志,或者符号链接不指向现有文件。p 此项为一个先进先出(FIFO)特殊文件。s 此项为本地套接字。- 此项为普通文件。接下来的 9 个字符被分成 3 个集合,每个集合 3 个字符。第一组 3 字符集合显示所有者许可权。下一组 3 字符集合显示了组中其它用户的许可权。最后 3 字符集合显示了访问此文件的其它任何人的许可权。每个集合中的三个字符各自表示了文件的读、写和执行权限。目录的执行权限让您可以搜索目录中的指定文件。
使用sed命令;
具体查看使用规则:
#sed --help;
显示文件X行命令:
#sed -n 'xp' filename
显示文件X行到Y行的内容:
#sed -n 'x,yp' filename
相关显示命令还有tail,cat.awk,head等,可以常看LInux命令大全,或者man命令|help命令查看相关用法。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流