查看原文
其他

精通Linux系列五:目录操作(学完再也不担心删库跑路了)

拾叁 更AI 2023-10-21

点击关注公众号,AI&编程干货及时送达   

我们在 [“文件系统”] 中讨论了Linux的目录结构。现在我们将介绍在该结构中创建、修改、删除和操作目录的命令。

命令作用
cd改变你当前的目录(即,文件系统中的“你现在在哪里”)。
pwd打印你当前的目录名称。
basename打印文件路径的最后一部分。
dirname打印没有最后一部分的文件路径。
mkdir创建(制作)一个目录。
rmdir删除(移除)一个空目录。
rm -r删除一个非空目录及其内容。

cd

stdin  stdout  - 文件  -- 选项  --帮助  --版本

cd [目录]

cd (change directory)命令设置你当前的工作目录:

→ cd /usr/games

如果没有提供目录,cd默认为你的主目录:

→ cd

pwd

stdin  stdout  - 文件  -- 选项  --帮助  --版本

pwd

pwd命令打印你当前工作目录的绝对路径:

→ pwd
/users/smith/linuxpocketguide

basename

stdin  stdout  - 文件  -- 选项  --帮助  --版本

basename 路径 [扩展名]

basename命令打印文件路径中的最后一部分:

→ basename /users/smith/finances/money.
money.

如果你提供了一个可选的扩展名,它会从结果中剔除:

→ basename /users/smith/finances/money. .
money

dirname

stdin  stdout  - 文件  -- 选项  --帮助  --版本

dirname 路径

dirname命令打印出移除最后一部分的文件路径:

→ dirname /users/smith/mydir
/users/smith

dirname并不改变你当前的工作目录。它仅仅操作并打印一个字符串,就像basename一样。

mkdir

stdin  stdout  - 文件  -- 选项  --帮助  --版本

mkdir [选项] 目录

mkdir创建一个或多个目录:

→ mkdir directory1 directory2 directory3

有用的选项

-p给出一个目录路径(不仅仅是一个简单的目录名),自动创建任何必要的父目录。此命令:→ **mkdir -p one/two/three**如果它们还不存在,将创建oneone/twoone/two/three
-m mode以给定的权限创建目录:→ **mkdir -m 0755 publicdir**默认情况下,你的shell的umask控制权限。参见 [“文件属性”] 中的chmod命令,以及 [“文件保护”]。

rmdir

stdin  stdout  - 文件  -- 选项  --帮助  --版本

rmdir [选项] 目录

rmdir (remove directory)命令删除一个或多个你指定的空目录:

→ mkdir /tmp/junk    创建一个目录
→ rmdir /tmp/junk

有用的选项

-p | 如果你提供了一个目录路径(而不仅仅是一个简单的目录名称),它不仅会删除给定的目录,还会自动删除指定的父目录,所有这些都必须是空的。所以rmdir -p one/two/three不仅会删除one/two/three,还会删除one/twoone。|

要删除一个非空目录及其内容,使用(谨慎)rm -r *目录*。使用rm -ri进行交互式删除,或使用rm -rf进行不带任何错误消息或确认的删除。

推荐阅读

··································

你好,我是拾叁,7年开发老司机、互联网两年外企5年。怼得过阿三老美,也被PR comments搞崩溃过。这些年我打过工,创过业,接过私活,也混过upwork。赚过钱也亏过钱。一路过来,给我最深的感受就是不管学什么,一定要不断学习。只要你能坚持下来,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯和编程知识,帮你积累弯道超车的资本。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存