目录
1.mv 移动/改名
mv mytouch mkfile #将指定的文件或目录
要剪切的文件必须存在,指定的路径必须是一个目录,且必须存在
mv ens33.cap ky30.txt #改名
2.find 查找
1.实时查找 2.精确查找 3.全量遍历(所以速度慢一点) 4.支持多种查找条件
-name 按名称查找,允许使用"*"及"?"通配符。 -size 按文件大小查找,一般使用"+"、"-"号设置超过或小于指定的大小作为条件。 -user 按文件属主查找 -type 按文件类型查找 -inum 按inode号查找指定的文件
-perm 按文件权限查找
-name: find /opt -name 123
find /opt -name “123*” #查找所有名字为123的文件
指定路径 可以插文件也可也查目录 指定名称:-name必须是完全匹配,否则查找失败。
-size: 常用单位:k,M,G,c(注意大小写)
find /opt/ -size +6M 大于6M的文件
find /opt/ -size -6M 小于6M的文件
find /opt/ -size 6M 等于6M的文件
(有四舍五入的机制) 输入大小的数字只能是整数+ ,
-inum
find /opt -inum 67243554 -delete #删除查找到的动作
find /opt -inum 67243554 -exec rm -rf {} \; 删除查找到的文件
查找的内容 后面可以跟一个命令 删除花括号内容 花括号内容就是查找的内容 \;必须加,是固定格式。
-type typy可以是以下形式
f:普通文件
d:目录文件
l:符号链接文件
s:套接字文件
b:块设备文件
c:字符设备文件
p:管道文件
find /opt/ -type f 文件
-user
find /opt/ -user dn -ls #查找用户组为dn的文件,并打印列出来
处理动作:
-print 默认动作
-ls 查找到的文件详细的展示
-delete删除查找到的文件
-ok 命令 {} \;
find /opt -inum 67243554 -ok rm -rf {} \; #提醒是否删除查找到的文件,和-exec差不多,区别就是ok会提醒。
-fls file (文件名)
find /opt/ -name "123*" -fls /opt/test #将指定的文件以详细的格式保存到指定的文件中
find /opt/ -name "123.*" -user dn -size -6M -ls 综合查找
-a :与
-o:或
实例:
统计一下/etc/目录下,所有的文件,而且是链接文件
find /etc -type f -a -type l -ls
/opt目录下,文件类型是文件,name 123* 大小小于6M ,保留权限复制到/opt/ky30
find /opt -type f -name "123*" -size -6M -exec cp -a {} /opt/ky30
opt目录下,123开头的,而且是文件 详细展示
find /opt -name "123*" -a -type f -ls
要么大于6M,要么以123开头
find /opt -size +6M -o -name "123*"
3.where 查命令
whereis ls #查找ls这个命令的路径在哪里
4.which
which ls #查找ls这个命令的路径在哪里以及别名,但没有帮助文档
5.lscpu #查看cpu信息
cat /proc/cpuinfo #查看cpu信息
6.free
free #查看内存
free -h #人性化展示
7.lsblk #查看磁盘的分区情况以及大小,不包括剩余
cat /proc/partitions #查看磁盘分区情况
8.arch #查看系统架构
9.uname -r #查看内核版本
10.date #查看系统时间
date -s 16:17:33 #改当前系统的时间
date -d '-1 day' #查看指定的时间 date -d#显示指定字符串所描述的时间,而非当前时间
date +%T #只展示24小时的时间
date +%F #只展示年月日的时间
%F:完整日期格式,等价于 %Y-%m-%d、
%T:时间(24小时制)(hh:mm:ss)
演示:date -d '-1 day' +%F 显示前一天的系统日期
2023-5-11
date -d '-1 day' +%T 显示前一天的系统时间
14:46:04
date -d '-2 day'
2023年 05月 10日 星期三 14:51:21 CST
date -s#指定查看指定日期 (查询指定日期后,再使用普通查询date命令只会在指定后的日期改变)
演示:date -s 14:54:12
2023年 05月 12日 星期五 14:54:12 CST
date -s 2023-03-12
2023年 03月 12日 星期日 00:00:00 CST
date
2023年 03月 12日 星期日 00:00:08 CST
11.wc
wc#统计文件中的单词数量等信息
wc /etc/passwd
39 75 1968 /etc/passwd
行 单词数 字节数 文件名
wc -l /etc/passwd #统计文件行数
39 /etc/passwd
wc -w /etc/passwd #统计文件词数 识别不了数字,只能识别单词
75 /etc/passwd
wc -c /etc/passwd #统计文件字节数
1968 /etc/passwd
12.tar
tar#打包和解包
-c:创建包文件
-x:解开包文件
-C:解压时指定释放的目标文件,绝对路径
-f:表示使用归档文件
-v:输入详细信息
-j:调用bzip2 程序进行压缩或解压
-z:调用.gz 程序进行压缩或解压
bz2:压缩的文件较小,但是速度比较慢
gz:速度比较快,但是文件的压缩效率比较低,也就是文件比较大
touch 123 456 789
tar -zcvf donghan.gz 123 456 789 #用gz的方式打包,但是没有加后缀,记得加后缀
tar -zcvf donghan.gz 123 456 789 #记得加后缀,声明是打包文件,约定俗成的默认规则
tar -zxvf donghan.gz -C ky30/ #解压至ky30至目录下
tar -zcvf dntest.tar.gz 123.txt 打包
tar -zxvf dntest.tar.gz -C /opt/dntest 解包到指定位置
tar -jcvf usershow.tar.bz2 passwd shadow 解压缩,解包
tar -jxvf usershow.tar.bz2 -C /opt/ 解压缩到指定位置
打包是不能指定路径的,只能在当前目录打包你要的文件
解包时可以指定路径,一般用绝对路径
打包的时候我们的命名方式:包名.gz 包名.bz2
tar -jcvf ky30.bz2 123 456 #用bz2的方式打包
简写:tar -cf test.gz 123 456 #打包
tar -xf test.gz #解包
z和j不用写,可以根据后缀名自动选择包的种类
gzip、bzip2命令:
gzip [-9] 文件名 #gzip制作的压缩文件默认的扩展名为“.gz”,原始文件不再保留
bzip2 [-9] 文件名 #bzip2 制作的压缩文件默认的扩展名为“.bz2”,原始文件不再保留
使用“-9”选项可以提高压缩的比率
-d:用于解压缩以及压缩过的文件,相当于使用gunzip、bunzip2命令
gunzip 文件名.gz 解压缩
gzip -d 文件名.gz 解压缩
bunzip2 文件名.bz2
bzip2 -d 文件名.bz2
bz2和.gz都是linux下压缩文件的格式,有点类似windows下的.zip和.rar文件。
.bz2和.gz的区别在于:前者比后者压缩率更高,后者比前者花费更少的时间。
也就是说同一个文件,压缩后,.bz2文件比.gz文件更小,但是.bz2文件的小是以花费更多的时间为代价的。
unzip zip的包名 只能解压zip格式的文件
13. grep
grep的常用选项
-i:查找时不区分大小写 加不加都一样
-v:显示不包含匹配文本的所有行(反向查询,反向匹配)
-n:显示匹配行及行号
-c:只输出匹配到的总行数(不是匹配到的次数)
-e:实现可多个查找条件的匹配,逻辑or关系
-E:支持使用扩展正则表达式,相当于使用egrep命令
查找条件设置
要查找的字符串以双引号括起来
“^……”表示以……开头
“……$”表示以……结尾
“^$”表示空行
grep -ie "^listen" -e "80$" /etc/httpd/conf/httpd.conf
man cat | grep -v "^$"
作业:以a开头,同时匹配含有m,k,h的所有行
grep -ie "^a" -e "[m$,k$,h$]" /opt/ky27
Shell 还有一种功能,就是可以将两个或者多个命令(程序或者进程)
连接到一起,
把一个命令的输出作为下一个命令的输入,
以这种方式连接的两个或者多个命令就形成了管道(pipe)。
"|"
cat /etc/passwd | grep root
一般情况下,处理文本的命令,例如sort、uniq、grep、awk、sed等命令均支持管道;
14.vim
vim #功能编辑器 三个模式:视图模式、编辑模式、底行模式
vim test1 打开一个已有的文件是编辑,没有的是新建
进入后输入i即可进入编辑模式,按下esc即可退出编辑模式。想要保存输入shift+:后输入wq!(强制保存退出)
esc的作用:退出当前模式
#底行模式
w:保存 q:不保存退出 wq保存退出 q!强制不保存退出 wq!强制保存退出
set nu #列出行号
/s #会以上色的形式展示所有s字母
o#在当前光标的下一行插入
O#在当前光标的上一行插入
a#在当前光标的右侧进行插入
A#在当前光标的行尾进行插入
I#在当前光标的行首进行插入
G#直接跳到最后一行 19G#跳转到19行(19gg)
x,delete#删除单个字符
u#撤销
dd#删除整行 4dd#从当前光标位置向下指定4行,包含当前光标的行