Linux - 2 (2023.01.12)

최시열·2023년 1월 25일
1

리눅스 명령어 - 2

  • 리눅스와 windows 커맨드 비교
리눅스win cmd
디렉터리목록lsdir
변경cdcd
생성mkdirmkdir
삭제rmdirrmdir
파일복제cpcopy
삭제rmdel
이동mvmove
  • 리눅스 파일은 inode 형식으로 관리가 된다. ls -i로 보면 inode 형식으로 볼 수 있다.
ln: 파일의 링크를 생성한다.
	-s: 심볼릭 링크 파일을 생성한다.
ln [원본] [링크]
<ln은 write 권한이 있어야 지정할  있다.>

touch: 빈 파일을 생성한다.
파일이 없을 때는 빈 파일을 만들어 주지만 파일이 있을 경우에는 파일의 시간을 최신화한다.
-t 옵션을 통해서 시간을 지정해서 바궈줄 수 있다.
touch -t 01(월)11(일)1200(시간) tmp

grep: 내용! 특정한 것을 찾아준다.(지정한 패턴이 포함된 행을 찾음)
grep root /etc/passwd
-n: numbering
ls /|grep bin : ls 중에 bin이 들어간 것을 찾아줌

find: 파일!을 찾아줌
find /etc -name(이름으로) passwd 같은 경우 권한에 따라서 못 찾는 것이 있기 때문에 sudo -i로 들어가서 찾을 수 있음
find /usr/bin -name ls
find /home -user guru

which []: 어디에 있는지 알려줌
whereis []: 사용 되고 있는곳 전부의 경로를 알려줌

find . -name test.org -exec mv {} ./aa/bb \;
현재 디렉토리에서 test.org를 이름으로 찾아서 aa/bb 밑으로 옮기겠다.

문서 편집기 에디터 vi

  • GUI형 편집기 gedit, NANO
  • 터미널에서 사용할 수 있는 편집기
  • 모드형과 비모드형 편집기
    • 모드형: 입력 명령 모드와 명령 모드를 구분
      • 입력 모드: 텍스트를 입력할 수 있는 모드
      • 명령 모드: 텍스트 수정/삭제/복사/붙이기 등 편집 모드
    • 비모드형: 모드 구분이 없음: 한글, 워드 등
      • alt, ctrl, shift 등 특수키를 이용하여 편집 명령 수행
  • vi 사용법
i: 현재 커서 자리에 입력
a: 현재 커서 다음 자리에 입력
o: 커서의 다음 행에 입력
I: 커서가 위치한 행의 첫 칼럼으로 이동하여 입력
A: 맨 위로
O: 현재 커서 위 행에 입력

w: 다음 단어의 처음 글자 /e: 단어의 마지막 글자
b: 현재 단어의 처음 글자로 이동
^,0: 현재 행의 처음
$: 현재 행의 마지막

커서 이동
j: 밑으로
k: 위로
l: 오른쪽
h: 왼쪽

G: 파일의 마지막 행으로
[숫자]G : 지정한 행번호로
:행번호 : 지정한 행번호로

x: 하나씩 삭제
r: 한글자 바꾸기 모드
cw: 한단어 수정
[숫자]cw: 커서 위치부터 숫자 단어만큼 수정
s: 커서 부터 계속 수정
cc: 라인 전체 수정
C: 커서 위치부터 행 끝까지 수정

dw: 단어 삭제
dd: 행 삭제
D: 커서부터 행 끝까지 삭제

u: 명령 취소
U: 해당 행에서 명령 모두 취소
:e!: 마지막으로 저장한 내용 이후의 것을 버리고 새로 작업

yy: 복사
p: 커서 위치의 아래쪽에 붙이기
P: 커서 위치 위에 붙이기

/[찾는내용] : 아래방향으로 내용검색
?[찾는내용] : 위방향으로 검색
n: 다음으로 넘어감
N: 역방향으로 넘어감

마지막으로 한 수행에 대해서 .을 누르면 반복

:s/home/zzz/ : 첫번째 하나만
:%s/home/7777/g : 파일 전체
1,5s/7777/999/ : 첫번째 하나만
1,5s/7777/999/g : 범위 내 전체

r 파일 : 현재로 파일 불러오기
e 파일 : 지정한 파일로 변환
:n : vi 파일1 파일2로 여러개 열었을 때 다음 파일로 넘어감

:set number: 행 번호 부여

접근권한

drwxr-xr-x         1          root      root       4096       Jan  9 14:28         .
d : 디렉토리       링크수 파일 소유자의 로그인 ID(uid)  사이즈 크기  마지막 수정 날짜     . current
- : 파일                          파일이 속한 그룹 이름(gid)                         .. 부모
l : 링크
(소유자의 권한 - 그룹의 권한 - 나머지의 권한)
r: 읽기, w: 쓰기, x: 실행
chmod: 파일이나 디렉터리의 접근 권한을 변경한다.
	-R 하위 디렉터리까지 모두 변경
	
	
기호모드: r, w, x...


u 소유자, g 그룹, o 기타사용자
+ 부여
- 제거

u+w 소유자에게 쓰기 권한 부여
u-x 소유자의 실행 권한 제거
+wx 모든 사용자에게 쓰기 실행 권한 부여(== a+wx)
u=rwx 소유자에게 읽기 쓰기 실행 권한 부여
go+w 그룹과 기타 사용자에게 쓰기 권한 부여

숫자모드: r-4, w-2, x-1.... => 비트연산 3자리(000, 001, 010, 011......)
chmod 100 [파일] => --x------
chmod 700 [파일] => rwx------
chmod 111 [파일] => --x--x--x
chmod 410 [파일] => -w---x---
  • 기본 접근 권한

    • 리눅스 시스템에 설정된 기본 값으로 변경 가능
    • umask: 기본 접근 권한을 출력하거나 변경한다.
      • umask -S : 기존 세팅 보여줌
      • umask 077 로 바꾸고 touch로 파일을 만들면 0: 소유자, 7: 그룹, 7:기타 (reverse) 111 000 000 (이때 실행 파일이 아니면 x자리는 0이 들어 올 수 있다.) ...스위치와 비슷한 개념
      • umask 022: rwxr-xr-x (실행 파일이 아닌 경우 rw-r--r--)
    • setUID: 4***: setUID가 설정된 파일을 실행하면 해당 파일이 실행되는 동안에는 파일을 실행한 사람의 권한으로 실행.
    • setGID: 2*** setGID가 설정된 파일을 실행하면 해당 파일이 실행되는 동안에는 파일 소유 그룹의 권한으로 실행
    • 스티키 비트: 1***
      • 디렉터리에 설정
      • 디렉터리에 스티키 비트가 설정되어 있으면 이 디렉터리에는 누구나 파일 생성 가능
profile
최시열

0개의 댓글