잡다한 Shell 기록 (1)

TraceofLight·2023년 7월 17일
0

TIL

목록 보기
3/6
post-thumbnail

파일 생성 관련

  • touch: 파일 생성
  • mkdir: 폴더 생성
  • chmod: 파일 권한 설정
  • chown: 파일 소유자 설정
  • mv: 파일 이동 및 rename

파일 정보 확인

  • -rwxr-xr-x 부분: 파일의 권한을 확인하는 부분
  1. 맨 앞 자리가 File Type을 의미 (-, d, l)

  2. read-write-execute 권한에 대하여 user, group, others에 대해 3자리의 형태로 표기,
    2진수의 형태로 r이 4, w이 2, x가 1의 값을 가지고 있어 rwx의 값은 7로 바꿀 수 있고 -xr은 4로 바꿀 수 있다.

    chmod 744 Slack.lnk

    이러한 형태의 명령어로 권한 설정이 가능하다.

  3. 링크 갯수 (1이 적힌 부분)

  4. 소유자 (빈 부분)과 소유 그룹에 대한 정보 (197609)

  5. 파일 크기

  6. 마지막으로 수정된 시간에 대한 정보

  7. 파일 이름

ssh-keygen

  • Secure Shell 공개키를 통한 Git 인증에 사용하는 케이스 다수
  • Window 및 Linux 패키지에 포함되어 있음
  • key를 생성한 경우 key와 .pub 파일이 생성되는데 .pub 파일의 내용을 서버에 제공하여 열쇠 - 자물쇠의 형태로 사용

shell에서 파일의 용량을 조정하는 법

mkfile -n 10k test.sh
fallocate -l 10k test.sh
truncate -s 10k test.sh

이미 있는 파일이나 파일을 새로 만들 때 해당 명령어를 통해 파일의 Size를 조절할 수 있다.

파일 수정 시점 기록 변경

touch -t 2301011234 timefile.sh

touch의 응용으로 23년 1월 1일 12시 34분에 마지막 수정이 된 것으로 파일의 수정 시점을 바꿀 수 있는 명령어

윈도우의 바로 가기와 같이 특정 폴더에 존재하는 원본 파일을 사용할 수 있도록 하는 링크이며 원본이 삭제된 경우 동작하지 않음

심볼릭 링크와 달리 원본을 복사하고 사본을 생성한다는 차이점이 존재하며, 원본이 삭제될 때 심볼릭 링크는 사용이 불가능하지만, 하드 링크의 경우는 결국 동일한 파일이기 때문에 여전히 사용할 수 있음, 링크 수에 관여하는 링크.

Code

ln [대상 폴더] [만들 링크 파일명] # Hard Link
ln -s [대상 폴더] [만들 링크 파일명] # Symbolic Link

지우는 명령어는 rm으로 파일 지우듯이 해제할 수 있음

Diff & Patch

diff a b > difference.patch

diff 는 두 개의 파일을 라인 단위로 비교하는 명령어이며 patch 는 diff 등을 통해 확인한 비교 내용을 바탕으로 파일을 수정할 수 있는 명령어이다.

patch -p{패치 경로의 depth} [원본] [patch 파일] # 패치 파일 적용
patch -p{패치 경로의 depth} -R [원본] [patch 파일] # 적용된 패치 파일을 되돌림

위와 같은 형태로 기존 파일에서 diff를 통해 판단된 내용을 그대로 적용하고 해제할 수 있다.

profile
24시간은 부족한 게 맞다

2개의 댓글

comment-user-thumbnail
2023년 7월 17일

정말 잘 읽었습니다, 고맙습니다!

답글 달기
comment-user-thumbnail
2023년 7월 18일

잘 읽었습니다. 좋은 정보 감사드립니다.

답글 달기