저는 CentOS 7.9(Gnome Terminal 3.28.2) csh
(예, 알고 있지만 작업 요구 사항)를 기본 셸로 사용하고 있습니다. 내 문제는 gnome 터미널에서 새 탭을 열 때마다 ~/
이전 경로의 경로를 유지하는 대신 새 탭이 으로 리디렉션된다는 것입니다. 내가 현재 에 있다고 가정하면 새 탭도 back 이 아닌 /home/myself/project1/src/
에 있기를 바랍니다 ./home/myself/project1/src/
/home/myself
사용자가 기본적으로 새 탭을 사용하는 매우 오래된 CentOS 6.10 시스템(Gnome Terminal 2.31.3)에서는 csh
원하는 대로 이전 경로를 보존합니다.
동시에 bash
아무런 문제도 나타나지 않았습니다. 6.10이든 7.9이든 bash
기본 셸로 사용되는 사용자는 새 탭을 열 때 항상 이전 경로를 유지합니다.
내 문제는 모두 쉘과 관련된 것 같습니다그리고그놈 터미널. 실망스럽게도 /etc/csh.cshrc
파일은 CentOS 6.10 및 7.9 시스템에서 동일하게 보이며 Gnome Terminal의 기본 설정에서 토글을 찾을 수 없습니다.
제목으로 돌아가서, csh
돌아가는 대신 그놈 터미널의 이전 탭 경로에서 새 탭을 열려면 어떻게 해야 합니까 ~/
? 매우 감사합니다!
답변1
매개변수가 현재 작업 디렉토리의 URI인 URI 인코딩 형식의 OSC 7 이스케이프 시퀀스를 발행해야 합니다. 이는 터미널 에뮬레이터에 작업 디렉터리가 무엇인지 알려주므로 동일한 디렉터리에서 새 탭/창을 시작할 수 있습니다.
URI 인코딩을 수행하는 도우미 바이너리 사용을 포함하여 이를 수행하는 /etc/profile.d/vte.csh
방법을 배우고 싶을 수도 있습니다 . 정확한 경로 이름은 시스템마다 약간 다를 수 있습니다./etc/profile.d/vte-2.91.sh
/usr/libexec/vte-urlencode-cwd
/etc/profile.d/vte.csh
쉘을 확인하는 것 같습니다 tcsh
. 일반 old 와 작동하지 않는 것을 사용하는지 또는 적절한 위치(예: 프롬프트가 인쇄될 때 또는 디렉토리가 변경될 때) csh
에 연결하는 방법을 모르겠습니다 . csh
아니면 그것도 작동 하고 수표를 csh
삭제했을 수도 있습니다. tcsh
나는 그것에 대해 익숙하지 않거나 csh
전혀 tcsh
모르기 때문에 이 부분은 연습으로 남겨 둡니다.