Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux管理磁盘
查看当前磁盘使用情况:df -h fdisk -l (查看所有的硬盘)
服务器添加硬盘:在系统设置添加
可以挂载到多个设备
Vi命令
- 所有的指令都是在指令行下输入的,不是在编辑模式下进行的!
- 复制多行/单行:输入yy,然后按k
- 删除某一行:按dd; 删除某个字符:光标选中某个字符,按x
- 删错某个字符/某一行想返回:u
替换某个文件所有内容:%s/failymao/momo/g (ESC后:替换文件中所有【g表示所有】falilymao的内容为momo
替换某一行某个内容:%s/momo/failymao/1 (替换最后一行)
- 首行添加某个字符或者空白字符:%s/my/ my/g
- 第二种方法(my后面添加空格) :%s/my/& /
- 首行添加:%s/^/& /(^正则首行,&表示追加)
- 末尾行添加:%s/$/& hello($表示末尾)
- 匹配行前插入空白行:某个字符下按 O(大写),行后插入空白行按o(小写)
- 跳转:
- 跳转最后一个字符:GG
- 跳转第一个字符:gg
- 查找:/my
- 删除匹配的项目之后的所有内容:dG
sed命令
替换某个文件所有的内容:
sed 's/momo/failymao/g' test.txt(查看替换,s表示查找)sed -i 's/momo/failymao/g' test.txt替换(加参数 -i 表示写入)匹配行前插入:sed -i '/IS/i 123456' test.txt匹配行后插入:sed -i '/IS/a 123456' test.txt (a 表示after)修改某个配置文件信息:sed '/SELINUX/s/disabled/123456/g' /etc/selinux/config (修改 /etc/selinux/config配置文件中SELTINUX后面的disabled为123456)
find命令
查找当前目录某个文件:
查找根目录某个文件:
查找以固定格式结尾的所有文件:
查找以固定格式结尾的目录或者文件:
查找以固定格式结尾的目录或者文件:
find . name "*.py" -typt d -mtime +1 -size +10M (d表示类型为目录,-mtime +1 表示一天以上,-1表示1天之内,-size表示大小为10M的文件目录)
查找文件包含有某些内容的文件:
查找的文件进行拷贝:
find /root/ -name "*" -type f -name "*server*" -exec cp {}/samba \;(查找/root目录下,查找以文件中包含有server的文件,并(-exec)复制(cp)到 ({}接目录)/samba目录下,(;)固定格式)
打包:
删除文件:
find /samba -name "*" -type f -name "*server*" -exec rm -rf {} \;(删除/samba下,包含文件名中含有“server”的所有的文件!)删除文件 == 等同于exec:find /root/ -name "*.py" | xargs rm -rf {} \; (管道符| xargs 等同于 -exec)
管道符grep
过滤文件:前面的结果作为后面的输入:
排除文件:
打印过滤的固定的某一行:
grep 正则
查看内存,ip信息
特殊指令合计
其他应用实例:输出文本数据中最大最小的数
执行 :
指令详解:1) sed 's/ /\n/g' 将所有空格转化成换行
2) |grep -v "^$"把开头结尾都是空格的组 排除掉, -v 表示排除
3) |sort -nr从大到小排序
4) |sed -n '1p;$p' -n表示多行打印, 1p表示第一个,$p表示最后一个
awk
指定打印匹配的某一行
linux指令的熟练度决定了你是否能成为一个运维届的老司机!切记多练!多练!多练!