M
Sc M
Gao M
cat /etc/passwd //先查看下
cut -d ":" -f 1,3 /etc/passwd //内容很多,自己动手看吧
//一般cut命令和grep结合起来使用才会发挥好的作用
实战示例: //要有多个用户才好
cat /etc/passwd | grep /bin/bash
cat /etc/passwd | grep /bin/bash | grep -v root
cat /etc/passwd | grep /bin/bash | grep -v root | cut -d ":" -f 1
df -h
###printf命令
printf '输出类型输出格式' 输出内容
输出类型:
%ns //输出字符串。n是数字指代输出几个字符
%ni //输出整数。n是数字指代输出几个数字
%m.nf //输出浮点数。m和n是数字,指代输出的整数位数和小数位数。如%8.2f代表
共输出8位数,其中2位是小数,6位是整数。
输出格式:
\a //输出警告声音
\b //输出退格键,也就是Backspace键
\f //清除屏幕
\n //换行
\r //回车,也就四Enter键
\t //水平输出退格键,也就是Tab键
\v //垂直输出退格键,也就是Tab键
示例:
printf %s 1 2 3 4 5 6 //(靠,都在光标的左边)123456[root@localhost mytxt]#
printf %s %s %s 1 2 3 4 5 6 //%s%s123456[root@localhost mytxt]#
printf '%s %s %s' 1 2 3 4 5 6 //1 2 34 5 6[root@localhost mytxt]#
printf '%s %s %s\n' 1 2 3 4 5 6 //输出下面2行
1 2 3
4 5 6
printf '%s' $(cat student.txt) //IDNameGenderMark1LimingM862ScM903GaoM83[root@localhost mytxt]#
printf '%s' $(cat student.txt) //不调整输出格式
printf '%s\t %s\t %s\t %s\t %s\t %s\t \n' $(cat student.txt) //调整格式输出
在awk命令的输出中支持print和printf命令
print:print会在每个输出之后自动加入一个换行符(Linux默认没有print命令)
printf:printf是标准格式输出命令,并不会自动加入换行符,如果需要换行,需要手工加入换行符
###awk命令
awk '条件1{动作1} 条件2{动作2} ...' 文件名
条件(Pattern):
一般使用关系表达式作为条件
x > 10 //判断变量x是否大于10
x >= 10 //大于等于
x <= 10 //小于等于
动作(Action):
格式化输出
流程控制语句
示例:
cat student.txt
awk '{pringf $2 "\t" $6 "\n"}' student.txt //
Name
Liming
Sc
Gao
df -h | awk '{print $1 "\t" $3}'
df -h | grep sda5
df -h | grep sda5 | awk '{print $5}' | cut -d "%" -f 1
###BEGIN
awk 'BEGIN{pringf "This is a transcript \n"} {printf $2 "\t" $6 "\n"}' student.txt
cat /etc/passwd | grep "/bin/bash" | awk 'BEGIN {FS=":"} {printf $1 "\t" $3 "\n"}'
###END
awk 'END{printf "The End \n"} {printf $2 "\t" $6 "\n"}' student.txt
###关系运算符
cat student.txt | grep -v Name | awk '$6 >= 87 {printf $2 "\n"}'
###sed命令
sed是一种几乎包括在所有UNIX平台(包括Linux)的轻量级流编辑器。
sed主要是用来将数据进行选取、替换、删除、新增的命令。
sed [选项] '[动作]' 文件名
选