ls -hal에서 하나의 열을 생략합니다.

ls -hal에서 하나의 열을 생략합니다.

group의 출력에서 ​​열을 어떻게 생략합니까 ls -hal?

나는 사용 중이었고 ls -hal|cut -f4 --complement -d ' '대부분의 경우 작동하지만 실행하면 / 출력이 뒤섞여 있습니다.

drwxr-xr-x  25 root 4.0K Dec 21 06:08 .
drwxr-xr-x  25 root 4.0K Dec 21 06:08 ..
drwxr-xr-x   root root 4.0K Jan 12 06:17 bin
drwxr-xr-x   root root 4.0K Jan 16 10:36 boot
drwxrwxr-x   root root 4.0K May  1  2018 cdrom
-rw-------   root root  56M May  1  2018 core
drwxr-xr-x  20 root 4.7K Jan  6 17:54 dev
drwxr-xr-x   root root 4.0K Oct  9 15:14 .dotnet
drwxr-xr-x 154 root  12K Jan 16 10:36 etc
drwxr-xr-x   root root 4.0K Nov 24 19:39 home

(왜 이런 일이 발생하는지 알 수 없습니다. ls -hal혼자서는 알 수 없습니다.

drwxr-xr-x  25 root root 4.0K Dec 21 06:08 .
drwxr-xr-x  25 root root 4.0K Dec 21 06:08 ..
drwxr-xr-x   2 root root 4.0K Jan 12 06:17 bin
drwxr-xr-x   3 root root 4.0K Jan 16 10:36 boot
drwxrwxr-x   2 root root 4.0K May  1  2018 cdrom
-rw-------   1 root root  56M May  1  2018 core
drwxr-xr-x  20 root root 4.7K Jan  6 17:54 dev
drwxr-xr-x 154 root root  12K Jan 16 10:36 etc

)

나도 시도했지만 awk '{print $1,$2,$3,$5,$6,$7,$8,$9}'항상 정렬이 엉망이 되었습니다.

drwxr-xr-x 25 root 4.0K Dec 21 06:08 .
drwxr-xr-x 25 root 4.0K Dec 21 06:08 ..
drwxr-xr-x 2 root 4.0K Jan 12 06:17 bin
drwxr-xr-x 3 root 4.0K Jan 16 10:36 boot
drwxrwxr-x 2 root 4.0K May 1 2018 cdrom
-rw------- 1 root 56M May 1 2018 core
drwxr-xr-x 20 root 4.7K Jan 6 17:54 dev

답변1

ls그룹 열을 숨기는 특정 옵션이 있습니다 . 에서ls(1):

-G,--no-group

긴 목록에서는 그룹 이름을 인쇄하지 마세요

-o

과 비슷 -l하지만 그룹 정보를 나열하지 않습니다.

ls -hao따라서 , 또는 중 하나를 사용할 수 있습니다 ls -halG.

답변2

귀하의 경우 문제는 결과에 여러 개의 단일 공백이 있다는 것입니다. ls -alh /. 이는 필드 4가 다른 필드임을 의미합니다.

당신이 할 수 있는 일은 공간을 하나로 모으는 것입니다:

ls -alh / | sed 's/\s\s*/ /g' | cut -f4 -d' ' --complement

그러나 파일 이름에서 잠재적인 이중 공백도 제거된다는 점에 유의하십시오.

이 답변에서 더 많은 것을 배울 수도 있습니다여기:

명령 옵션을 확인하라는 친절한 알림입니다. 이 경우처럼 JigglyNaga가 제공하는 명령으로 간단하게 결과를 얻을 수 있습니다.

관련 정보