터미널 명령을 실행하면 터미널 자체에 출력이 즉시 표시되는 경우가 많으므로 사용자가 즉시 열람할 수 있습니다. 그럼에도 불구하고 향후 분석 또는 추가 도구와의 통합을 위해 출력을 보존해야 하는 경우가 있을 수 있습니다.
다른 운영 체제에서 명령의 출력을 텍스트 파일로 리디렉션하려면 다음 단계를 따르세요: **Windows:** 1. 명령 프롬프트 또는 PowerShell을 엽니다. 2. 명령을 입력한 후 `> 파일명.txt`를 입력합니다. 예를 들어, “mydir”이라는 새 디렉터리를 만들려면 `mkdir mydir > dir.txt`(따옴표 없이)를 입력합니다. 그러면 출력이 “dir.txt”라는 파일에 저장됩니다. 3. Enter 키를 눌러 명령을 실행합니다. 파일의 내용도 화면에 표시됩니다. 화면에 표시하지 않으려면 명령 끝에 “>”를 입력하는 대신 메모장이나 워드패드와 같은 텍스트 편집기를 사용하세요. 예를 들어
명령줄 출력을 파일로 리디렉션
“>>” 및 “>” 없이 동일한 명령의 출력을 저장하려는 경우입니다. 이러한 차이점을 잘못 이해하면 실수로 데이터가 삭제될 수 있습니다.
셸 명령에서 보다 큰 기호(“>”)는 새 파일을 만들거나 파일이 이미 있는 경우 그 내용을 지정된 데이터로 바꾸기 위해 사용됩니다. 이 작업은 “>” 문자로 표시되며 이전 내용을 새로 작성된 정보로 완전히 대체하는 파괴적인 작업으로 생각할 수 있습니다. 반면에 기호보다 두 배 큰 기호(“>>”)는 파일 작업 시 보다 미묘한 접근 방식을 허용합니다. 이 연산자를 사용하면 파일이 아직 존재하지 않는 경우에만 새 파일이 생성됩니다. 반대로 기존 파일은 완전히 대체되지 않고 그 내용이 끝에 추가됩니다.
명령의 결과를 파일로 지정하려면 먼저 원하는 명령을 입력한 다음 “>” 또는 “>>” 연산자를 입력한 다음 출력을 지정할 파일 경로를 지정해야 합니다. 예를 들어, 폴더의 내용을 다음과 같이 표시하는 “ls” 명령으로 생성된 출력을 저장한다고 가정해 보겠습니다:
ls > /path/to/file
명령을 조용히 실행하고 그 결과를 지정된 파일에 저장하려면 원하는 파일의 전체 경로를 `/path/to/file`로 제공합니다. 이 지시어를 사용하면 사용자의 눈에 보이는 상호작용이나 피드백 없이 명령이 실행됩니다.
터미널 환경 내에서 지정된 파일의 내용을 표시하기 위해 “cat” 명령을 사용할 수 있습니다. 이때 “/path/to/file”은 내용을 보려는 특정 파일로 연결되는 전체 경로로 대체해야 한다는 점에 유의해야 합니다.
cat /path/to/file
지정된 명령을 실행하면 지정된 파일에 생성된 결과가 나타나는 것을 확인할 수 있습니다:
보다 큰 기호(`>`)는 명령 또는 일련의 명령에서 얻은 새 데이터로 기존 파일의 내용을 덮어쓰는 데 사용됩니다. 반면에 여러 명령에서 생성된 결과를 이전 출력을 지우지 않고 단일 파일에 누적하려면 이중보다 큰 연산자(즉, `>>`)를 사용할 수 있습니다. 이 연산자는 현재 내용을 완전히 대체하지 않고 파일 끝에 새 정보를 추가합니다.
연결 연산자 “`를 사용하고 운영 체제에 적합한 형식으로 파일 경로를 지정하여 “uname -a` 또는 “ver` 명령의 출력을 방금 생성한 파일에 추가합니다.
uname -a >> /path/to/file
명령 출력을 파일의 특정 위치에 계속 추가하려면 필요한 명령을 실행하고 그 결과가 매번 파일 끝에 추가되도록 하여 이 과정을 여러 번 반복합니다. 원하는 결과를 얻거나 더 이상 수정이 필요하지 않을 때까지 이 작업을 수행할 수 있습니다.
출력을 화면에 인쇄하고 파일로 리디렉션
보다 큰(`>`) 및 두 배 큰(“> >“) 연산자를 사용하면 명령의 출력이 화면에 표시되지 않습니다. 대신, 이러한 연산자는 출력을 화면에 표시하지 않고 파일로 전달합니다. 출력을 파일에 저장하고 동시에 화면에 표시하려면 `tee` 명령을 사용할 수 있습니다.
‘tee’ 명령의 기능을 활용하려면 파이프 기호와 세로 막대인 |를 사용하여 다른 명령에서 생성된 출력을 ‘tee’ 명령으로 리디렉션해야 합니다. 이 프로세스의 실제 예는 “ls” 명령으로 생성된 결과를 파이프라인을 통해 “tee” 명령으로 처리할 수 있도록 전송하는 경우입니다.
ls | tee /path/to/output.txt
“tee” 명령을 사용하면 디스플레이 출력을 터미널로 리디렉션할 수 있을 뿐만 아니라 파일 출력도 지정된 파일로 리디렉션할 수 있습니다. 파일이 아직 존재하지 않는 경우, “>” 연산자의 기능과 마찬가지로 해당 파일의 기존 콘텐츠를 새로 생성된 출력으로 덮어씁니다.
“티” 명령을 사용하여 지정된 파일에 정보를 추가하는 동시에 화면에 정보를 표시하려면 파일 경로 앞에 “-a” 플래그를 포함해야 합니다. 이렇게 하면 콘텐츠가 표시되는 동시에 지정된 파일에 저장됩니다.
uname -a | tee -a /path/to/output.txt
화면에서 명령 출력의 표시를 관찰할 수 있으며, “cat” 명령의 사용법을 활용하여 “tee”가 파일 내에 추가로 포함되었는지 확인할 수 있습니다.
명령줄 활용하기 €™의 힘
표준 출력을 파일로 지정하는 것 외에도 다양한 대체 방법이 존재합니다. 명령줄의 다양한 기능을 통해 시스템 활동 모니터링, 여러 소스의 정보 통합 및 기타 다양한 기능을 수행할 수 있습니다.
터미널은 단순히 출력을 표시하는 것 외에도 활용할 수 있는 다양한 기능을 제공합니다. 그러나 이러한 명령은 본질적으로 복잡할 수 있으므로 마스터하는 데 약간의 노력이 필요할 수 있습니다. 그럼에도 불구하고 터미널 명령을 효과적으로 사용하면 그래픽 사용자 인터페이스에 비해 유연성, 모듈성 및 속도가 뛰어난 효율적인 작업 수행 수단을 제공합니다.