겉바속촉
[LINUX] 리눅스_파일 제어하기 본문
지난 번에 이어
리눅스에 대해서
더 공부해보도록 하겠습니다
파일 제어하기
파일 이름 대체 메타 문자 --> WILDCARD
1. * 문자
ls f* : f로 시작하는 것들 다
ls d* : d로 시작하는 것들 다
lf *3 : 3으로 끝나는 것들 다
2. ? 문자
? -> any one char
ls dir? : dir로 시작하고 뒤에 one char
ls z? : z로 시작하고 뒤에 one char
3. [] 문자
ls [a-f]* = a 부터 f 로 시작하는 모든 파일
ls [fp]* = f 나 p 로 시작하는 모든 파일
ls [!fp]* = f 나 p 로 시작하는 것 빼고 모든 파일
ls로 확인
d1 디렉토리 생성
p로 시작하는 모든 파일에 대해 d1으로 복사
ls로 확인해보기
p로 시작하는 모든 디렉토리를 포함해서 통째로 d1으로 카피
그래서 이미 가있는 것들 overwrite 할거냐고 물어봄
다음 보이는 파란색들이 디렉토리
p로 시작하거나 f로 시작하거나 하는 파일들을 d1으로 카피
그런데 계속 물어보니까
물어보는 거 싫다면 맨 앞에 \ 붙여주기
1. File descriptor --> 파일 설명자(fd)
파일 설명자 번호 | 파일 설명자 약어 | 정의 |
0 | stdin | 표준 명령 입력 |
1 | stdout | 표준 명령 출력 |
2 | stderr | 표준 명령 오류 |
1, 2 번은 모니터와 연결이 되어있다
0 번은 키보드와 연결이 되어있다
그런데 사용자가 바꿔줄 수 있음!! --> redirect로
그리고 1번은 생략 가능
/var 이하에 있는 것들 확인 후
존재하지 않는 /hhs 이하의 것 보여달라고 하면 당연히 오류
그럼 정상적인 결과랑 오류나는 결과를 함께 명령
함께 출력이 되고 있음
이제 redirect 사용해서
> ls.out --> 정상적인 결과는 ls.out으로 하겠다고 하는 것
2> ls.err --> 오류나는 결과는 ls.err로 하겠다고 하는 것
ls 명령 내리면 ls.err ls.out 파일들이 있는 것을 확인 할 수 있음!!
그럼 각각의 내용 확인을 cat으로 해보기
2. Pipe (|)
파이프 뒤에 오는 명령 = Filter
3. 여러 명령 group
enter 대신 쓰는 명령의 구분자 --> 세미콜론 ( ; )
4. multi-lines
명령이 너무 길어서 enter를 눌러도 한 줄로 인식할 수 있게 하는 것 --> 역슬래시 ( \ )
5. Alias
- 구문상 앞뒤로 space를 허용하지 않는다
- 명령 스트링에 space, meta characters, options을 포함 시 quoting(' ')을 해야 함
- 여러 명령을 하나의 alias 이름으로 설정 시 세미콜론 ( ; )으로 구분
- 사용 이유 - 같은 명령이 여러 버전이 있다면 선호하는 명령이 위치를 alias로 설정
자주 사용하는 명령의 단축 사용시 - 같은 명령이 여러 버전 있다면 선호하는 명령 위치를 alias로 설정
- 자주 사용하는 명령의 단축 사용할 때
c 는 clear라고 할게!
h 는 history라고 할게!
라고 alias를 줌!!
ls 명령 수행할 때 기본으로 ls -F 로 동작하라고 할게!
라고 alias 준 것
그럼 내가 c 입력하면
바로 clear 되는 것 확인가능
하지만 다른 세션에서는 먹지 않는다 --> shell이 달라져서!!!
6. 파일 권한
r : 읽기 권한
w : 쓰기 권한
x : 실행 권한
- : 권한 놉
rw-r--r-- ===> 분해시켜보면 필드는 소유자 - 그룹 - 기타 사용자(제3자) 에 대한 권한이 각각 있는 것
소유자 | 파일 또는 디렉토리 소유자의 사용권한 |
그룹 | 파일 또는 디렉토리를 소유한 그룹 구성원의 사용권한 |
기타 사용자 | 소유자와 그룹 구성원을 제외한 모든 사용자의 사용 권한 |
사용권한 | 문자 | 파일 액세스 | 디렉토리 액세스 |
읽기 | r | 파일 내용 표시, 복사 가능 | ls 사용해서 디렉토리 나열 |
쓰기 | w | 파일 내용 수정 가능 | 디렉토리에 파일 추가, 삭제 |
실행 | x | 실행 파일 실행 가능 | cd 명령으로 디렉토리에 액세스 |
예시를 다음과 같이 들 수 있습니다
-rwxrwxrwx 1 root root 0 날짜/시간 파일명 |
-는 일반파일
d는 디렉토리
l은 링크
9자리는 파일에 대한 허가권 (permission) -> 파일 소유자/그룹/제3자 에 대한 허가권
1 링크된 숫자
root
root그룹
0 파일크기
날짜/시간
파일명
7. 파일 권한 바꾸기 --> chmod 사용
chmod permisson_mode 파일명
permission_mode : octal_mode , symbolic_umode 2가지!!
(1) octal_mode : 8진수 모드
사용권한을 3bit씩 쪼개서 각각 생각해주기
rwx 순으로 생각하기
- rw-r--r-- ==> 110 100 100 ==> 1 * 2^2 + 1 * 2^1 + 0 * 2^0 : 4 + 2 + 0 = 6 ====> 그래서 644
1 * 2^2 + 0 * 2^1 + 0 * 2^0 : 4 + 0 + 0 = 4
1 * 2^2 + 0 * 2^1 + 0 * 2^0 : 4 + 0 + 0 = 4
(2) symbolic_mode
who op permissions
- who : u = Owner
g = Group
o = Other
a = All - op : +, - , =
- permissions : r = Read
w = Write
x = Execute - rwxr-x--x ==> g-w, o-rw
chmod 775를 줘서 other 쪽에 write 권한 뺌
그래서 rm이 안된다
chmod o - x 로 other 쪽에 execute 권한 뺌
그래서 cd가 안된다
원래대로 해주기
'IT 일기 (상반기) > LINUX' 카테고리의 다른 글
[ubuntu] 과거에서 날아온 ubuntu (0) | 2022.10.14 |
---|---|
[LINUX] 리눅스_VI편집기 (2) | 2020.12.29 |
[LINUX] 리눅스_Shell 이해하기 (0) | 2020.12.29 |
[LINUX] 리눅스_Manual 사용법, File 및 디렉토리 명령 (0) | 2020.12.29 |
[LINUX] 리눅스_사용자 정보 보기, 명령어 사용법 (0) | 2020.12.29 |