bash 프롬프트에서 하나, 세 개 이상의 슬래시(/,///,////, ...)는 단일 슬래시로 처리되고 두 개의 슬래시(//)는 그대로 유지됩니다.
12:07 $ cd /
12:07 $ pwd
/
12:07 $ cd //
12:07 $ pwd
//
12:07 $ ls
bin boot cdrom dev etc home initrd.img lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var vmlinuz
12:07 $ cd ///
12:07 $ pwd
/
12:07 $ ls
bin boot cdrom dev etc home initrd.img lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var vmlinuz
일반적인 용의자의 버전:
12:07 $ bash --version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)
12:20 $ dpkg-query -s coreutils | grep Version
Version: 8.21-1ubuntu5
답변1
현재 디렉터리를 표시하기 위해 bash
현재 디렉터리에 대한 실제(최단) 경로와 반드시 일치할 필요는 없는 일부 내부 상태가 유지됩니다. 이렇게 하면 cd
소프트 링크를 통과하는 경우 경로를 보존하는 데 도움이 됩니다.
( cd //
예를 들어 수행할 때 cd //tmp
) 표시된 내부 경로 정리를 트리거하지 않는 것 같지만 pwd
두 개 이상이 /
이를 트리거하는 것 같습니다.