内容:
#1.linux的特殊符号
1.1 通配符 * {}
1.2 特殊符号
#2.正则表达式
2.1 什么是正则
2.2 作用
2.3 分类
2.4 正则表达式与通配符的区别
2.5 基础正则表达式
#3.应用例子
3.1 linux如何让一个服务/脚本开机自启动?
3.2 磁盘空间不足 no space left on device
3.3 文件的删除原理(条件)
#4.搬运学习原博客 | 及补充博客链接
#1.linux的特殊符号
1.1 通配符 * {}
1.1.1 含义
方便查找文件 通配符是用来找文件名字的。
1.1.2 *
通过find 命令找以 .sh 结尾的文件,使用*替代文件名字。
查找文件名中,包含有samba字节的文件。
1.1.3 {}
{} 用来生成序列
echo {a..z}{A..Z} | 与 echo {a..z} {A..Z}
生成按规则序列{开始..结束..间隔}
备份一个文件的时候使用
1.2 特殊符号
1.2.1 特殊符号
> 标准输出重定向,先把内容清空,再向文件里放其他东西
>> 标准追加重定向 向文件内加内容
< 标准输入 xargs
<< 追加输入 cat>/clsn.txt<<EOF 追加多行
. 当前目录/linux下面的隐藏文件
.. 当前用户的上一级目录
~ 当前用户的家目录
/ 根 路径的分割符号
\ 临时取消别名
| 管道
!
1) vim中强制
2) 取反 find awk
3) 表示使用你用过的命令 使用历史命令
# 注释
$ 取出变量里的内容
&& 并且 前一个命令运行成功,然后再运行后面的命令
ifdown eth0 && ifup eth0
|| 或者 前一个命令运行是否成功,都会运行后面的命令
; 分开多条命令 在同一行里面放入多个命令。
ls; pwd; hostname
1.2.2 单引号、双引号、不加引号
' '
吃啥吐啥
" "
把双引号里面的特殊符号进行解析
不加引号
` `
反引号 先运行,把结果留下 与$()作用相同
#2.正则表达式
2.1 什么是正则
特殊符号表示文字 文本
^ 开头
[0-9] 数字
2.2 作用
提高效率 省事
2.3 分类
2.3.1 基础正则表达式
^ ^ . * .* [0-9] [^0-9]
2.3.2 扩展正则表达式
| () + {} ?
2.4 正则表达式与通配符的区别
1、通配符是用来找文件的。
2、正则表达式用来的文件中找内容、文本。
2.5 基础正则表达式
2.5.1 环境准备
2.5.2 找以M开头的行 ^
2.5.3 以 com. 结尾的行结尾的行 $【注意,文件结尾不能有空格,否则搜索不到】
2.5.4 显示空行,并且加上行号
-n 显示行号
^$ 表示开头和结尾中间没有东西,即空行
2.5.5 表示任意一个字符 . (点)
点表示任意一个字符,most. 表示点的位置是什么都可以。
2.5.6 找到以点结尾的行
\ 转意符号,把特殊含义的的去掉特殊含义。
.$ 表示以点结尾。
2.5.7 * 前一个文本连续出现了0次或1次以上
连续出现了0次就是没出现
-o 显示grep找到的过程
2.5.8 正则表达式的贪婪性
有多少要多少,尽可能多的匹配。
2.5.9 .* 表示所有
2.5.10 [abc] 中括号表示一个整体
相当于一个符号,表示a或者b或者c。
2.5.11 找以 x y z 开头的,并且以 a b c 结尾的行
^[xyz]
以 x y z 开头的
.*
中间是什么都可以
[abc]$
以 a b c 结尾的行
表达式:"^[xyz].*[abc]$"
2.5.12 [^abc] 排除a或排除b或排除c
2.5.13 grep -v 排除与[^abc]
grep -v 排除行
[^abc] 字符或文字
#3.应用例子
3.1 linux如何让一个服务/脚本开机自启动?
1)chkconfig
2)/etc/rc.local【待研究】
3.2 磁盘空间不足 no space left on device
1)block满了 500G 3*200G视频
df -h
du -sh /*
du -sh /* |grep G【***待研究***】
2)block满了 文件没有被彻底删除 硬链接数为0,进程调用数不为零
检查:lsof|grep delete【待研究】
3.3 文件的删除原理(条件)
1、硬链接数为0
2、进程调用数为0
日志
/var/log/messages
/var/log/secure
rsyslog
3、inode满了
创建一个文件要占用一个inode和至少一个block
大量的小文件【待研究】