команда липкого псевдонима [duplicate]

Это может произойти, если текущий каталог переименован или перемещен, пока вы в нем находитесь.

Например:

$ mkdir /tmp/X
$ cd /tmp/X
$ mkdir Y Z
$ cd Y
$ touch a b c d e f
$ mv ../Y ../A
$ mv ../Z ../Y
$ echo $PWD
/tmp/X/Y
$ ls
a  b  c  d  e  f
$ ls $PWD
$ 

Вы можете обнаружить разницу, посмотрев на номер inode каталога:

$ ls -ldi . $PWD
26871815 drwxr-xr-x 2 sweh sweh 4096 Jul 12 17:27 ./
26872035 drwxr-xr-x 2 sweh sweh 4096 Jul 12 17:27 /tmp/X/Y/

Вы также можете обнаружить это, потому что /bin/pwd возвращает другое значение

$ /bin/pwd
/tmp/X/A
$ echo $PWD
/tmp/X/Y

В принципе, $PWD - это просто место, где оболочка думает, что вы находитесь, а не обязательно то, где вы действительно находитесь :-)

398
25.04.2016, 23:01
0 ответов

Теги

Похожие вопросы