일반 리눅스 명령어

2024. 1. 25. 07:01리눅스/리눅스 - 사물인터넷

728x90
반응형

파일 조작 명령어

컴퓨터 파일

  • 저장을 목적으로 정보를 컴퓨터 파일로 인코딩하는 특별한 방식
  • 유닉스는 파일을 관리하기 위해 트리 형태의 디렉터리 구조 사용
  • 파일의 구분을 위해 확장자를 사용(유닉스는 확장자 사용하지 않음)

텍스트 파일과 바이너리 파일로 구분

유닉스는 모든 것을 파일로 취급

  • 디렉터리 : 파일들을 담고 있는 하나의 파일로 상위 디렉터리 파일에 등록되어 있음
  • 일반 파일 : 스트림 파일
  • 특수 파일 : 장치 파일, 파이프, 소켓 등

파일 날짜 변경 / 생성 명령어

touch [filename]

# ex
touch file1 file2 file3 file4 file5

 

  • 한번에 여러 개의 빈(크기 0)인 파일 생성 됨.
  • 시스템의 현재 시간에 맞춰 사용한 시간, 변경 시간 적용


파일 복사 명령어

cp [source] [directory]

# ex
cp file1 file2 # fil2로 파일 생성
cp file1 dir1 # 디렉토리로 파일 복사
cp file1 file2 dir1 # 여러 파일을 하나의 디렉토리로 복사


파일 이동 명령어

mv [source]  [directory]

# ex
mv file1 file2 # file1 이름이 file2로 변경
mv file1 dir1  # 디렉터리로 이동
mv file1 file2 dir1 # 여러 파일 디렉터리로 이동
  • -i : 파일이 존재하는 경우 에러를 발생
  • -f : 파일이 존재하는 경우 강제로 덮어 씀
  • -n : 파일이 존재하는 경우 덮어쓰지 않음

파일 삭제 명렁어

rm [file]

# ex
rm file1 # file1 삭제
rm * # 모두 삭제( 현재폴더 기준)
rm -rf dir1 # 강제 삭제
  • -r : 디렉토리 전체를 삭제
  • -f : 강제 삭제
  • -i : 삭제 전 사용자에게 확인

디렉터리 조작 명령어

디렉터리

  • 유닉스, MS 모두 디렉터리로 파일들을 관리
  • macOS 폴더라고 부르기도 함
  • 폴더 또는 카탈로그
  • 컴퓨터의 파일 시스템은 파일 캐비닛으로 표현, 높은 수준의 디렉터리들을 서랍이라고 부르고 낮은 수준의 하위 디렉터리들을 서랍안에 있는 파일 폴더
  • 트리 구조 형성

홈 디렉터리

  • 사용자 개인의 작업 공간
  • 처음 로그인 하면 접속되는 위치
  • 사용자의 계정 정보는 /etc/passwd 파일에 위치
  • root 계정을 제외하고 일반사용자는 /home/사용자명 디렉터리 사용
  • root는 /root라는 홈 디렉터리 사용

현재 디렉터리의 위치 확인

pwd


디렉터리 계층 구조 확인

tree

# 설치 안되어 있는 경우
sudo apt install tree
  • -L [숫자] : 표시되는 디렉터리의 깊이
  • -d : 디렉터리만 표시
  • -F : 파일의 종류를 자세히 표시
  • -P pattern : 정규표현식으로 패턴 지정


디렉터리의 이동

cd [directory]

# 이전에 있던 디렉터리로 이동
cd -
기호 의미
. 현재 디렉터리
.. 부모 디렉터
~ 최근에 있었던 디렉터리

 

절대 경로와 상대 경로

  • 절대 : "/" 루트 디렉터리 부터 시작
  • 상대 : 현재 디렉터리 부터 시작

디렉터리 생성/삭제

mkdir [directory]

# ex
mkdir dir1 @ 현재 위치에 dir1 생성
mkdir dir1 dir2 # 현재 위치에 여러 디렉터리 생성
mkdir -p dir1/dir2 # 현재 위치에 부모 디렉터리가 없으면 생성하고 dir2 자식 디렉터리 생성

rmdir [directory]

# ex
rmdir dir1
rmdir dir1 dir2
rmdir -p dir1/dir2


파일의 링크

파일의 경로를 다른 이름으로 지정하는 방법

  • 파일이나 디렉터리의 링크를 생성해서 하나의 파일에 2개 이상의 이름을 갖도록 해주는 개념
  • 매우 긴 파일명(경로)를 짧은 이름로 접근할 수 있도록 해줌
  • 동일한 파일을 여러 개의 이름(경로)로 접근 

링크 방법

  • 심볼릭 링크 - 윈도우 '바로 가기'와 비슷한 개념
  • 하드 링크 - 실제로 파일을 링크하는 개념

출처 : https://mrrootable.tistory.com/37

구분 심볼릭 링크 하드 링크
링크대상 파일 또는 디렉터리 파일
  존재하지 않는 파일 링크 작성 가능 존재하는 파일에만 링크 가능
파일 시스템 다른 파일 시스템 간에도 링크 가능 같은 파일 시스템 내에서만 가능
처리 연결된 파일이 어떤 파일인지 알기 쉬움 연결되어 잇는 파일이 어떤 파일인지 알기 어려움
실행시 연결 커널에 의해 처리  

 

링크를 하는 이유

  • 호환성 유지
  • 인터페이스 역할
  • 짧은 경로 제공

파일 시스템

  • 부트 블록 : 커널을 부팅 시키기 위한 프로그램이 저장
  • 슈퍼 블록 : 파일 시스템을 기술하는 정보를 저장
  • 아이도느 블록 : 파일, 디렉터리에 대한 모든 정보를 가지고 있는 구조체
  • 데이터 블록 : 실제 데이터가 파일의 형태로 저장되는 곳

wc, file 명령어

반응형