The DREAM of SNORLAX

[리눅스 명령어] ls를 통한 하위 목록 출력 본문

IT/Linux 시스템

[리눅스 명령어] ls를 통한 하위 목록 출력

GRACE_MJ 2018. 6. 29. 02:44

[리눅스 명령어] ls를 통한 하위 목록 출력







Windows OS에서는 한 폴더를 더블 클릭하면, 바로 그 폴더의 하위 폴더든, 하위 파일이든 눈으로 확인이 가능하다.


하지만 프롬프트에서는 이 또한 명령어를 입력해줘야만이 확인이 가능하다.


Windows에 익숙한 우리에겐 어찌보면 불편할 수 있지만,


Windows에서는 한 번에 알 수 없는 것을 Linux에서는 명령어 옵션으로 한 번에 할 수 있다.


이를 가능케하는 명령어가 바로 ls 명령어이다.




리눅스는 띄어쓰기도, 대소문자도 매우 민감하다.


정확하게 입력해주지 않으면 바로 오류가 발생한다.


ls 명령어는 대문자 I (아이) + 소문자 s (에스)가 아니라,


바로 ls = 소문자 l (엘) + 소문자 s (에스) 로 이루어진 명령어이다.


이 점을 유의해서 사용하도록 하자.




ls 명령어


list segments의 준말로,


디렉터리의 하위 목록을 표시해주는 명령어이다.





ls 명령어를 입력했을 때의 출력 화면이다.


보다시피 하위 목록의 이름들이 나열되어 있는 것을 볼 수 있다.


만약 색깔로 구분이 되어있지 않다면,


저 하나하나가 디렉터리인지, 파일인지 구분하지 못할 것이고,


언제 작성되었고 권한은 누구에게 있는지 등의 정보를 알 수 없을 것이다.


따라서 우리는 ls 명령어에 옵션을 추가해준다.




ls -l 


-l 옵션long의 준말로,


이 또한 I (대문자 아이)가 아니라, l (소문자 엘)이다.


디렉터리의 내용을 자세히 출력해주는 옵션이다.




이번에는 한 줄에 한 개씩 출력이 되었다.


대표적으로 두 개를 대상으로 이에 대해 알아보도록 하겠다.





 허가권


맨 앞의 문자로 -, d, b, c, l 등이 오곤 하는데 이들이 의미하는 것은 아래와 같다.


- 은 일반 파일 (file; 텍스트 파일, 바이너리 파일 등)

는 디렉터리 (directory)

은 기호 링크 (바로가기)

b 는 블록 (block)

c 는 문자 특수 파일


그 뒤의 문자들은 허가권 포스팅에서 그 의미를 확인할 수 있다.




② 링크 개수


말 그대로 링크 개수를 의미하는 것으로,


첫 번째 파일은 링크 1개, 두 번째 디렉터리는 링크 3개임을 뜻한다.


하지만 많은 작업을 해본 결과, 이 부분을 주로 보게 되지는 않았다.




③ UID


User ID의 준말로, 사용자 고유 식별자이다.


소유권을 가진 사용자를 나타낸다.




④ GID


Group ID의 준말로, 그룹 고유 식별자이다.


소유권을 가진 그룹을 나타낸다.


 + , 즉 UID + GID를 소유권이라고 한다.


그리고  +  + , 즉 허가권 + 소유권을 권한이라고 한다.


소유권에 대한 자세한 설명은 마찬가지로 소유권 포스팅을 보면 알 수 있다.




⑤ 용량




⑥ 생성 날짜 및 시간




⑦ 이름







위의 캡처 화면을 보면 -a 옵션을 사용한 것을 볼 수 있다.


ls -a 를 입력하면 숨겨진 파일, 디렉터리까지 볼 수 있다.


위의 캡처 화면을 보면 이전에는 볼 수 없었던 이름 앞에 . 이 붙은 숨김 파일을 볼 수 있다.




만약 옵션을 한꺼번에 사용하고 싶다면, 그냥 같이 붙여서 사용하면 된다.


예를 들어 -a와 -l 옵션을 함께 사용하면,


-al 혹은 -la 라고 쓸 수 있을 것이고


이렇게 되면 숨겨진 파일, 디렉터리를 자세히 출력하게 된다.






-n 옵션number의 준말로,


ls -n 을 사용하면, 파일이나 디렉터리에 대한 정보 출력 시


소유권 (UID + GID)를 숫자로 출력하는 역할을 한다.


위의 캡처 화면에서 볼 수 있듯이


원래는 root라고 소유권이 문자로 나온 자리에, 이를 숫자가 대체하고 있는 것을 볼 수 있다.


사실상 많이 사용되지 않는 옵션 중 하나이다.






이번에는 -R 옵션이다.


하위 경로와, 그 안에 있는 모든 파일들을 같이 출력해주는 역할로,


꽤 사용되는 옵션 중 하나이다.


캡처 화면을 보면 일단 . : 이라고 출력되고


현재 위치에서의 하위 디렉터리와 파일들의 이름을 출력한 것을 볼 수 있다.


그리고 그 하위 디렉터리들의 하위 내역을 다시 그 밑에 출력해준다.






-F 옵션은 ls 명령어와 함께 사용될 때


형식을 알리는 문자를 각각의 이름 뒤에 추가해서 출력시켜준다.

( [파일명/디렉터리]+[형식을 알리는 문자] )


형식을 알리는 문자로는 여러가지가 있는데


아무것도 없으면 파일


/ 이 붙어있으면 디렉터리


* 이 붙어있으면 실행 파일


혹은 @ 이 존재할 때는 symbolic link file (바로가기)를 의미한다.


화살표는 [사본] → [원본] 순으로 쓰여 있고


만약 바로가기의 원본 파일을 확인하고 싶다면 -l 옵션과 함께 사용하면 될 것이다.





-d 옵션은 ls 명령어와 함께 쓰였을 때


디렉터리의 정보를 출력하는 역할을 한다.


따라서 ls -d [디렉터리명] 형식으로 사용된다.


이 옵션도 꽤 자주 사용되는 옵션 중 하나이다.



ls 명령어 옵션 총정리


ls -l : 디렉터리 내용을 자세히 출력


ls -a : 숨겨진 파일 / 디렉터리 모두 볼 수 있음


ls -n : 소유권 부분을 문자가 아닌 숫자로 출력


ls -R : 하위 경로와, 그 안에 있는 모든 파일들을 같이 출력


ls -F : 이름 출력 형태가 [파일/디렉터리명]+[형식을 알리는 문자]


ls -d [디렉터리명] : 디렉터리의 정보 출력




이번 명령어는 옵션이 정말 다양하게 많이 쓰인다.


ls 명령어는 정말 기본적인 명령어이므로, 옵션을 다양하고 자유롭게 잘 활용할 수 있는 능력이 중요한 명령어이다.


반드시 다양한 경우에서 잘 사용할 수 있게끔 외워두는 것이 좋다.

Comments