絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令

絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令詳解

一、絕對路徑和相對路徑(由下圖進行講解)

絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令

絕對路徑:由根目錄開始(/)開始的文件名或者目錄名稱,我們通過絕對路徑切換到/man1文件處,所經過的路徑。

cat /root/usr/share/man/man1

如下圖絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令

相對路徑:相對于當前路徑,以當前所在位置的相對路徑。例如,我現在在/sbin目錄下,我要訪問man1文件。相對路徑為

cat /usr/share/man/man1

如下圖絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令 同理我們也可以用絕對路徑來訪問這個文件 cd /root/usr/share/man/man1 如下圖絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令

那我們訪問一個文件或者目錄時最好用相對路徑還在絕對路徑? 這要看你所處的位置,如下圖的兩種情況,
1.我在share目錄中,我要訪問man1文件; 2.我在man目錄下要訪問test目錄。 絕對路徑和相對路徑及cd、pwd、mkdir、rmdir、tree命令 我們可以發現第二種情況,我們要訪問test1目錄只有一種方式,使用絕對路徑。 這下應該能理解相對路徑和絕對路徑。至于我當前在share目錄下我要訪問man1文件,我應該用那種路徑。這需要看你訪問man1文件的目的等等,這里暫時不做詳細介紹。

二、cd命令

切換工作目錄 無論是作為一名管理員還是一名Linux普通的用戶,我們在使用Linux系統過程中,都會因為需要不停的切換工作目錄。這時候就需要用到cd這個命令。

1.使用方法:

cd destination e.g. 如上圖所示我們由切換到tmp目錄下的test1目錄下的1目錄下的2目錄下

[root@local ~]# cd /tmp/test1/1/2
[root@local 2]# pwd
/tmp/test1/1/2

注意(均是雙引號里面為特殊目錄)

在這里面我們需要記住幾個特殊的目錄,可以幫助更加便捷的使用Linux。

1. "."代表是當前目錄的意思
2. ".."代表是上一級目錄的意思

cd .. 我們可以快速切換到上一級目錄,比使用相對路徑和絕對路徑都更加快速。

[root@local ~]# cd -
/tmp/test1/1/2
[root@local 2]# cd ..
[root@local 1]# cd -
/tmp/test1/1/2
[root@local 2]# cd ..
[root@local 1]# pwd
/tmp/test1/1
[root@local 1]# cd ..
[root@local test1]# pwd
/tmp/test1
[root@local test1]# cd ..
[root@local tmp]# pwd
/tmp
[root@local tmp]#  cd ..
[root@local /]# pwd
/
3. "-"在剛剛使用過的工作目錄與現在的工作目錄進行來回切換
[root@local 2]# cd -
/root
[root@local ~]# cd -
/tmp/test1/1/2
[root@local 2]# cd -
/root
[root@local ~]# cd -
/tmp/test1/1/2
4. "~" 代表當前用戶家目錄
5. "~mageedu" 代表mageedu這個用戶的jiamu

root 用戶可以直接切入任何其他用戶的家目錄,而不需要密碼認證。

三、pwd命令

顯示當前工作目錄

[root@local 1]# pwd
/tmp/1

-P 選項,顯示軟鏈接指向路徑而不顯示當前路徑。具體看下面的命令。

[root@local tmp]# ll
total 0
lrwxrwxrwx. 1 root root 4 Jul 31 09:35 1 -> /dev 
[root@local 1]# pwd
/tmp/1
[root@local 1]# pwd -P
/dev

可以看到1目錄時個軟鏈接指向dev目錄,而pwd只是顯示的當前路徑,而加上-P顯示的就是軟鏈接指向的路徑。

注意:pwd命令一般的用法都是直接用命令而不跟著任何參數。
同時又相關的環境變量也能實現這個功能:

1.PWD(大寫) :顯示當前所在目錄

[root@local ~]# echo $PWD
/root

2.OLDPWD(大寫):顯示上一次所在目錄

[root@local ~]# cd /tmp
[root@local tmp]# cd /usr
[root@local usr]# echo $OLDPWD
/tmp

四、mkdir

創建一個目錄,這個命令也是管理Linux基礎的命令之一。請務必掌握

常用選項

-m, –mode=MODE,創建指定MODE的目錄,注意這個權限不需要減掉umask。如下圖

[root@local tmp]# ll
total 0
drwxrwxrwx. 2 root root 6 Jul 31 10:24 test.dir
[root@local tmp]# mkdir --mode=111 test.dir2
[root@local tmp]# ll
total 0
drwxrwxrwx. 2 root root 6 Jul 31 10:24 test.dir
d--x--x--x. 2 root root 6 Jul 31 10:25 test.dir2

