사용자 정의 LS 별칭에 색상을 추가합니다
문제
옥텟 형식으로 사용 권한을 표시하는 별명을 만들었습니다.
alias lso="ls -l | awk '
{
k=0;
for (i=0;i<=8;i++)
k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));
if (k)
printf("%0o ",k);
print
}'
.
i 또한이 코드를 추가하여 LS를 컬러 형식으로 표시합니다.
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
.
제가 궁금해하고 있는게 컬러 형식으로 별칭을 표시하는 방법은 무엇입니까? 또한 누구든지 별칭의 구문을 설명 할 수 있다면 (파이프 후)?나는 그 텍스트를 복사하고 그것과 같은 명령을 합성 할 수있는 방법을 배우려고합니다.
해결책
OSX와 함께 제공된 기본 ls
는 BSD에서 제공되며 원하는 것을 할 수 있습니다.
"Nofollow"> CoreUtils ls (MacPort와 함께 설치됨) gls
를 사용하여 색상을 얻을 수 있습니다.
ls -l --color=always | awk '
{
k=0;
for (i=0;i<=8;i++)
k+=((substr($1,i+2,1)~/[rwx]/)*2^(8-i));
if (k)
printf("%0o ",k);
print
}'
.
awk 부분 정보 :
-
--color=always
파일 사용 권한을 9 자로 출력합니다.그래서 루프가 있습니다. - char 중 하나 (증가 인덱스, 1 char 길이 하위 문자열) 각 단계에서 반환합니다.
-
ls
는 char를 char를 변환합니다.substr
또는~/[rwx]
또는r
- 작동은 소수점 를 가져 오는 작업을 수행합니다.
-
w
전에 계산 된 10 진수의 10 진 값의 8 진한 결과를 인쇄합니다.
제휴하지 않습니다 apple.stackexchange