최근에 파일 이름 앞에 점을 추가하여 백업 파일을 숨기도록 emacs 구성을 변경했습니다. 이로 인해 생각이 들었습니다. Bash의 동작을 변경하여 임의의 glob 목록을 사용하여 어떤 파일을 숨길 수 있는 미리 만들어진 방법이 있습니까? bash 및 ls 매뉴얼 페이지를 빠르게 검색해도 아무 것도 나오지 않았습니다.
답변1
ls
--hide=PATTERN
원하는 대로 표시하는 옵션이 있으며 -a
또는 를 사용하여 표시 하도록 재정의할 수 있습니다 -A
. 이 작업이 자동으로 수행되도록 하려면 별칭을 추가하세요 ~/.bashrc
(또는 가능하다면 이미 별칭이 있는 경우 해당 별칭에 추가하세요).
$ touch {a,b,c}-{1,2,3}
$ ls
a-1 a-2 a-3 b-1 b-2 b-3 c-1 c-2 c-3
$ ls --hide=a*
b-1 b-2 b-3 c-1 c-2 c-3
$ ls --hide=*1
a-2 a-3 b-2 b-3 c-2 c-3
$ ls --hide=a*1
a-2 a-3 b-1 b-2 b-3 c-1 c-2 c-3
$ ls --hide=a*1 -A
a-1 a-2 a-3 b-1 b-2 b-3 c-1 c-2 c-3
및 옵션에 의해 재정의 --ignore=PATTERN
되지 않는 옵션도 있습니다 .-a
-A
답변2
이것은 내 별칭입니다 ls
.
alias ls="ls --color=auto --hide='*~' --hide='#*#'"
이렇게 하면 backup.c~
및 와 같은 파일이 숨겨집니다 #autosave.h#
. (그리고 내 고집에도 불구하고 나는 색깔을 좋아해서 그것도 그렇다.)