linux学习(六)绝对路径、相对路径、cd、mkdir、rmdir、rm

时间:2022-11-29 20:42:12

一、绝对路径

就是从根开始的,如:/root、/usr/local。

二、相对路径

相对于当前路径的,比如我们在当前路径下建立了一个a.txt。

[root@iZ25lzba47vZ ~]# pwd
/root
[root@iZ25lzba47vZ ~]# ls
.cap .txt Application iptables.bak oneinstack shellscripts
.ipt a.php Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
[root@iZ25lzba47vZ ~]# touch a.txt
[root@iZ25lzba47vZ ~]# ls
.cap .txt Application Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
.ipt a.php a.txt iptables.bak oneinstack shellscripts
[root@iZ25lzba47vZ ~]#

三、cd命令

cd命令的意思是change directory,即更换目录。

[root@iZ25lzba47vZ ~]# pwd
/root
[root@iZ25lzba47vZ ~]# cd ruanwenwu/
[root@iZ25lzba47vZ ruanwenwu]# pwd
/root/ruanwenwu
[root@iZ25lzba47vZ ruanwenwu]#

cd命令的几个常用参数:

切换到上一级目录:

[root@iZ25lzba47vZ ruanwenwu]# pwd
/root/ruanwenwu
[root@iZ25lzba47vZ ruanwenwu]# cd ..
[root@iZ25lzba47vZ ~]# pwd
/root
[root@iZ25lzba47vZ ~]#

切换到家目录

[root@iZ25lzba47vZ ~]# cd /data/
[root@iZ25lzba47vZ data]# pwd
/data
[root@iZ25lzba47vZ data]# cd ~
[root@iZ25lzba47vZ ~]# pwd
/root

切换到上一个目录(类似于遥控器换台)

[root@iZ25lzba47vZ ~]# pwd
/root
[root@iZ25lzba47vZ ~]# cd /data/
[root@iZ25lzba47vZ data]# pwd
/data
[root@iZ25lzba47vZ data]# cd ~
[root@iZ25lzba47vZ ~]# pwd
/root

四、mkdir

mkdir命令用来创建目录。

创建一个目录:

[root@iZ25lzba47vZ ~]# mkdir 1
[root@iZ25lzba47vZ ~]# ls
1 1.ipt a.php a.txt iptables.bak oneinstack shellscripts
1.cap 33.txt Application Document.pdf npm-debug.log ruanwenwu syncwithgit.sh

创建某时给默认的权限

[root@iZ25lzba47vZ ~]# mkdir -m
[root@iZ25lzba47vZ ~]# ls -lt
total
drwxrwxrwx root root Oct :
drwxr-xr-x root root Oct :
-rw-r--r-- root root Oct : a.txt
drwxr-xr-x root root Sep : Application
drwxr-xr-x root root Apr : shellscripts
-rwxr-xr-x root root Apr syncwithgit.sh
-rw-r--r-- root root Mar npm-debug.log
-rw-r--r-- root root Mar .txt
-rw-r--r-- root root Mar a.php
-rw-r--r-- root root Mar iptables.bak
-rw-r--r-- root root Mar .ipt
-rw-r--r-- tcpdump tcpdump Mar .cap
drwxrwxrwx root root Nov ruanwenwu
drwxr-xr-x root root Feb oneinstack
-rw-r--r-- root root Feb Document.pdf

可以看到,给了默认权限的2目录和1目录的权限是不一样的。默认的1的权限是755。

连续创建目录:

[root@iZ25lzba47vZ ~]# mkdir //
mkdir: cannot create directory ‘//’: No such file or directory
[root@iZ25lzba47vZ ~]# mkdir -p //
[root@iZ25lzba47vZ ~]# ls
.ipt a.php a.txt iptables.bak oneinstack shellscripts
.cap .txt Application Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
[root@iZ25lzba47vZ ~]# tree
-bash: tree: command not found
[root@iZ25lzba47vZ ~]# yum install tree
[root@iZ25lzba47vZ ~]# tree └──
└──

可以看到,不加p参数,是不可以连续创建的。

五、rmdir

rmdir的用途是删掉目录。他的功能比较鸡肋,它只能删除空的目录。

删除空的目录5:

[root@iZ25lzba47vZ ~]# rmdir //
[root@iZ25lzba47vZ ~]# tree └──

在4下创建文件,然后再试图去删掉4:

[root@iZ25lzba47vZ ~]# touch //aa.txt
[root@iZ25lzba47vZ ~]# rmdir /
rmdir: failed to remove ‘/’: Directory not empty

rmdir有个p参数,可以连续删除多个目录,和mkdir的p参数对应,但是也只能删除空目录:

[root@iZ25lzba47vZ ~]# rmdir -p /
rmdir: failed to remove ‘/’: Directory not empty

删除4目录下的aa.txt,然后再试一次:

[root@iZ25lzba47vZ ~]# rm //aa.txt
rm: remove regular empty file ‘//aa.txt’? y
[root@iZ25lzba47vZ ~]# rmdir -p /
[root@iZ25lzba47vZ ~]# tree
[error opening dir] directories, files

六、rm命令

rm命令用来删除文件和目录。

在上面的例子里我们已经看到,rm不加任何参数时,系统会给出提示。如果加f参数就不会了:

[root@iZ25lzba47vZ ~]# mkdir
[root@iZ25lzba47vZ ~]# touch /a.txt
[root@iZ25lzba47vZ ~]# rm /a.txt
rm: remove regular empty file ‘/a.txt’? n
[root@iZ25lzba47vZ ~]# rm -f /a.txt

那么rm删除目录是怎样的呢?

[root@iZ25lzba47vZ ~]# touch /a.txt
[root@iZ25lzba47vZ ~]# rm
rm: cannot remove ‘’: Is a directory

看来,rm不能直接删除目录,但是加上r参数后就可以了:

[root@iZ25lzba47vZ ~]# rm
rm: cannot remove ‘’: Is a directory
[root@iZ25lzba47vZ ~]# rm -rf
[root@iZ25lzba47vZ ~]# ls -ld
ls: cannot access : No such file or directory