Bash Completion이 루트 사용자에서 작동하지 않습니다


10

12.04에 있고 루트 사용자에서 Bash 완료를 활성화하는 방법을 찾으려고합니다.

그렇게하는 방법에 대한 아이디어가 있습니까?



무엇을 입력하려고 할 때 bash 완료가 작동하지 않습니까? 아니면 전혀 작동하지 않습니까?
— harisibrahimkv

루트 사용자, 일반 사용자의 입력을 시도하는 동안 작동하지 않습니다. 예를 들어 다음과 같이 작동합니다. 일반 사용자를 사용하고 명령 전에 추가 "스도"를 사용하는 동안 동일한 내용을 표시하는 동안 ...
— T0M XeOn LuCiFeR

1
@ T0MXeOnLuCiFeR의 출력을 추가 할 수 sudo cat /root/.bashrc있습니까?
— lumbric

4
@ T0MXeOnLuCiFeR "Like This Phrase?"를 쓰지 않겠습니까? 물건을 읽기 어렵게하고 전혀 사용하지 않는 것이 좋습니다.
— Bruno Pereira

답변:


23

이 Q & A에 설명 된대로 .bashrc 파일에서 배시 완료를 사용할 수 있습니다 . 귀하의 경우 사용자의 .bashrc에서는 정확하지만 루트의 .bashrc에서는 정확하지 않은 것 같습니다. 후자의 파일은에 있습니다 /root/.bashrc. 좋아하는 텍스트 편집기로 루트로이 파일을 열고 (예 :을 실행 하여) 마지막 세 줄의 시작 부분에서를 sudo gedit /root/.bashrc제거하십시오 #.

당신은 변경해야 할 줄 98-100을 에서

#if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
#    . /etc/bash_completion
#fi

...에:

if [ -f /etc/bash_completion ] && ! shopt -oq posix; then
    . /etc/bash_completion
fi

그런 다음 터미널을 닫았다가 다시여십시오.


tnx, 여전히 문제가 있습니다. u는 apt를 입력했을 때와 같은 하위 명령을 의미합니다. 이제 "install"을 입력하십시오. u 처음 3 단어를 입력 한 다음 일반 사용자의 탭을 누르십시오. 루트 사용자에서 작동합니다. .... 내가 지금 무엇을해야합니까 ...?
— T0M XeOn LuCiFeR

나는 당신이 나에게 말한 것을했는데 .... 작동하지 않습니다. 다른 아이디어가 있습니까?
— T0M XeOn LuCiFeR

@ T0MXeOnLuCiFeR 이것이 귀하의 문제의 원인이라고 확신합니다. cat내가 제안한대로 파일을 실제로 변경했는지 다시 확인 했습니까 ? 모든 터미널을 닫았다가 다시 열었습니까? 그렇지 않은 경우 . /etc/bash_completion수동으로 실행 해보십시오 ( .! 가 있음에 유의하십시오 ).
— lumbric

예 Man I it it ... Tnx 어쨌든 그것은 나아졌지 만 생각했던 것은 아닙니다 ... 자세한 내용을 확인합니다.
— T0M XeOn LuCiFeR

@ T0MXeOnLuCiFeR . /etc/bash_completion수동으로 실행하려고 했 습니까?
— lumbric

1

"etc"에서 "bash.bash.rc"파일을 편집하여 Ubuntu 12.04 LTS에서 "bash completion"을 성공적으로 활성화했습니다.

방금 32-34 행에서 "#"을 제거하고 "sudo"에 대한 bash 완료가 정상적으로 작동합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.