Shift 키를 누른 채 폴더를 마우스 오른쪽 버튼으로 클릭하면 여기에 열린 Linux 셸이 표시됩니다.
그러나 내가 D:
드라이브에 있다면 내가 어느 폴더에 있든 상관없이 항상 /mnt/d
.
그 이유는 무엇입니까?
답변1
시작 스크립트의 무언가가 방해할 가능성이 있지만 문제 해결 과정을 살펴보겠습니다.
먼저 "여기에서 Linux 쉘 열기"를 선택하면 Windows에서 사용하는 명령을 확인해 보겠습니다. 파워셸에서:
(Get-ItemProperty -name "(default)" -LiteralPath Registry::HKEY_CLASSES_ROOT\Directory\shell\WSL\command).'(default)'
결과는 이어야 하며 wsl.exe --cd "%V"
, 나는 그럴 것이라고 추측합니다. 그렇지 않은 경우 레지스트리 편집을 통해 문제를 해결할 수 있습니다.
하지만 PowerShell에서도 해당 명령을 시도해 보겠습니다.
wsl.exe --cd "D:\some directory"
(분명히 일부 디렉토리는 드라이브에 존재하는 디렉토리로 대체됩니다.)
나는 또한 이것이 마우스 오른쪽 버튼을 클릭했을 때와 동일한 결과를 가져올 것이라고 추측하고 있습니다. 이는 원하는 디렉토리가 아닌 D:\에서 끝날 것입니다. 하지만 만약 그렇다면하다그런 다음 마우스 오른쪽 버튼을 클릭한 다음으로 열기 명령과 왜 차이가 있는지 더 자세히 조사해야 합니다.
그럼 이제 우리가 해낼 수 있는지 볼까요?일하다CLI에서. 노력하다:
wsl.exe --cd "D:\some directory" -e bash --noprofile --norc
나는 그것이 당신에게 효과가 있기를 바랍니다. 이는 문제가 귀하의 .profile
또는 .bashrc
(또는 다른 시작 스크립트)에 있음을 나타냅니다.
그렇다면 cd
. 일부 설치 프로그램에 의해 변경되었을 수도 있습니다. 아니면 일부 배포판의 스톡 시작 스크립트에 문제가 있을 수도 있습니다. 어떤 배포판을 사용하고 있는지 언급하지 않았지만 Ubuntu 20.04에서는 제대로 작동합니다.