파일 이름, 날짜 및 크기 만 표시하도록 ls 출력을 제한하는 방법은 무엇입니까?


25

ls리눅스에서 파일 이름 날짜와 크기 만 목록으로 표시 하려면 어떻게 해야합니까? 소유자, 권한과 같은 다른 정보를 볼 필요가 없습니다.


우리가 말하는 리눅스는 무엇입니까?
tolitius

아파치 서버 ..

답변:


26

ls -l | awk '{print $5, $6, $7, $9}'

바이트, 월, 날짜 및 파일 이름으로 파일 크기가 인쇄됩니다.

jin@encrypt /tmp/foo % ls -l
total 0
drwxr-xr-x  2 jin  wheel  68 Oct  4 12:43 bar
drwxr-xr-x  2 jin  wheel  68 Oct  4 12:43 baz
drwxr-xr-x  2 jin  wheel  68 Oct  4 12:43 quux

jin@encrypt /tmp/foo % ls -l | awk '{print $5, $6, $7, $9}'
68 Oct 4 bar
68 Oct 4 baz
68 Oct 4 quux

@Sosukudo 그래, 나도 확실하지 않다. 그러나 사람들은 나쁜 질문을 피하는 것이 좋지만 그들이 유용한 경우에는 대답을하지 않는 것에 동의하는 것 같습니다. meta.stackexchange.com/questions/98197/…
Jin

@Sosukodo : 지금 공짜 부담없이 느끼십시오 :)
sehe

6
공백이 여러 개인 파일 이름은 지원되지 않음
meso_2600

12

기술적으로는 불가능 ls하지만 스위치를 사용 find하여 동일한 작업을 수행 할 수 있습니다 -printf.

find -maxdepth 1 -printf '%t %s %p\n'

1
당신은 제 제안입니다. 저는 사람들이 더 많은 분야에 관심이 있다면 RTFM을 추천합니다. 예를 들어, 디렉토리가 아닌 모든 파일에 대한 권한을 보여주십시오. find usr/lib/ -not -type d -printf '%M %p\n output : -rw-r--r-- usr/lib/x86_64-linux-gnu/apr-util-1/apr_crypto_openssl-1.so... 한 사람에게 물고기와 그 모든 것을 가르쳐 주십시오
Craig

질문은 리눅스에 관한 것이기 때문에 불합리한 대답은 아니지만 기록을 위해서는 GNU 찾기가 필요합니다.
Dan Pritts

5

당신은 항상 할 수 있습니다 :

$ ls -l
total 0
-rw-r--r--  1 user  staff  0 Oct  6 23:29 file1
-rw-r--r--  1 user  staff  0 Oct  6 23:29 file2
-rw-r--r--  1 user  staff  0 Oct  6 23:30 file3
-rw-r--r--  1 user  staff  0 Oct  6 23:30 file4
-rw-r--r--  1 user  staff  0 Oct  6 23:30 file5
-rw-r--r--  1 user  staff  0 Oct  6 23:30 file6
-rw-r--r--  1 user  staff  0 Oct  6 23:30 file7

cut 그것은 :

$ ls -l | cut -f 8-13 -d ' '

0 Oct  6 23:29 file1
0 Oct  6 23:29 file2
0 Oct  6 23:30 file3
0 Oct  6 23:30 file4
0 Oct  6 23:30 file5
0 Oct  6 23:30 file6
0 Oct  6 23:30 file7

$ 

4
작동하지
않음

ls -l공백은 여백 을 사용하는 연속 구분 기호를 축소하지 않습니다 . 열의 길이가 균일하지 않은 경우 (열 5, 파일 크기가 종종 없음) 잘라내 기는 열을 올바르게 선택하지 않습니다. 연속 공백을 축소하면 도움이됩니다 (파일 이름에서 공백을 조심하십시오). ls -l | tr -s ' ' | cut -f 8-13 -d ' '
Dave

4

다른 ls방법 :

> stat --printf='%y\t%12s\t%-16n|\n' tmp.*
2017-06-15 10:42:07.252853000 +0200         10485760    tmp.1           |
2017-06-15 10:41:25.659570000 +0200              666    tmp.TKPzm3BfRw  |

설명 : %y= 사람이 읽을 수있는 수정 날짜; %s= 바이트 단위 크기 ( %12s오른쪽 정렬, 길이 12); %n= 파일 이름 ( %-16n왼쪽 정렬, 길이 16); \t= 탭, \n= 줄 바꿈. |= 파일 이름의 끝을 보여주기 위해 리터럴 파이프 문자.

마찬가지로 ls, stat표시 할 파일을 선택 할 옵션이 없습니다. ( find ... -print0 | xargs -r0 stat ...예를 들어 위와 같이 쉘 globbing 또는 일부로 수행 할 수 있습니다 .)


질문은 리눅스에 관한 것이 었으므로 대답은 괜찮지 만 관심있는 사람에게는 FreeBSD 통계와 동일합니다. stat -f '%N %Sm %z' filename
Dan Pritts

2

Tolitius에서 약간의 변형

ls -lh | cut -f 6- -d ' '

1
유사 콘텐츠가 무엇인지 설명해 주시겠습니까?
Ivo Flipse

6-x 대신 6-를 사용하여 종료 필드 수를 지정할 필요가 없습니다
zzapper
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.