15 Linux での「pwd」(印刷作業ディレクトリ)コマンドの例
Linux コマンド ラインを使用する場合、コマンド 'pwd ' が非常に役立ちます。これにより、ルート (/) から開始して、どのディレクトリのどこにいるのかがわかります。特に Linux 初心者にとっては、ナビゲーション中にコマンド ライン インターフェイスのディレクトリの中で迷う可能性があり、コマンド 'pwd ' が役に立ちます。
パスワードとは何ですか?
「pwd」は「印刷作業ディレクトリ」を表します。名前が示すように、コマンド 'pwd' は現在の作業ディレクトリ、または単にユーザーが現在いるディレクトリを出力します。現在のディレクトリ名がルート (/) から始まる完全なパスとともに出力されます。このコマンドはシェル コマンドに組み込まれており、bash、Bourne シェル、ksh、zsh などのほとんどのシェルで使用できます。
pwd の基本構文:
pwd [OPTION]
pwd で使用されるオプション
- Options
説明
- -L (logical)
シンボリック リンクが含まれている場合でも、環境から PWD を使用する
- -P (physical)
-
すべてのシンボリック リンクを避ける
- –help
このヘルプを表示して終了します
- –version
バージョン情報を出力して終了
「-L」 オプションと「-P」 オプションの両方が使用されている場合は、オプション 「L」 が優先されます。プロンプトでオプションが指定されていない場合、pwd はすべてのシンボリックリンクを回避します。つまり、オプション '-P' が考慮されます。
コマンド pwd の終了ステータス:
- 0
成功
- Non-zero
失敗
この記事は、Linux コマンド「pwd」について、実際の例を示しながら深い洞察を提供することを目的としています。
1. 現在の作業ディレクトリを印刷します。
avi@tecmint:~$ /bin/pwd
/home/avi
2. フォルダーのシンボリック リンクを作成します (ホーム ディレクトリに /var/www/html を htm として作成します)。新しく作成したディレクトリに移動し、作業ディレクトリをシンボリック リンク付きまたはシンボリック リンクなしで出力します。
ホームディレクトリに/var/www/htmlフォルダのシンボリックリンクをhtmとして作成し、そこに移動します。
avi@tecmint:~$ ln -s /var/www/html/ htm
avi@tecmint:~$ cd htm
3. シンボリックリンクが含まれている場合でも、環境から作業ディレクトリを出力します。
avi@tecmint:~$ /bin/pwd -L
/home/avi/htm
4. すべてのシンボリック リンクを解決して、実際の物理的な現在の作業ディレクトリを出力します。
avi@tecmint:~$ /bin/pwd -P
/var/www/html
5. コマンド「pwd 」と「pwd -P 」の出力が同じかどうか、つまり、コマンドでオプションが指定されていないかどうかを確認します。実行時は「pwd」オプション -P を自動的に考慮するかどうかを考慮します。
avi@tecmint:~$ /bin/pwd
/var/www/html
結果: コマンド「pwd」でオプションが指定されていない場合は、上記の例 4 と 5 の出力から明らかです (どちらの結果も同じです)。 b> 」を指定すると、オプション「-P 」が自動的に考慮されます。
6. 「pwd」コマンドのバージョンを印刷します。
avi@tecmint:~$ /bin/pwd --version
pwd (GNU coreutils) 8.23
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Jim Meyering.
注: 「pwd」コマンドはオプションなしで使用されることが多く、引数とともに使用されることはありません。
重要: 上記のコマンドを「pwd<」ではなく「/bin/pwd 」として実行していることに気づいたかもしれません。」。
それで、違いは何ですか? 「pwd 」単独ではシェル組み込み pwd を意味します。シェルには異なるバージョンの pwd が含まれている可能性があります。マニュアルを参照してください。 /bin/pwd を使用しているときは、そのコマンドのバイナリ バージョンを呼び出しています。シェルとバイナリ バージョンのコマンドはどちらも現在の作業ディレクトリを出力しますが、バイナリ バージョンにはより多くのオプションがあります。
7. pwd という名前の実行可能ファイルを含むすべての場所を出力します。
avi@tecmint:~$ type -a pwd
pwd is a shell builtin
pwd is /bin/pwd
8. 「pwd 」コマンドの値を変数 (たとえば、a) に保存し、変数からその値を出力します (シェル スクリプトで重要)視点)。
avi@tecmint:~$ a=$(pwd)
avi@tecmint:~$ echo "Current working directory is : $a"
Current working directory is : /home/avi
あるいは、上記の例では printf を使用することもできます。
9. 現在の作業ディレクトリを任意のディレクトリ (/home など) に変更し、コマンド ライン プロンプトに表示します。コマンド (「ls」と言う) を実行して、すべてが OK であることを確認します。
avi@tecmint:~$ cd /home
avi@tecmint:~$ PS1='$pwd> ' [Notice single quotes in the example]
> ls
10. 複数行のコマンド ライン プロンプトを設定します (以下のように言います)。
/home
123#Hello#!
次に、コマンド (ls など) を実行して、すべてが OK であることを確認します。
avi@tecmint:~$ PS1='
> $PWD
123#Hello#!
'
/home
123#Hello#!
11. 現在の作業ディレクトリと以前の作業ディレクトリを一度に確認してください。
avi@tecmint:~$ echo “$PWD $OLDPWD”
/home /home/avi
12. pwd バイナリ ファイルの絶対パス (/ で始まる) は何ですか。
/bin/pwd
13. pwd ソース ファイルの絶対パス (/ で始まる) は何ですか。
/usr/include/pwd.h
14. pwd マニュアル ページ ファイルの絶対パス (/ から始まる) を出力します。
/usr/share/man/man1/pwd.1.gz
15. ホーム ディレクトリ内の現在のディレクトリ (tecmint など) を分析するシェル スクリプトを作成します。ディレクトリ tecmint の下にいる場合は、「Well!」と出力されます。 「あなたは tecmint ディレクトリにいます」と表示され、「Good Bye」と表示されます。そうでない場合は、ホーム ディレクトリの下にディレクトリ tecmint を作成し、cd を要求します。 b>それに。
まず「tecmint」ディレクトリを作成し、その下に「pwd.sh」という名前で次のシェル スクリプト ファイルを作成します。
avi@tecmint:~$ mkdir tecmint
avi@tecmint:~$ cd tecmint
avi@tecmint:~$ nano pwd.sh
次に、次のスクリプトを pwd.sh ファイルに追加します。
#!/bin/bash
x="$(pwd)"
if [ "$x" == "/home/$USER/tecmint" ]
then
{
echo "Well you are in tecmint directory"
echo "Good Bye"
}
else
{
mkdir /home/$USER/tecmint
echo "Created Directory tecmint you may now cd to it"
}
fi
実行権限を付与して実行してください。
avi@tecmint:~$ chmod 755 pwd.sh
avi@tecmint:~$ ./pwd.sh
Well you are in tecmint directory
Good Bye
結論
pwd は、最も単純でありながら最も人気があり、最も広く使用されているコマンドの 1 つです。 Linux ターミナルを使用するには、pwd を使用した適切なコマンドが基本です。それは今のところすべてです。近いうちにまた別の興味深い記事をお届けする予定です。それまでは引き続き Tecmint に注目してください。