Linux日记:cut grep sort wc&uniq

Linux日记:cut grep sort wc&uniq

时隔多日,终于有时间写linux的博客了,最近感慨良多,不过终是无法割舍对于linux的热爱,遂继续研究,不愿因杂事而耽误前进之脚步——额,我文艺了哈。

cut命令。

cut的基本用法如下:

cut-d '分隔字符'-f fields

cut-c 字符范围

参数解释:-d:后面跟分隔的字符,与-f一起使用。-f:依据-d的分隔字符将一段信息切割成为书段,用-f取出第几段的意思;-c:以字符(characters)为单位取出固定字符区间。

实例:

1,取出PATH变量的第3个路径:

echo$PATH | cut -d ':' -f 5

2,取出PATH变量的第35个路径:

echo$PATH | cut -d ':' -f 3-5

3,取出PATH变量的第3和第5个路径:

echo$PATH | cut -d ':' -f 3,5

4,将export输出结果的每行前12个字符截去:

export| cut -c 12-

grep命令

此处不涉及grep关于正则表达式的高级用法。

基本用法如下:

grep[-acinv] [--color=auto] '查找字符串'filename

-a:将binary文件以txt文件的方式查找数据

-c:计算找到'查找字符串'的次数

-i:忽略大小写的不同

-n:输出行号

-v:反向选择,即显示出没有'查找字符串'内容的那一行

--color=auto:可以将找到的关键字部分加上颜色显示,一般操作系统默认有aliasgrep='grep –color=auto'

实例:

1,查找lastreboot所在的行:

last| grep 'reboot'

2,反向选择:

last| grep -v 'reboot'

sort命令

sort[-fbMnrtuk] [file or stdin]

-f:忽略大小写的差异,这个很怪异,不是-i,查找帮助之后才发现是:foldlower case to upper case characters的意思。

-b:忽略最前面的空格符部分

-M:以月份的名字来排序

-n:使用“纯数字”进行排序

-r:反向排序

-u:就是uniq,相同的数据中,仅出现一行代表

-t:分隔副,默认为Tab

-k:以哪个区间来进行排序。

实例:

1,个人帐号的排序:

cat/etc/passwd | sort

2,以第三列排序:

cat/etc/passwd | sort -t ':' -k 3

3,以点三列的数字方式排序:

cat/etc/passwd | sort -t ':' -k 3 -n

4,将last的输出截取帐号,并排序:

last| cut -d ' ' -f 1 | sort

wc命令

用法:

wc[-lwn]

-l:仅列出行

-w:仅列出多少字(英文单词)

-n:多少字符

实例:

1,计算/etc/manpath.config有多少个字

cat/etc/manpath.config | wc

2,计算这个月登录系统的总人数:

last| grep [a-zA-Z] | grep -v 'wtmp' | wc -l

uniq命令

用于将重复的数据只显示一次。

uniq[-ic]

-i:忽略大小写的差异

-c:进行计数

实例:

1,使用last将帐号列出,仅取出帐号列,进行排序后仅输出一位。

last| cut -d ' ' -f 1 | sort | uniq

2,计算登录的次数:

last| cut -d ' ' -f 1 | sort | uniq -c


原文地址:https://www.cnblogs.com/javawebsoa/p/3095545.html