Linux 处理目录
处理目录的常用命令
- ls(英文全拼:list files): 列出目录及文件名
- cd(英文全拼:change directory):切换目录
- pwd(英文全拼:print work directory):显示目前的目录
- mkdir(英文全拼:make directory):创建一个新的目录
- rmdir(英文全拼:remove directory):删除一个空的目录
- cp(英文全拼:copy file): 复制文件或目录
- rm(英文全拼:remove): 删除文件或目录
- mv(英文全拼:move file): 移动文件与目录,或修改文件与目录的名称
ls (列出目录)
1 2 3 | ls [-aAdfFhilnrRSt] 目录名称 ls [--color={never,auto,always}] 目录名称 ls [--full- time ] 目录名称 |
选项与参数:
- -a :全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)
- -d :仅列出目录本身,而不是列出目录内的文件数据(常用)
- -l :长数据串列出,包含文件的属性与权限等等数据;(常用)
1 | ls -al /opt |
cd (切换目录)
1 2 3 4 5 6 7 8 9 10 11 | cd /opt #使用 mkdir 命令创建 runoob 目录 mkdir runoob #使用绝对路径切换到 runoob 目录 cd /opt/runoob/ #使用相对路径切换到 runoob 目录 cd . /runoob/ # 表示回到自己的家目录,亦即是 /root 这个目录 cd ~ # 表示去到目前的上一级目录,亦即是 /root 的上一级目录的意思; cd .. |
pwd (显示目前所在的目录)
1 | pwd [-P] |
选项与参数:
- -p :显示出确实的路径,而非使用链接 (link) 路径。
1 2 3 4 5 6 7 | [root@nna opt] # cd /bin [root@nna bin] # pwd /bin [root@nna bin] # pwd -P /usr/bin [root@nna bin] # ls -ld /bin lrwxrwxrwx. 1 root root 7 8月 9 11:21 /bin -> usr /bin |
mkdir (创建新目录)
1 | mkdir [-mp] 目录名称 |
选项与参数:
- -m :配置文件的权限喔
- -p :将所需要的目录(包含上一级目录)递归创建起来!
实例:创建数个新目录:
1 2 3 4 5 | [root@nna bin] # cd /opt [root@nna opt] # mkdir test [root@nna opt] # mkdir test1/test2/test3/test4 mkdir : 无法创建目录 "test1/test2/test3/test4" : 不是目录 [root@nna opt] # mkdir -p test1/test2/test3/test4 |
实例:创建权限为 rwx--x--x 的目录。
1 2 3 | [root@nna opt] # mkdir -m 711 test2 [root@nna opt] # ls -dl test2 drwx--x--x. 2 root root 6 1月 6 16:38 test2 |
rmdir (删除空的目录)
1 | rmdir [-p] 目录名称 |
选项与参数:
- -p :从该目录起,一次删除多级空目录
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | [root@nna opt] # ls -dl test* drwxr-xr-x. 3 root root 19 1月 6 16:36 test drwxr-xr-x. 3 root root 19 1月 6 16:37 test1 drwx--x--x. 2 root root 6 1月 6 16:38 test2 [root@nna opt] # rmdir test2 [root@nna opt] # ls -dl test* drwxr-xr-x. 3 root root 19 1月 6 16:36 test drwxr-xr-x. 3 root root 19 1月 6 16:37 test1 [root@nna opt] # rmdir test1 rmdir : 删除 "test1" 失败: 目录非空 [root@nna opt] # rmdir -p test1/test2/test3/test4 [root@nna opt] # ls -dl test* drwxr-xr-x. 3 root root 19 1月 6 16:36 test [root@nna opt] # rmdir -p test/test2/test3/test4 [root@nna opt] # ls -dl test* ls : 无法访问 test *: 没有那个文件或目录 |
rmdir 仅能删除空的目录,可以使用 rm 命令来删除非空目录。
cp (复制文件或目录)
1 | cp [-adfilprsu] 来源档( source ) 目标档(destination) |
选项与参数:
-
-a:相当於 -pdr 的意思,至於 pdr 请参考下列说明;(常用)
-
-d:若来源档为链接档的属性(link file),则复制链接档属性而非文件本身;
-
-f:为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;
-
-i:若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
-
-l:进行硬式链接(hard link)的链接档创建,而非复制文件本身;
-
-p:连同文件的属性一起复制过去,而非使用默认属性(备份常用);
-
-r:递归持续复制,用於目录的复制行为;(常用)
-
-s:复制成为符号链接档 (symbolic link),亦即『捷径』文件;
-
-u:若 destination 比 source 旧才升级 destination !
1 2 3 | [root@www ~] # cp ~/.bashrc /tmp/bashrc [root@www ~] # cp -i ~/.bashrc /tmp/bashrc cp : overwrite ` /tmp/bashrc '? n <==n不覆盖,y为覆盖 |
rm (移除文件或目录)
1 | rm [-fir] 文件或目录 |
选项与参数:
- -f :就是 force 的意思,忽略不存在的文件,不会出现警告信息;
- -i :互动模式,在删除前会询问使用者是否动作
- -r :递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
1 2 | [root@www tmp] # rm -i bashrc rm : remove regular file `bashrc'? y |
mv (移动文件与目录,或修改名称)
1 | mv [-fiu] source destination |
选项与参数:
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
- -u :若目标文件已经存在,且 source 比较新,才会升级 (update)
1 2 3 4 5 | [root@www ~] # cd /tmp [root@www tmp] # cp ~/.bashrc bashrc [root@www tmp] # mkdir mvtest [root@www tmp] # mv bashrc mvtest [root@www tmp] # mv mvtest mvtest2 |
参考:https://www.runoob.com/linux/linux-file-content-manage.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2017-01-06 mui 下拉刷新