关于目录的操作

关于目录的操作命令有cd,mkdir,rmdir,pwd。

以前说过命令的基本格式是  命令 【选项】 【参数】

而这些操作的参数多数都是目录的路径。路径分为相对路径和绝对路径。

  • 相对路径:比如我们现在在/etc,我们想切换到/etc/yum.repos.d下,用相对路径的方法是:cd  ./yum.repos.d。我们可以用‘.’代表当前我们在的路径。
  • 而绝对路径,就是直接把从根开始输入一个详细的地址。

除了相对路径可以写少一点目录,我们还可以用 esc+.来写入上一次写过的目录。

还可以用!$ 来写入上一次写过的目录。

一、cd命令。

①cd首先是一个内嵌命令。

[root@localhost ~]# type help
help is a shell builtin

所以获取帮助的不能用 cd --help,可以用 help cd,也可以用man cd

②cd的便捷操作

cd ~用户名                  去某用户名的家目录,但是一般只能root才可以去别人的家目录。

                                       一般用户只能,~自己用户名,相当于cd  不加任何参数,代表回到自己家目录

cd  ..                             回到上一级目录,cd  .. 会一直退回到上一级,直到回到根目录下,不能再退回。

                                      因为 根 是一切目录的开始点/最初点。

cd -                               切换到上一次的目录,第一次按相当于

cd                                  回到家目录

练习的结果:

[root@localhost ~]# cd ~nick
[root@localhost nick]# cd ..
[root@localhost home]# cd -
/home/nick
[root@localhost nick]# cd !$                                   // !$ 之后会显示上一次的指令,以及进入的目录
cd -
/home
[root@localhost home]# cd !$
cd -
/home/nick

二、mkdir命令

①mkdir是一个外部命令,获取帮助是用 --help或者是man

[root@localhost nick]# type mkdir
mkdir is /usr/bin/mkdir

②mkdir的基本操作

mkdir -p  路径+目录名                         递归创建目录,即使前面的目录不存在也可以创建出来。

mkdir -v  【参数】                                 看见创建目录的顺序

通常 -v选项和-p选项经常一起用。

如果创建多个目录可以用/来分割,{a,b}来表示某个目录下创建a,b两个目录,不用多次输入,减少麻烦

tmp/mylinux1/
|--bin
|--etc
|                  |-sysconfig
|                  |--network-scripts

                     |--sbin
|--usr
|                    |--bin
|                    |--sbin
|                    |--lib
|                    |--lib64
|                    |--local
|                    |        |--bin
|                    |        |--etc
|                    |        |--lib
|                    |        |--sbin
|
|--var
|--cache
|--log
|--run

可以用一条语句实现,而不用多条语句创建目录。

[root@localhost tmp]# mkdir -pv ./mylinux1/{bin,etc/sysconfig/network-scrips,sbin,usr/{bin,sbin,lib,lib64,local/{bin,etc,lib,sbin}},var/{cache,log,run}}
mkdir: created directory ‘./mylinux1’
mkdir: created directory ‘./mylinux1/bin’
mkdir: created directory ‘./mylinux1/etc’
mkdir: created directory ‘./mylinux1/etc/sysconfig’
mkdir: created directory ‘./mylinux1/etc/sysconfig/network-scrips’
mkdir: created directory ‘./mylinux1/sbin’
mkdir: created directory ‘./mylinux1/usr’
mkdir: created directory ‘./mylinux1/usr/bin’
mkdir: created directory ‘./mylinux1/usr/sbin’
mkdir: created directory ‘./mylinux1/usr/lib’
mkdir: created directory ‘./mylinux1/usr/lib64’
mkdir: created directory ‘./mylinux1/usr/local’
mkdir: created directory ‘./mylinux1/usr/local/bin’
mkdir: created directory ‘./mylinux1/usr/local/etc’
mkdir: created directory ‘./mylinux1/usr/local/lib’
mkdir: created directory ‘./mylinux1/usr/local/sbin’
mkdir: created directory ‘./mylinux1/var’
mkdir: created directory ‘./mylinux1/var/cache’
mkdir: created directory ‘./mylinux1/var/log’
mkdir: created directory ‘./mylinux1/var/run’

注意:当在创建目录的时候,子目录只有一个的时候不能用{},就是a下创建b,不能用a{b},不然会出现吧{}也当成目录名,出现错误。

三、rmdir命令

①rmdir和mkdir类似,都是外部命令。

②rmdir的权限有限制,普通用户不能删除root创建的目录,但是可以删除自己创建的目录

[nick@localhost tmp]$ rmdir mylinux1/
rmdir: failed to remove ‘mylinux1/’: Operation not permitted

③rmdir -p                        递归删除,只要是上一个目录是空目录就可以一直往 / 方向删除。

④rmdir -v                         可以看到系统删除目录的过程

递归删除:

[root@localhost tmp]# rmdir -pv ./mylinux1/bin/
rmdir: removing directory, ‘./mylinux1/bin/’
rmdir: removing directory, ‘./mylinux1’
rmdir: failed to remove directory ‘./mylinux1’: Directory not empty

删除的时候也可以用{}来删除多个目录:

[root@localhost tmp]# rmdir -pv ./mylinux1/{etc,sbin}
rmdir: removing directory, ‘./mylinux1/etc’
rmdir: failed to remove ‘./mylinux1/etc’: Directory not empty
rmdir: removing directory, ‘./mylinux1/sbin’
rmdir: removing directory, ‘./mylinux1’
rmdir: failed to remove directory ‘./mylinux1’: Directory not empty

删除的目录的时候当遇到删除的目录里面有东西就会不执行删除。

四、pwd命令

①、pwd是内部命令

②、pwd用于打印当前的工作目录(print working directory)

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值