文章目录
1 文本操作命令
1.1 cat ***
直接查看一个文件的内容可以使用cat,tac,nl这几个指令
cat(concatenate):
cat是concatenate的缩写,其功能时间一个文件的内容连续的输出。该命令适合看行数较少的文件。另外,需要查看一般DOS文件时,可以通过-A选项来显示换行符和[tab]。
tac(反向输出):
与上面的cat命令进行比较,是由最后一行先显示。
tac功能与cat类似,但是是由文件最后一行反向连续输出到屏幕上。
nl(添加行号打印):
nl可以将输出的文件内容自动的加上行号。
有内容的行才会标行号
1.2 head **
head(取出前面几行,包括空行Centos6.5使用/etc/man.config文件):
1.3 tail ***
命令格式:tail [ -n number] 文件
选项与参数:
-n:后面接数字,代表显示几行的意思
-f:表示持续侦测后面文件内容的改变,知道按下Ctrl+c才会结束tail的侦测。
默认情况下显示最后10行:
[root@node1 ~]# tail profile
如果先要显示最后20行,就要如下:
[root@node1 ~]# tail -n 20 profile
[root@node1 ~]# tail -f profile
1.4 管道| ***
[root@bk1 ~]# ps -aux |grep ssh
[root@bk1 ~]# yum list |grep mysql
如何显示文件中间的几行?
[root@node1 ~]# head -n 20 profile |tail -n 10
可以省略为:
[root@node1 ~]# head -20 profile |tail -10
管道左侧的输出作为右侧的输入
echo “/” | ls -l 显示内容错误(不是预期的结果),因为ls不需要输入,只需要参数
1.5 xargs **
将前面输出作为后面命令的参数
echo “/” | xargs ls -l
• xargs:命令
– 1,在标准输入中读取到的内容!
– 2,自己的参数理解为一个字符串
• 模仿shell,做blank切分,第一个子字符串为命令
– 3,将步骤1的内容做为步骤2的命令的选项参数拼接起来
– 4,执行得到的结果
1.6 数据重定向 ***
标准输入(stdin):编号为0
标准输出(stdout):编号为1
标准错误输出(stderr):编号为2
1>:以覆盖的方法,将正确的数据输出到文件;
1>>:以累加的方法,将正确的数据输出到文件;
2>:以覆盖的方法,将错误输出的数据输出到文件;
2>>:以累加的方法,将错误输出的数据输出到文件;
ls -l >> ok1.log
ls -l > ok2.log
ls hello 2>/root/err.log
ls hello / 1>/root/log.log 2>/root/err.log
ls 1>/dev/null
ls 2>/tmp/err.log
既向控制台输出,也向文件写入
ls -l / | tee ok2.log
tee命令,将输入分成两个输出
1.7 cut
cut:显示切割的行数据
-
s:不显示没有分隔符的行
-
d:指定分隔符对源文件的行进行分割
-
-f 选定显示哪些列
m-n m列到n列
-n 第一列到n列
m- 第m列到最后一列
n 第n列
x,y,z获取第x,y,z列
以:作为分隔符,切割passwd,输出从第3个字段到第5个字段
cut -d “:” -f 3-5 /etc/passwd