리다이렉션![]() 리다이렉션(redirection)은 컴퓨팅에서 표준 스트림을 사용자 지정 위치로 우회할 수 있는 다양한 유닉스 셸을 포함한 대부분의 명령어 인터프리터에 일반적인 명령이다. 방향 지정[1], 방향 변경[2]으로도 부른다. 유닉스 계열 운영 체제에서 프로그램들은 dup2(2) 시스템 호출이나, 이보다 덜 유연하지만 높은 수준의 stdio 유사물들인 freopen(3)과 popen(3)으로 리다이렉션 기능을 수행한다. 표준 입력, 표준 출력의 리다이렉션리다이렉션은 특정한 문자열들을 명령어 사이에 두어서 추가되는 것이 보통이다. 일반적으로, 이러한 문자열들의 문법은 다음과 같다: 명령어1 > 파일1
위의 줄은 파일의 끝에 출력물을 추가하려면 >> 연산자를 이용한다: 명령어1 >> 파일1
다음을 이용하면 명령어1 < 파일1
명령어1 < 들어오는파일 > 나가는파일
위의 줄은 두 개의 기능을 수행한다: 파이프 처리![]() 특정 프로그램이 명시적인 중간 파일이 없더라도, 다른 프로그램의 출력을 읽게 하여 프로그램을 실행할 수 있다. 명령어1 | 명령어2
위의 줄은 아래의 줄은 두 개의 리다이렉션과 임시 파일을 사용하여 동일한 결과를 얻는다: 명령어1 > 임시파일
명령어2 < 임시파일
rm 임시파일
하지만 여기서 명령어 파이프 처리에 대한 좋은 예로, echo -e "user\npass" | ftp localhost
위 줄에서 \n은 리턴을 의미한다. 이는 입력 도스 환경에서는 format 명령어로 특정 드라이브를 포맷하려면 사용자의 동의를 위해 키보드 입력 Y를 받아야 한다. 다만 다음의 줄을 이용하면 echo y | format c: /q
사용자의 동의를 구하지 않고(컴퓨터 자판의 Y를 누르지 않고도) 셸이 직접 Y를 누르게끔 하여 C 드라이브를 빠른 포맷으로 포맷할 수 있다. 표준 파일 핸들로 나가거나 들어오는 리다이렉션본 셸에서 기원한 유닉스 셸에서 처음 두 가지 동작은 문자열 바로 앞에 숫자(파일 서술자)를 두어 수정할 수 있다. 이것은 어느 스트림이 리다이렉션에 사용되는지에 영향을 준다. 유닉스 표준 입출력 스트림은 다음과 같다:
이를테면: 명령어1 2> 파일1
위의 줄은 각주외부 링크 |
Portal di Ensiklopedia Dunia