קוד: |
$ cd ~/foo |
קוד: |
$ rm -rdf ~/foo $ mkdir ~/foo $ touch ~/foo/bar |
קוד: |
$ ls |
קוד: |
cd . |
קוד: |
cd $PWD |
SF : |
אני מניח שמה שקורה זה שהטרמינל "יודע" איפה הוא לפי inode או איזה מזהה קאנוני של התיקייה, ואז למרות ששם הנתיב שבו הוא כביכול נמצא קיים, המקום הפיזי שבו הוא חושב שהוא כבר לא.
השאלה היא קודם כל - האם ההסבר הזה נכון, או מה ההסבר המדויק? והשאלה השניה היא - האם יש דרך "לרענן" מלבד לעשות cd .. ולהכנס מחדש? תודה. |
קוד: |
cd . |
קוד: |
$echo $$ 19022 $ mkdir /tmp/test_dir $ cd /tmp/test_dir [test_dir] $ ls -lia . total 4 1774493 drwxr-xr-x 2 tzafrir tzafrir 6 Sep 3 18:28 . 134296306 drwxrwxrwt 24 root root 4096 Sep 3 18:28 .. |
קוד: |
$ ls -lia /proc/19022/cwd/ total 4 1774493 drwxr-xr-x 2 tzafrirc tzafrirc 6 Sep 3 18:28 . 134296306 drwxrwxrwt 24 root root 4096 Sep 3 18:29 .. $ rmdir /tmp/test_dir $ ls -lia /proc/19022/cwd/ total 0 $ ls -l /proc/19022/cwd lrwxrwxrwx 1 tzafrir tzafrir 0 Aug 26 06:24 /proc/19022/cwd -> '/tmp/test_dir (deleted)' $ mkdir /tmp/test_dir $ ls -lia /proc/19022/cwd 7399647 lrwxrwxrwx 1 tzafrir tzafrir 0 Aug 26 06:24 /proc/19022/cwd -> '/tmp/test_dir (deleted)' |