Information Security
07-2 리다이렉션(Redirection) 본문
파일 디스크립터 / 파일 기술자(File Discriptor(FD))
-리눅스의 모든 파일을 관리하는 방식
명령어 실행
-실제 프로그램(파일로 존재하는 프로그램)을 실행시키는 작업
-파일을 실행시키기 위해서는 먼저 파일을 열어야 한다.
파일이 실행되면(프로세스) 커널이 프로세스가 동작하는데 필요한 장치나 파일을 번호를 붙여 관리하고,
이러한 번호를 파일 디스크립터 테이블에 저장한다.
-자주 사용하는 장치들은 미리 번호가 예약되어 있어서 아래와 같이 표현된다.
파일 디스크립터 테이블
리다이렉션(Redirection)
-표준 입력과 출력의 방향을 재지정하는 방법
출력 리다이렉션
#[명령어] 1> [파일]
-화면(표준 출력장치)에 출력되는 결과를 파일의 내용으로 사용하는 방법
-표준 출력을 의미하는 FD, 1은 생략 가능
명령어 입력(키보드/ 표준 입력장치/ 0) -> 명령어의 결과(모니터/ 표준 출력장치/ 1/2)
Redirection : 출력(1)의 방향을 파일로 재지정(>)
화면에 결과가 나오지 않고 파일 안으로 들어감
파일 내용 확인
-cat > test2를 입력하면
test2에 저장될 내용을 입력할 수 있다.
-내용을 입력하고 [ctrl + d]를 누르면 저장이 된다.
파일 내용 확인
date 명령어의 결과를 test3에 저장
cal 명령어의 결과를 test3에 저장
-cal의 결과로 덮어쓰기 되어 date의 결과가 없어진다.
※주의 사항 : 파일이 이미 존재하는 경우 덮어쓰기 때문에,
지정한 파일과 동일한 이름을 가진 파일이 있는지 먼저 확인한 후에 사용해야 한다.
Bash 쉘의 덮어쓰기 방지 기능 활성화
-다시 date 명령어의 결과를 test3에 넣기 시도
-덮어쓰기 방지 기능을 활성화하여
이미 존재하는 파일을 덮어쓸 수 없다는 메시지가 출력된다.
-덮어쓰기 방지 기능 비활성화
-다시 덮어쓰기가 가능해진다.
추가 리다이렉션
#[명령어] >> [파일]
-표준 출력장치(1)의 결과를 파일에 추가
명령어의 결과들이 덮어쓰지 않고 하단에 추가되는 형태
입력 리다이렉션
#[명령어] < [파일]
-명령어의 입력(0)으로 파일을 사용
nl /etc/resolv.conf 와 동일한 결과
head -3 /etc/resolv.conf 와 동일한 결과
☆Server-A의 계정 파일에 저장하기
Server-A의 계정들 > system_id에 저장
Windows로 파일 전송
파일 내용 확인
'Linux' 카테고리의 다른 글
08-2 쉘 환경 변수 (0) | 2017.09.19 |
---|---|
08-1 Redirection & Pipe (0) | 2017.09.19 |
07-1 vi(m) editor (0) | 2017.09.16 |
6-3 파일 링크 (0) | 2017.09.16 |
06-2 기본 명령어(grep, watch) (0) | 2017.09.16 |