实例1-1 磁盘空间不足系列:
原因 排查过程 解决
1.block df -h; du -sh /data/* 具体的文件或目录 确认之后删除
2.block lsof|grep delete 重启对应的服务
3.inode df -i; 找出系统中大于1M的目录 删除大量小文件
第2章 特殊符号2.1 引号系列
2.1.1 “” 双引号
引号内的特殊符号会被解析
2.1.2 ‘’ 单引号
所见即所得,输入什么就输出什么
2.1.3 `` 反引号
$()==``
2.1.4 无引号
可以使用{}
2.2 重定向系列
>标准输出重定向先把文件清空追加
>>标准输出追加重定向
2> 标准错误输出重定向
2>>
<标准输入重定向 xargs tr
<<标准输入追加重定向与cat配合追加多行内容
2>&1将错误和正确内容都记录到文件中
2.3 位置系列
~ 当前用户家目录
.. 上一级目录
. 当前目录
- 参数 cd – su –
2.4 判断关系
&& 前面命令执行成功之后在执行后一个命令
|| 前一个命令执行失败之后执行后一个命令
[root@oldboyedu50-lnb ~]# ls /oldboy && echo 目录已存在
ext nginx.conf oldboy.SH oldboy.txt-hard oldboy.txt-soft2 test.sh t.sh.bak xiaodong xingfujie
jeacen oldboy oldboy.txt oldboy.txt-soft test t.sh wodi.gz xiaofan yingsui.gz
目录已存在
[root@oldboyedu50-lnb ~]# ls /ooooo && echo 目录已存在
ls: cannot access /ooooo: No such file or directory
[root@oldboyedu50-lnb ~]# ls /ooooo || echo 目录不存在
ls: cannot access /ooooo: No such file or directory
目录不存在
2.5 无分类系列
# 注释说明 显示环静变量的配置文件 root用户的命令提示符
$ 普通用户命令提示符 awk取列
! !ls运行上一个以ls开头的命令并执行 !!运行上一个命令
| 管道符号
; 在同一行分割命令
2.6 通配符号
2.6.1 * 所有文件
1.以.conf结尾的文件
find / -type f -name "*.conf"
2.找出系统中文件名包含ifconfig (文件名中有ifconfig就行)
方法一:
[root@oldboyedu50-lnb ~]# find / -type f -name "ifconfig"
/sbin/ifconfig
[root@oldboyedu50-lnb ~]#
[root@oldboyedu50-lnb ~]# find / -type f -name "*ifconfig*"
/usr/sbin/pifconfig
/usr/share/man/de/man8/ifconfig.8.gz
/usr/share/man/pt/man8/ifconfig.8.gz
/usr/share/man/man8/pifconfig.8.gz
/usr/share/man/man8/ifconfig.8.gz
/usr/share/man/fr/man8/ifconfig.8.gz
/sbin/ifconfig
方法二:
[root@oldboyedu50-lnb ~]# find / -type f |grep ifconfig
/usr/sbin/pifconfig
/usr/share/man/de/man8/ifconfig.8.gz
/usr/share/man/pt/man8/ifconfig.8.gz
/usr/share/man/man8/pifconfig.8.gz
/usr/share/man/man8/ifconfig.8.gz
/usr/share/man/fr/man8/ifconfig.8.gz
/sbin/ifconfig
2.6.2 {} 生成序列 备份
{} 生成序列
[root@oldboyedu50-lnb ~]# echo stu{01..5}
stu01 stu02 stu03 stu04 stu05
[root@oldboyedu50-lnb ~]#
[root@oldboyedu50-lnb ~]#
[root@oldboyedu50-lnb ~]# echo {1,5,100}
[root@oldboyedu50-lnb ~]# echo stu{01..10}
stu01 stu02 stu03 stu04 stu05 stu06 stu07 stu08 stu09 stu10
[root@oldboyedu50-lnb ~]# echo stu{01..10..2}
stu01 stu03 stu05 stu07 stu09
通过 {} 进行备份
[root@oldboyedu50-lnb ~]# cp oldboy.txt{,.bak}
[root@oldboyedu50-lnb ~]# echo oldboy.txt{,.bak}
oldboy.txt oldboy.txt.bak
第3章 基础正则表达式3.1 符号比较
中文 ‘’ “” () 。 * …… ¥ | {} 【】
英文 '' "" () . * ^ $ | {} []
为grep配置别名
alias grep='grep --color'
alias egrep='egrep --color'
3.2 第1个符号 ^ 以....开头的行
模拟文件
[root@oldboyedu50-lnb /oldboy]# cat oldboy.txt
I am oldboy teacher!
I teach linux.
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
第1个符号 ^
以....开头的行 ^m
[root@oldboyedu50-lnb /oldboy]# grep '^m' oldboy.txt
my blog is http://oldboy.blog.51cto.com
my qq is 49000448
my god ,i am not oldbey,but OLDBOY!
cat -A 显示文件中所有符号 每行结尾都会有个$
3.3 第2个符号 $ 显示文件结尾的行
[root@oldboyedu50-lnb /oldboy]# grep ' $' oldboy.txt
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
3.4 第3个符号^$ 显示空行
[root@oldboyedu50-lnb /oldboy]# grep '^$' oldboy.txt
3.5 第4个符号 . 任意一个字符
[root@oldboyedu50-lnb /oldboy]# #grep '.' oldboy.txt
[root@oldboyedu50-lnb /oldboy]# grep -o '.' oldboy.txt
3.6 第5个符号 \ 转义字符
[root@oldboyedu50-lnb /oldboy]# grep '\.$' oldboy.txt
I teach linux.
not 4900000448.
[root@oldboyedu50-lnb /oldboy]# tr '\n' '\t' <oldboy.txt
I am oldboy teacher! I teach linux. I like badminton ball ,billiard ball and chinese chess! my blog is http://oldboy.blog.51cto.com our size is http://blog.oldboyedu.com my qq is 49000448 not 4900000448. my god ,i am not oldbey,but OLDBOY! [root@oldboyedu50-lnb /oldboy]#
3.7 第6个符号 * 一个字符连续出现0或0次以上
3.8 第7个符号 .* 所有符号字符 包括空行
[root@oldboyedu50-lnb /oldboy]# grep '.*' oldboy.txt
I am oldboy teacher!
I teach linux.
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
正则中表示 连续出现或所有的时候
正则表达式有贪婪性
替你寻找的文字符号 有多少吃多少 有多少匹配多少
[root@oldboyedu50-lnb /oldboy]# grep '^.*o' oldboy.txt
I am oldboy teacher!
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
not 4900000448.
my god ,i am not oldbey,but OLDBOY!
3.9 第8个符号 []每次匹配一个字符
grep '[a-z]' oldboy.txt
grep '[A-Z]' oldboy.txt
grep '[0-9]' oldboy.txt
grep '[a-zA-Z]' oldboy.txt
grep '[a-Z]' oldboy.txt
grep -i '[a-z]' oldboy.txt
-i 不区分大小写 ignore case
3.10 第9个符号 [^] 每次匹配一个字符,显示出除过这个字符的所有字符
[root@oldboy50-01 ~]# grep '[^ab]' oldboy.tat
I am oldboy teacher!
I teach linux.
I like badminton ball ,billiard ball and chinese chess!
my blog is http://oldboy.blog.51cto.com
our size is http://blog.oldboyedu.com
my qq is 49000448
not 4900000448.
my god ,i am not oldbey,but OLDBOY!