-p, –parents 連續創建多個不存在的目錄,并且不會報錯。我們知道mkdir這個命令只能在存在的路徑中創建目錄,而我們有時候需要這樣創建,例如,在tmp目錄下面再創建1目錄,1目錄下再創建2目錄,2目錄下再創建3目錄,3目錄下再創建4目錄,4目錄下再創建5目錄。要求一次創建成功。這是就需要用過這個選項,具體見下圖。

[root@local tmp]# mkdir -p /tmp/1/2/3/4/5
[root@local tmp]# tree /tmp
/tmp
├── 1
│   └── 2
│       └── 3
│           └── 4
│               └── 5

五、tree

上面的圖我們可以大概知道tree命令的用法。沒錯,tree命令就用來顯示目錄和文件的層級結構。

常用選項

-a 顯示所有文件和目錄,除了.和.. (常用)

    [root@local tmp]# tree -a /root
    /root
    ├── anaconda-ks.cfg
    ├── .bash_history
    ├── .bash_logout
    ├── .bash_profile
    ├── .bashrc
    ├── .cache
    │   ├── abrt
    │   │   └── lastnotification
    │   └── dconf
    │       └── user
    ├── .config
    │   ├── abrt
    │   └── lftp
    ├── .cshrc
    ├── .dbus
    │   └── session-bus
    │       └── 7a8157e8e3f64383a8612754a1682bcb-9
    ├── initial-setup-ks.cfg
    ├── .lesshst
    ├── .local
    │   └── share
    │       └── lftp
    │           ├── cwd_history
    │           ├── rl_history
    │           └── transfer_log
    ├── .tcshrc
    ├── .viminfo
    ├── .xauth3F8Xbp
    └── .xauth3fbnpT

    11 directories, 18 files

-d 僅僅顯示目錄(常用和-L 一起使用)

[root@local tmp]# tree -d /root
/root

0 directories

-L顯示幾級層數,和-d 一起使用

[root@local usr]# tree -L 1 -d /

/
├── bin
├── boot
├── dev
├── etc
├── home
├── lib
├── lib64
├── lost+found
├── media
├── mnt
├── opt
├── proc
├── root
├── sbin
├── selinux
├── srv
├── sys
├── tmp
├── usr
└── var

20 directories

tree還有很多其他的命令,詳見man。常用的就是以上的選項

六、rmdir

這是一個很少用的命令,因為他的一起功能我們能通過rm 實現,因此就不在這里做過多介紹需要了解詳解man。

原創文章,作者:fighter,如若轉載,請注明出處:http://www.www58058.com/26965

(0)
fighterfighter
上一篇 2016-08-02
下一篇 2016-08-02

相關推薦

  • Linux man中文幫助安裝

    雖然在CentOS操作系統中具有多語言包,但其man手冊是英文的,對于新手來說能夠使用中文man手冊將加快學習速度

    CentOS系統安裝中文man手冊

    Linux干貨 2017-11-26
  • N25期—第四周作業

    1、 復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 cp –rf /etc/skel /home/tuser1 chmod -R go= /home/tuser1 2、 編輯/etc/group文件,添加組hado…

    Linux干貨 2016-12-26
  • 內部命令與外部命令——Linux基本命令(3)

    1.     內部命令與外部命令 內部命令:由shell自帶的,而且通過某命令形式提供 內部命令在系統啟動時就調入內存,是常駐內存的,所以執行效率高。 外部命令:在文件系統路徑下有對應的可執行程序文件 外部命令是系統的軟件功能,用戶需要時才從硬盤中讀入內存。 2.     命令類…

    2017-07-13
  • Linux基本命令

    前言 今天學習了Linux下的一些基本命令,在此歸納總結一下這些命令的基本用法。 Linux命令幫助的獲取     在拿到一個命令后不知道其用法,我們可以通過命令幫助來查看它的用法,但linux下內部命令和外部命令獲取幫助的方法是有差別的。     內部命令:help command &n…

    Linux干貨 2016-10-14
  • bash通配符和正則表達式元字符部分歸納

    Linux中有各種各樣的字符,而且在不同環境和不同命令之下含義也不同 作為新手,決定先歸納學到的符號,方便后面學習厘清它們之間的關系。 glob 簡化了的正則表達式 bash默認通配符: ? :只匹配一個任意字符; * :匹配零個或多個任意字符;   [^] :方括號及其中^中的取反 [abc]:匹配任何一個列在方括號中的字符(這個例子要么匹配一個…

    Linux干貨 2016-04-11
  • 文件查找find與壓縮

    1.locate:   locate是查詢系統上預建的文件索引數據庫    /var/lib/mlocate/mlocate.db   依賴于事先構建的索引   索引的構建是在系統較為空閑時自動進行(周期性任務),管理 員手動更新數據庫(updatedb)    缺點:索引構建過…

    Linux干貨 2016-08-18
欧美性久久久久