그래서 2개의 탭이 있는 새 터미널 창을 여는 스크립트가 있는데, 실행하면 해당 탭의 현재 디렉터리가 표시되지 않습니다. 기본 우분투의 bashrc를 사용할 때는 제대로 작동했지만 이를 변경하면 현재 폴더가 사용될 때까지 표시되지 않았고 \w
그 후에는 정상적으로 작동했습니다. 여기서 문제가 무엇입니까?\W
cd
#!/bin/bash
gnome-terminal --tab --working-directory="/mnt/0000000000/Users/Admin/Desktop/folder1/" --tab --working-directory="/mnt/0000000000/Users/Admin/Desktop/folder2/"
exit 0
PS1은 다음과 같습니다
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[00m\]:\[\033[01;34m\]\W\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u:\W\$ '
그리고
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u: \W\a\]$PS1"
;;
*)
;;
esac
변화는 문제를 해결할 /Desktop/folder1/
수 있습니다 /Desktop/folder1
. 어떤 이유에서든 \W
마지막 슬래시에 민감하고 민감 하지 않지만 두 경우 모두 \w
냄비와 같은 경로가 잘 작동합니다."~/"
답변1
어떤 이유로든
\W
마지막 슬래시에 민감합니다 . [...]
그 이유는 쉘 프로그램의 사용자 매뉴얼에 설명되어 있습니다:
\W
현재 작업 디렉터리의 기본 이름 [...]
쉘에 관한 한 기본 이름은 마지막 슬래시 뒤에 오는 것입니다. 따라서 의 기본 이름 은 마지막 슬래시 뒤의 길이가 0인 문자열 /Desktop/folder1
입니다 .folder1
/Desktop/folder1/
이는 POSIX 기본 이름의 정확한 정의도 아니고 basename
명령이 알려주는 것도 아니지만 Unix 및 Linux 프로그램에서 사용되는 일반적인 근사치입니다.