bash에 다음과 같은 별칭이 있으며 옵션없이 alias ls='ls --color=auto'
일반이라고 부르고 싶습니다 ls
. 그렇게하는 유일한 방법은 unalias, 명령을 수행 한 다음 다시 별칭을 사용하는 것입니까? 아니면 멋진 트릭이나 해결 방법이 있습니까?
bash에 다음과 같은 별칭이 있으며 옵션없이 alias ls='ls --color=auto'
일반이라고 부르고 싶습니다 ls
. 그렇게하는 유일한 방법은 unalias, 명령을 수행 한 다음 다시 별칭을 사용하는 것입니까? 아니면 멋진 트릭이나 해결 방법이 있습니까?
답변:
별명을 사용하지 않도록 백 슬래시를 접 두부로 추가 할 수도 있습니다. \ls
편집 : 동일한 작업을 수행하는 다른 방법은 다음과 같습니다.
Mikel에command ls
따라 "command"를 사용하십시오 .
전체 경로를 사용 /bin/ls
에 따라 우서 .
명령을 인용하십시오 : "ls"
또는 'ls'
Mikel의 의견에 따라.
을 사용하여 해당 터미널 세션에 대한 별칭을 임시로 제거 할 수 있습니다 unalias command_name
.
command
하거나 builtin
.
l\s
같은 일을하는 것 같습니다 . 이 동작은 버그입니까 아니면 기능입니까?
그것이 command
명령의 목적입니다.
시험
command ls
이것은 쉘에게 별명과 기능을 우회하도록 지시합니다.
별명은 정의 된 바로 가기입니다. 이 예에서 정의 된 별칭은 문자열 ls
이며이 문자열 은 실행 ls --color=auto
됩니다. 해당 동작을 원하지 않는 경우 ls
절대 경로를 사용하여 이진 을 호출 할 수 있습니다 .
따라서 실행 /bin/ls
하면 정의한 별칭이 아니기 때문에 색상없이 출력됩니다.
별명을 다른 것으로 변경하거나 ls
색상 매개 변수없이 실행되는 새 별명을 추가 할 수도 있습니다 .
/bin
및 /usr/bin
임의적이다.
which
명령에 사용할 수 있습니다 which ls
..
which
(또는 type
) 를 사용하려는 경우 $PATH
; 를 통해 조회를 수행합니다 . 경로를 지정하는 대신 ls
또는 사용하는 \ls
것이 좋습니다.
@uther의 답변을 기반으로하는 또 다른 방법은 $(which ...)
또는 `which ...`
(backticks 사용 ``
) 실행 파일의 경로를 자동으로 찾는 것입니다. 이것은 다음에서 작동합니다 bash
:
$(which ls)
`which ls`
의심 할 여지없이 단순히 명령 앞에 접두사를 붙이는 \
것이 훨씬 짧습니다.
업데이트 : 별칭 명령에서`which`를 사용하는 방법에 따르면 ? , 이것은 전혀 신뢰할 수없는 것 같습니다.
`which ls`
바이너리를 직접 실행하는 것을 의미한다고 생각합니다 .
(which ls)
나를 위해 일하지 않았다 (Ubuntu 12.04 LTS에서). 거기에 도착하기 위해 많은 편집이 필요했다 :)
$
?
개인적으로 명령과 이름이 같은 별칭을 정의하지 않기 때문에 ls
항상 실제 명령을 호출합니다. 내가 좋아하는 옵션의 다양한 조합에 대한 별칭 또는 기능을 가지고 l
, ll
하고 lg
. (이것은 내가 필요 의미 unalias ls
내에서 .bashrc
또는 .cshrc
.)
내가 선호하는 옵션에 대한 OS의 가정 ( ls
명령 자체 디자이너의 가정을 무시)은 내 자신의 취향과 거의 일치하지 않는다는 것을 알았 습니다. 의 모양이 마음에 들지 ls --color=auto
않으며 흑백에서 흰색에서 가독성이 크게 다를 수 있습니다.
YMMV 및 기타 솔루션은 여전히 잘 알고 있습니다.
LS
왜 그런지 잘 모르겠지만 명령을 대문자로 입력하는 것처럼 작동하는 것 같습니다 .
LS - display animations aimed to correct users who accidentally enter LS instead of ls.