이 별명을 가진 파일의 ls
명령 별명 ~/.bashrc
:
alias ls='ls --color=auto'
그런 다음 ls
별명을 가진 터미널에서 명령을 실행할 때 ls
( ls --color=auto
)이 실행됩니다. 그러나 내 질문은 추가 인수없이 그리고 별칭 항목 삭제 문제를 해결하지 않고 독창적으로 ls
만 실행할 수 ls
있습니까? 이 항목을 삭제하면 간단하게 실행할 수 있기 때문입니다 ls
.
답변
다음 방법으로 별칭을 무시할 수 있습니다.
-
명령의 전체 경로 이름 :
/bin/ls
-
명령 대체 :
$(which ls)
-
내장 명령 :
command ls
-
큰 따옴표 :
"ls"
-
작은 따옴표 :
'ls'
-
백 슬래시 문자 :
\ls
답변
별칭 확장 일시 중지
모든 별칭의 별칭 확장을 삭제하지 않고 일시적으로 비활성화 할 수도 있습니다.
$ shopt -u expand_aliases
$ command -v ls
/bin/ls
사용하려면 다음을 수행하십시오.
shopt -s expand_aliases
$ command -v ls
alias ls='ls --color=auto'
스크립트에서는 별칭 확장이 기본적으로 비활성화되어 있지만 대화 형 셸에서는 기본적으로 설정되어 있습니다.
답변
\
명령 앞에서 별칭을 비활성화 할 수 있습니다 .
따라서 원래 ls
명령을 실행하려면 다음을 사용하여 실행해야합니다.\ls
예를 들어
-
먼저
ls
명령의 별명을 작성하십시오 .[guru@guru-Aspire-5738 /]$ alias ls='ls -l' [guru@guru-Aspire-5738 /]$ ls total 96 drwxr-xr-x 2 root root 4096 Sep 3 18:31 bin drwxr-xr-x 5 root root 4096 Sep 17 02:51 boot drwxr-xr-x 2 root root 4096 Sep 3 22:17 cdrom drwxr-xr-x 17 root root 4520 Sep 17 21:11 dev drwxr-xr-x 153 root root 12288 Sep 17 21:11 etc drwxr-xr-x 3 root root 4096 Sep 3 22:17 home lrwxrwxrwx 1 root root 37 Sep 8 21:31 initrd.img -> /boot/initrd.img-3.2.0-68-generic-pae lrwxrwxrwx 1 root root 36 Sep 3 22:18 initrd.img.old -> boot/initrd.img-3.2.0-
(그리고 더 많은…)
-
별칭을 재정의하는 원본을
ls
사용한 출력입니다\
.[guru@guru-Aspire-5738 /]$ \ls bin etc lib opt sbin tmp vmlinuz.old boot home lost+found proc selinux usr cdrom initrd.img media root srv var dev initrd.img.old mnt run sys vmlinuz [guru@guru-Aspire-5738 /]$
답변
command
별칭 명령 앞에 추가 할 수 있습니다 ( 예 :
command ls
또는 결합하여 원래 실행 파일을 실행하십시오. which
which ls
“/ bin / ls”를 반환하므로
`어떻게`
직접 실행할 수 있습니다.
답변
/bin/ls
대신 원래 위치에서 명령을 실행할 수도 있습니다ls