首頁 > 軟體

Linux pwd命令學習心得

2020-06-16 18:08:12

你有沒有遇到過需要知道當前所在目錄卻無從得知?有沒有想要複製出當前所在目錄層次卻不知如何下手?俗話說有困難找警察,想知道目錄層次自然要找pwd了。那麼問題來了:

什麼是pwd

  pwd的意思是Print Working Directory,也就是列印工作目錄,意如其名,就是說列印出使用者當前所在目錄,它會列印出從根目錄(/)開始到當前所在目錄的完整路徑。這條命令是一條shell的內建命令,並且在大多數shell中都可以使用,如bash、Bourne shell,ksh、zsh等等。

命令格式:  

# pwd [OPTION]

常用引數:

 選項  描述
 -L (即邏輯路徑logical )  使用環境中的路徑,即使包含了符號連結
 -P (即物理路徑physical)  避免所有的符號連結
 –help  顯示幫助並退出
 –version  輸出版本資訊並退出

如果同時使用了‘-L‘和‘-P‘,‘-L‘會有更高的優先順序。如果沒有指定引數,pwd會避免所有的符號連結,也就是說會使用‘-P‘引數。好了下面介紹具體栗子。我們的栗子都是使用“/bin/pwd”的。那麼它和“pwd”有什麼區別呢?

pwd與/bin/pwd的區別

  這有什麼區別呢?直接使用“pwd”意味著使用shell內建的pwd。你的shell可能有不同版本的pwd。具體請參考手冊。當你使用的是/bin/pwd時,我們呼叫的是二進位制版本的命令。雖然二進位制的版本有更多的選項,但是它們兩者都能列印當前的目錄。好了下面繼續我們的pwd的栗子實戰。

8個pwd命令栗子

  1.列印當前目錄:

1 linuxidc@linuxidc:~$ /bin/pwd
2 
3 /home/linuxidc

  2.為資料夾建立一個符號連結(比如說在home目錄下建立一個htm連結指向/var/www/html)。進入新建立的目錄並列印出含有以及不含符號連結的目錄:

1 linuxidc@linuxidc:~$ ln -s /var/www/html/ htm
2 linuxidc@linuxidc:~$ cd htm

  3.從當前環境中列印目錄即使它含有符號連結:

1 linuxidc@linuxidc:~$ /bin/pwd -L
2 
3 /home/linuxidc/htm

  4.通過解析所有的符號連結來列印當前實際的物理目錄:

1 linuxidc@linuxidc:~$ /bin/pwd -P
2 
3 /var/www/html

  5.列印pwd命令的版本:

1 linuxidc@linuxidc:~$ /bin/pwd --version
2 
3 pwd (GNU coreutils) 8.23
4 Copyright (C) 2014 Free Software Foundation, Inc.
5 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
6 This is free software: you are free to change and redistribute it.
7 There is NO WARRANTY, to the extent permitted by law.
8 
9 Written by Jim Meyering.

   6.列印所有含有可執行pwd的路徑:

1 linuxidc@linuxidc:~$ type -a pwd
2 
3 pwd is a shell builtin
4 pwd is /bin/pwd

  7.儲存“pwd”命令的值到變數中(比如說:a ),並從中列印變數的值(對於觀察shell指令碼很重要)。

1 linuxidc@linuxidc:~$ a=$(pwd)
2 linuxidc@linuxidc:~$ echo "Current working directory is : $a"
3 
4 Current working directory is : /home/linuxidc

  8.一次性獲取當前工作目錄以及先前工作的目錄:

1 linuxidc@linuxidc:~$ echo “$PWD $OLDPWD”
2 
3 /home /home/linuxidc


IT145.com E-mail:sddin#qq.com