1.cp命令
作用:复制文件\文件夹
语法:cp [选项] [file1] [file2]
file1为被复制文件,file2为要复制到的文件或目录
选项:-r 递归复制多个文件
-i 若目的文件存在,则在覆盖前提示
复制文件应具有源文件的读权限,包含file1的目录执行权限和file2的写权限
2.mv命令
作用:用于移动文件\文件夹
语法:mv [选项] [file1] [file2]
file1:要转移的文件 file2: 要转移到的文件/位置
选项:-f 在覆盖目的文件前用不提示用户
-i 提示
在同一目录下使用mv,可以实现对文件或目录的重命名
移动:mv -r test.txt Desktop/ 把test.txt移动到了Desktop下
重命名:mv test1.txt test2.txt
3.rm命令
作用:用于删除文件,文件夹
语法:rm [选项] [file1 file2 ... fileN]
file1,file2...表示要删除的文件或文件夹路径,用空格隔开
选项:-r 递归删除目录及目录中的内容
-f 强制删除
-i 在删除文件列表中的文件前给出提示
rm命令支持通配符 * ,用来做模糊匹配
* 表示匹配任意内容
test* 表示匹配任何以test开头的内容
*test 表示匹配任何以test结尾的内容
*test* 表示匹配任何包含test的内容
4.rmdir命令
作用:删除空目录
语法:rmdir [选项] [目录名]
选项: -p 当子目录被删除后,若其父目录成为空目录,也一并删除
-v 提示删除操作成功
5.which命令
作用:我们在前面学习的命令,它们的本体是一个个的二进制可执行程序我们可以通过which命令,查看所使用的一系列命令的程序文件放在哪里
语法:which [选项] [要查找的命令]
注意在使用which cd时是查找不到的 ,因为which是在PATH内查找,而cd是bash内置的命令
6.find命令
作用:查找指定的文件
1) 按文件名查找
语法:find [起始路径] -name “被查找文件名”
eg:find ~ -name "filename"(记得双引号)
2)按文件类型查找
语法:find [起始路径] -type [被查找文件类型]
- 一般文件 f
d 目录 d
c 字符设备文件 c
b 块设备文件 b
l 链接文件 l
p 管道文件 p
eg:find / -type f
3)按时间查找
-atime | 当文件的内容被读取时, |
-ctime | 当文件的元数据(例如权限或所有权)发生变化时, |
-mtime | 当文件的内容被修改时, |
-atime +n/-n :最后一次被读取的时间大于/小于n天的文件
-ctime +n/-n :最后一次写入,更改inode属性时间大于/小于n天的文件
-mtime +n/-n :最后一次写入文件内容时间大于/小于n天的文件
4)按文件大小查找
语法:find [起始路径] -size +/-n[kMG]
+,- 表示大于和小于
n 表示大小数字
kMG 表示单位,k(小写)为kb,M为MB,G为GB
eg:find / -size -10k 查找小于10kb的文件
以及还有一些
-perm 按文件权限查找
-user 按用户查找
-group 按组查找......
在查找时也支持使用通配符
7.whereis命令
定位一个命令的二进制文件,源文件和手册文件。
whereis [-bms] [命令]
-b:只找二进制文件
-m:只找手册文件
-s:只找源文件
8.locate命令
类似于whereis,也是通过查找预先生成的数据库进行文件搜索。locate命令用于快速查找文件或目录。它是基于一个预先构建的数据库来搜索的,因此比find命令更快,但可能不如find
命令全面
locate [选项] [文件名}
locate file.txt
选项:
-i:忽略大小写
-c:仅显示符合条件的文件数量
-n N:限制输出结果数量,只显示前N个
-b:只匹配基准名,忽略路径
-w:仅匹配完整单词
注意:locate和whereis命令都是通过数据库查找,要在第一次使用前运行sudo updatedb来更新数据库。