[ Linux ] File 관련한 명령어 정리

duck-ach·2023년 2월 17일
0

Linux

목록 보기
4/15
post-thumbnail

File에 관한 명령어

1. ls

현재 경로 폴더나 파일 리스트를 보여준다.

ls 명령어 주요 옵션

ls -a (all)
hidden(숨김) 파일까지 보여준다.

ls -l (long)
세로의 리스트 형태로 상세정보까지 자세히 보여준다.

ls -al (all + long)
파일의 hidden(숨김) 파일과, 상세정보까지 보여준다.

ls -d [파일이름] (directory)
[파일이름] 자체만 출력해준다. (directory 인 경우 /로 끝난다.)

ls -F (filetype)
파일 종류를 함께 표시해준다. (실행파일 : *, 디렉토리 : /, 심볼릭링크 : @)

ls -t (time)
파일을 시간순으로 출력해준다.

ls -S (size)
파일 크기의 내림차순으로 정렬하여 출력해준다.

ls -r (reverse)
순서를 거꾸로 출력
ls -t -r : 시간이 오래된 순으로 정렬
ls -S -r : 사이즈가 작은 순으로 정렬

ls -alhSr
해석 : 모든 파일(a)을 자세하게(l), 파일크기를 보기좋게(h) 파일크기 순서(S)를 역순으로(r) 출력

2. cd

Change Directory, 디렉터리를 이동한다.

(하위폴더인 Hi 폴더로 이동)


상위폴더 : .. (현재폴더는 .)
(상위폴더인 heerastudy 폴더로 이동)

3. pwd

현재 위치한 경로를 알려준다.

4. mkdir [폴더이름]

현재 경로에 [폴더이름]의 이름을 가진 폴더를 생성한다.


(newFolder 라는 폴더가 생성되었다.)

5. rm

remove라는 뜻으로 파일이나 폴더를 삭제한다.

rm [파일명]
[파일명]을 가진 파일을 삭제한다.


(HelloCopy.txt 라는 파일을 삭제)

rm 명령어 주요 옵션

rm -r [폴더이름]
[폴더이름] 을 가진 폴더를 삭제한다.

rm -f
강제로 파일이나 디렉토리를 삭제하고, 대상이 없는 경우 메시지를 출력하지 않는다.

rm -r
Directory(Folder) 내부의 모든 내용을 삭제한다.

rm -d
비어있는 Directory(Folder) 제거

rm -i
매번 삭제할때마다 사용자에게 샂게할 것인지 묻는다.

rm -l
3개 이상의 파일을 삭제하거나 디렉토리 내부가 비어있지 않을때만 삭제할 것인지 묻는다.

rm -v
삭제되는 대상의 정보를 출력한다.

6. ln

ln 명령어는 link를 뜻한다.

  • 한 파일을 다른 파일 이름으로도 사용하고자 할 때 사용하는 명령어
  • 링크된 파일 중 한 파일을 수정하면 다른 파일들도 수정된다.
  • 하드링크와 심볼릭링크가 있다.

하드링크

  • 하나의 파일에 여러개의 이름을 부여함

  • 파일을 없애려면 링크로 생성된 링크 파일을 모두 지워야함

  • ln [원본파일명] [대상파일명]

심볼릭링크

  • 윈도우 운영체제의 바로가기 아이콘이라고 보면됨
  • 링크로 생성된 파일에 내용이 존재하지 않고 각각의 i-node를 가진 또 다른 파일이 어디를 가리키고 있는지 알려주는 역할
  • 원본 파일명이 바뀌면 사용하지 못함
  • ln -s [파일명]

7. cat

파일의 내용을 출력하기 위해 사용한다.
파일을 순서대로 읽고 그 내용을 읽은 순서대로 표준출력에 쓰는 명령이다.
concatenate에서 유래했다.

cat 명령어 주요 옵션

cat -n
모든 라인 앞에 라인 번호 출력 (빈 라인도 번호 출력)

cat -b
비어 있지 않은 라인에만 번호 출력

cat -E
라인의 마지막에 $ 기호 출력 (빈 라인도 $ 기호 출력)

cat -T
탭 문자를 ^로 바꿔서 출력

cat -s
두 번 이상 연속된 빈 라인(empty line) 출력 안함

cat -v
탭(Tab)과 줄바꿈(Lfd)를 제외한 nonprinting 문자를 ^, M-를 사용하여 표시함

cat -e
cat -vE와 결과가 같다. 줄바꿈(Lfd)을 포함한 nonprinting 문자 표시

cat -t
cat -vT와 결과가 같다. 탭(Tab)을 포함한 nonpirinting 문자 표시

cat -A
cat -vET와 결과가 같다. 줄바꿈(Lfd), 탭(Tab)을 포함한 nonprinting 문자 표시

cat *
모든 파일의 내용을 출력한다.

cat *.txt
txt(특정확장자)를 가진 파일의 내용을 출력한다.

8. more

리눅스에서 파일을 열 때, 파일이 너무 길어 화면상에 다 나오지 않거나(콘솔의 라인제한 때문에), 다 나오더라도 스크롤을 써애햐서 불편한 경우가 종종 있다.

  • more 명령어는 긴 파일을 한 페이지씩 보여주는 명령어이다.
  • 여러 파일을 열면 파일명도 함께 보여준다.
  • more [option] filename1, filename2, ...

more 명령어 실행 중 사용되는 명령어

KeyDescription
space bar, z다음 페이지로 넘어간다.
b이전 페이지로 넘어간다.
Enter(엔터)한줄씩 넘어간다.
d반 페이지씩 넘어간다.
f2 페이지씩 넘어간다.
=현재 줄 번호를 보여준다.
:f현재 파일명과 줄 번호를 보여준다.
/STRING현재 파일에서 해당 값(STRING)을 찾아준다. (검색기능)
!다른 명령어를 입력할 수 있는 상태로 전환한다.
v현재 화면에서 vi 편집창으로 전환한다.
h도움말을 보여준다.
q현재 명령을 종료한다.

more 명령어 주요 옵션

more -d
잘못된 명령어를 눌렀을 때 도움말을 띄워준다.

more -f
화면상에 보이는 줄단위가 아닌 개행문자(엔터)기준으로 보여준다.

more -[숫자]
[숫자]줄 만큼씩 출력한다.

more +[숫자]
[숫자]줄 이후부터 출력한다.

more +/STRING
해당 값(STRING)이 있는 화면부터 출력한다.

9. head

리눅스 사용 중 파일의 내용을 확인 하려면 cat, more, head, tail 등이 있다.
특히 파일에 많은 내용이 있어 cat 명령어나 vi로 그 내용을 확인하려고 하면 파일의 용량이 크기 때문에 부담이 될 수 있다.

  • head명령어는 txt로 된 파일의 앞부분을 지정한 만큼 출력하는 명령어이다.
  • 하지만, Binary로 된 파일의 내용도 명령어는 실행이 되지만 알아볼 수 없는 문자로 출력이 되므로 사용하지 않는 것이 좋다.
    -head -[파일명]

10. tail

head와 반대로 파일의 마지막 행을 기준으로 지정한 행까지의 파일 내용 일부를 출력한다.

  • 주로 오류나 파일 로그를 실시간으로 확인할 때 유용하게 사용한다.
  • tail [옵션] [파일]
profile
자몽 허니 블랙티와 아메리카노 사이 그 어딘가

0개의 댓글