Linux에서 디렉토리 탭 완성이 ~로 시작하는 경로에 \를 추가하는 이유는 무엇입니까?


3

내 직업 인 과학 리눅스 6.2에서는 다음과 같은 디렉토리에 타이핑을 시작하고 탭 완성을 사용하여 작업을 마친다.

~/mydir

하지만 탭을 누르면 예 :

\~/mydirectory/

처음에는 슬래시가 추가되었습니다. 왜 이래서 그것을 막을 수 있습니까? CD 등을 사용하면 여분의 슬래시가 작동하지 않기 때문에 고통 스럽습니다. 실제 홈 디렉토리에서 시작해야합니다.

/home/username/

이 PC들.

편집하다

실제로이 문제는 모든 디렉토리에 표시되지 않았습니다. 단 하나의 특정 디렉토리 만 묻습니다. 문제의 원인은 질문에 대한 나의 대답에 나와 있습니다.

답변:


2

Linux는 탭 완성을 적용하지 않습니다. 셸이 않습니다.

상자에 잘못 구성된 완료 시스템이 있거나 잘못 입력했을 수 있습니다 (예 : zsh 완료와 bash 또는 그 반대로).

  1. 다른 쉘 (bash, zsh)을 시작하고 그 쉘에 대해 / etc / profile *을 소싱 해보십시오.
  2. 프로필없이 로그인하십시오. ssh host.com bash --noprofile --norc

이렇게하면 문제가있는 곳을 파악하는 데 도움이됩니다. 문제가 호스트 또는 사용자의 설치 파일 (프로필)에 있고 이것이 셸의 문제가 아니라고 확신합니다.


감사합니다. 적어도이 방법으로는 작동하지 않아야하고 아마도 sysadmin에 대해 문의 할 수있는 설치 문제 일 것입니다. 짐작 하시겠지만 나는 비교적 새로운 리눅스 사용자입니다. 나는 문제가 적어도 나를 알지 못함에 따라 귀하의 회신을 IT 부서에 전달할 것입니다. 그들이 동의하면 나는 이것을 답으로 표시 할 것입니다. 그때까지, 나는 당신에게 upvote를 줄 것이지만,이 사이트에 아직 충분한 담당자가 없습니다.
crobar

진짜 문제는 디렉토리 이름이 있다는 것입니다. ~ 내 홈 디렉토리에. 내 대답은 아래를 참조하십시오.
crobar

2

실수로 디렉토리를 만들었습니다. ~ 내 홈 디렉토리에. 이것이 문제의 근본 원인이었습니다. 이것을 제거하면 해결됩니다.


1

읽기 블로그 게시물 호출 된 유틸리티 설치 배시 완료 기본 탭 완성 코드보다 강력하고 유연성이 뛰어납니다.

그만큼 명령 완료 그런데

또는 다음 명령을 실행할 때 :

cd

매개 변수가 없으면 홈 디렉토리로 이동 한 후 다음을 입력하면됩니다.

mydir

탭을 누르면 자동 완성으로 탭이 표시됩니다.

mydirectory

답장을 보내 주셔서 감사합니다. 이것은 업무용 PC (또는 많은 업무용 PC의 네트워크)이기 때문에 실제로 원하는대로 설치할 수는 없습니다. 해결 방법은 cd의 특정 경우에 적용되지만 항상이 작업을 수행하기 위해 디렉토리를 변경하지 않아도됩니다.
crobar
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.