linux学习绝对路径相对路径cdmkdirrmdirrm

Posted 阮文武的网络日志

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux学习绝对路径相对路径cdmkdirrmdirrm相关的知识,希望对你有一定的参考价值。

一、绝对路径

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

二、相对路径

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

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

三、cd命令

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

[[email protected] ~]# pwd
/root
[[email protected] ~]# cd ruanwenwu/
[[email protected] ruanwenwu]# pwd
/root/ruanwenwu
[[email protected] ruanwenwu]# 

cd命令的几个常用参数:

切换到上一级目录:

[[email protected] ruanwenwu]# pwd
/root/ruanwenwu
[[email protected] ruanwenwu]# cd ..
[[email protected] ~]# pwd
/root
[[email protected] ~]# 

切换到家目录

[[email protected] ~]# cd /data/
[[email protected] data]# pwd
/data
[[email protected] data]# cd ~
[[email protected] ~]# pwd
/root

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

[[email protected] ~]# pwd
/root
[[email protected] ~]# cd /data/
[[email protected] data]# pwd
/data
[[email protected] data]# cd ~
[[email protected] ~]# pwd
/root

四、mkdir

mkdir命令用来创建目录。

创建一个目录:

[[email protected] ~]# mkdir 1
[[email protected] ~]# 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

创建某时给默认的权限

[[email protected] ~]# mkdir -m 777 2
[[email protected] ~]# ls -lt
total 1920
drwxrwxrwx 2 root    root       4096 Oct 24 00:05 2
drwxr-xr-x 2 root    root       4096 Oct 24 00:04 1
-rw-r--r-- 1 root    root          0 Oct 23 23:58 a.txt
drwxr-xr-x 5 root    root       4096 Sep 11 12:59 Application
drwxr-xr-x 3 root    root       4096 Apr 24 20:11 shellscripts
-rwxr-xr-x 1 root    root        599 Apr 10  2017 syncwithgit.sh
-rw-r--r-- 1 root    root       8242 Mar 26  2017 npm-debug.log
-rw-r--r-- 1 root    root          0 Mar 26  2017 33.txt
-rw-r--r-- 1 root    root         36 Mar 10  2017 a.php
-rw-r--r-- 1 root    root        296 Mar  1  2017 iptables.bak
-rw-r--r-- 1 root    root          0 Mar  1  2017 1.ipt
-rw-r--r-- 1 tcpdump tcpdump      24 Mar  1  2017 1.cap
drwxrwxrwx 2 root    root       4096 Nov  5  2016 ruanwenwu
drwxr-xr-x 7 root    root       4096 Feb 21  2016 oneinstack
-rw-r--r-- 1 root    root    1909424 Feb 21  2016 Document.pdf

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

连续创建目录:

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

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

五、rmdir

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

删除空的目录5:

[[email protected] ~]# rmdir 3/4/5
[[email protected] ~]# tree 3
3
└── 4

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

[[email protected] ~]# touch 3/4/aa.txt
[[email protected] ~]# rmdir 3/4
rmdir: failed to remove ‘3/4’: Directory not empty

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

[[email protected] ~]# rmdir -p 3/4
rmdir: failed to remove ‘3/4’: Directory not empty

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

[[email protected] ~]# rm 3/4/aa.txt 
rm: remove regular empty file ‘3/4/aa.txt’? y
[[email protected] ~]# rmdir -p 3/4
[[email protected] ~]# tree 3
3 [error opening dir]

0 directories, 0 files

六、rm命令

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

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

[[email protected] ~]# mkdir 3
[[email protected] ~]# touch 3/a.txt
[[email protected] ~]# rm 3/a.txt
rm: remove regular empty file ‘3/a.txt’? n
[[email protected] ~]# rm -f 3/a.txt 

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

[[email protected] ~]# touch 3/a.txt
[[email protected] ~]# rm 3
rm: cannot remove ‘3’: Is a directory

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

[[email protected] ~]# rm 3
rm: cannot remove ‘3’: Is a directory
[[email protected] ~]# rm -rf 3
[[email protected] ~]# ls -ld 3
ls: cannot access 3: No such file or directory

以上是关于linux学习绝对路径相对路径cdmkdirrmdirrm的主要内容,如果未能解决你的问题,请参考以下文章

Linux高级命令03:文本搜索命令★ Python Web篇学习汇总:Part 01—Linux基础命令绝对路径和相对路径 / 创建删除复制移动文件及目录命令

Linux高级命令04:查找文件命令★ Python Web篇学习汇总:Part 01—Linux基础命令绝对路径和相对路径 / 创建删除复制移动文件及目录命令

linxu下面的绝对路径和相对路径

鸟哥的linux私房菜学习-Linux 文件与目录管理

Linux之绝对路径和相对路径

Linux的相对路径和绝对路径cd命令创建和删除目录rm命令