目录
一.Linux移动删除命令
1.mv:移动或重命名文件或目录
格式:mv 源文件 目的地
源文件不改变路径 就是改名
源文件改变路径 就是移动(也可以移动并且改名)
mv old_name new_name:将old_name重命名为new_name
mv file_name destination:将file_name移动到目标位置
拓展:
选项 | 说明 |
-f | 强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖 |
-i | 交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项) |
-n | 如果目标文件已经存在,则不会覆盖移动,而且不询问用户 |
-v | 显示文件或目录的移动过程 |
2.rm :删除文件或目录
rm file_name:删除名为file_name的文件
rm -r dir_name:递归地删除dir_name及其内容
rm -f __name :强制删除__name及其内容
rm -i :交互
[root@localhost ~]# rm -rf / #不让执行
[root@localhost ~]# echo * #删根后查看
[root@localhost ~]# rm -rf /data/*
[root@localhost ~]# rm -rf /data /* #之间的区别误操作,等于删根
3.shred:安全删除文件
rm虽然删除了文件,但是被删除的文件仍然可能被恢复,在安全要求较高的场景下,可以使用shred安全删除文件
常见选项:
-z最后一次覆盖添加0,以隐藏覆盖操作
-v 能够显示操作进度
-u 覆盖后截断并删除文件
-n # 指定覆盖文件内容的次数(默认值是3次)
二.查找文件
1.locate
(1)locate 查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db
(2)索引的构建是在系统较为空闲时自动进行(周期性任务),执行updatedb可以更新数据库
(3)索引构建过程需要遍历整个根文件系统,很消耗资源
(4)locate和updatedb命令来自于mlocate包
优点:速度很快 缺点:不是实时更新的数据需要手动输入命令更新数据(undatedb更新)
选项
“-i ” : 不区分大小写的搜索
“-n” : N 只列举前N个匹配项目
2.which (找文件 命令)
which 常用于查找外部命令
3.find
格式:find [范围] [选项(条件表达式)] [处理动作]
范围:你要找到文件范围(不写就是默认在当前文件夹)
条件表达式:选项 表达式 ,描述你要找的文件
处理动作:对找到的文件进行处理(删除,复制,显示,移动)
命令特点:
1.精确查找 2.实时查找 3.支持查找条件巨多
常用可选项
查找类型 | 关键字 | 说明 |
按名称查找 | -name | 根据目标文件的名称进行查找,允许使用“*”及“?” 通配符-iname"文件名称"不区分大小写 |
按文件大小查找 | -size | 根据目标文件的大小进行查找口一般使用“+”、"”号设置超过或小于指定的大小作为查找条件口常用的容量单位包括kB(注意k是小写)、MB、GB |
按文件属主查找 | -user | 根据文件是否属于目标用户进行查找 |
按文件类型查找 | -type | 根据文件的类型进行查找口文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等 |
按inode号 | -inum | 根据文件inode号查找 |
按权限查找 | -perm | 按文件权限查找 |
最大搜索目录深度 | -maxdepth level | 将你的文件已分级的形式查找 |
最小搜索目录深度 | -mindepth level | 同上find /etc -maxdepth 2 -mindepth 2 |
(1)-name :按名称查找
(2)-size :根据文件大小查找
-size[+|-]#UNIT #常用单位:k,M,G,c(byte),注意大小写敏感
#UNIT:#表示(#-1,#],如:6k 表示(5k,6k]
-#UNIT #表示[0,#-1],如:-6k 表示[0,5k]
+#UNIT #表示(#,∞),如:+6k 表示(6k,∞)
(3)-user :按文件属主查找
(4)-type :根据文件类型进行查找
(5)-time :根据时间查找
找到 /var/log30天以上 大于1G 以log结尾的普通文件
find /var/log -mtime +30 -size +1G -name "*log" -type f
(6)组合条件
*与:"-a" ,默认多个条件是与关系 "-a" 可以省略
*或:"-o",和多个关系是或关系
*取反:"-not",
"a"的优先级高于"o"
(7)-inum :根据inode号查找
(8)-maxdepth;-mindepth:最大/小搜索目录深度
find处理动作
-print:默认的处理动作,显示至屏幕
-ls:类似于对查找到的文件执行"ls -dils"命令格式输出
-fls file:查找到的所有文件的长格式信息保存至指定文件中,相当于 -ls > file
-delete:删除查找到的文件,慎用!
-ok COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令,对于每个文件执行命令之前,都会交互式要求用户确认
-exec COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令
{}: 用于引用查找到的文件名称自身
(1)fls
(2)exec
找到 /var/log30天以上 大于1G 以log结尾的普通文件 移动到/data
find /var/log -mtime +30 -size +1G -name "*log" -type f -exec mv { } /data \ ;
三.查看内容
1.cat
选项 | 效果 |
-n | 显示行号包括空行 |
-b | 跳过空白行编号 |
-s | 将所有的连续的多个空行替换为一个空行(压缩成一个空行) |
-A | 显示隐藏字符 |
2. head和tail
可以显示文件或标准输入的前面行
head查看文件的前面部分(默认十行)
格式:head -n 10 文件名
head -c ( 取字符)
tail查看文件后面部分 (默认十行)
格式:tail -n 10 文件名
tail -f 文件名 (实时查看后十行 用于查看日志)