时隔多日,终于有时间写linux的博客了,最近感慨良多,不过终是无法割舍对于linux的热爱,遂继续研究,不愿因杂事而耽误前进之脚步——额,我文艺了哈。
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变量的第3到5个路径:
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[-acinv] [--color=auto] '查找字符串'filename
-a:将binary文件以txt文件的方式查找数据
-c:计算找到'查找字符串'的次数
-i:忽略大小写的不同
-n:输出行号
-v:反向选择,即显示出没有'查找字符串'内容的那一行
--color=auto:可以将找到的关键字部分加上颜色显示,一般操作系统默认有aliasgrep='grep –color=auto'
实例:
1,查找last中reboot所在的行:
last| grep 'reboot'
2,反向选择:
last| grep -v 'reboot'
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[-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[-ic]
-i:忽略大小写的差异
-c:进行计数
实例:
1,使用last将帐号列出,仅取出帐号列,进行排序后仅输出一位。
last| cut -d ' ' -f 1 | sort | uniq
2,计算登录的次数:
last| cut -d ' ' -f 1 | sort | uniq -c