明らかに私はpwd
andについて知っていますが、readlink
調べるコマンドはありますか?本物現在のディレクトリへの絶対パス(リンクやドットの確認など)?
答え1
pwd -P
(すべてのPOSIXシェルで)探しているコマンド。
-P
ある物理(大論理的(-L
、デフォルト)、これはpwd
主に内容をダンプします(または$PWD
に提供された引数に従ってシェルによって保持されます)。cd
pushd
$ ln -s . /tmp/here
$ cd /tmp/here/here
$ cd ../here/here
$ pwd
/tmp/here/here/here
$ pwd -P
/tmp
答え2
使用
$ env pwd
または
$ /bin/pwd
POSIXLY_CORRECT変数が設定されていない場合は-P
。
詳細:
シェルは基本pwd
的にシェルの$PWD
。論理的パス(デフォルト-L
)。
()を使用して組み込み関数を呼び出す-P
場合、または外部関数を使用する場合/bin/pwd
:
$ ln -s . /tmp/here; cd /tmp/here/here/here
$ pwd
/tmp/here/here/here
$ pwd -P
/tmp
$ /bin/pwd
/tmp
これは、このオプションが外部でデフォルトに/bin/pwd
設定されているためです-P
。
からinfo pwd
:
この実装では、
-P' as the default unless the
POSIXLY_CORRECT 'を使用して環境変数を設定します。
答え3
Pythonを使用することもできます。
python -c "import os; print(os.path.realpath('.'))"