1. 각종 유닉스 기본 명령어
유닉스(Unix) 및 유닉스 계열 시스템에서 기본적인 커맨드 라인 유틸리티입니다.
- cat (concatenate):
- cat 명령어는 하나 이상의 텍스트 파일의 내용을 표준 출력(보통은 화면)으로 출력합니다.
- 주로 파일의 전체 내용을 빠르게 보거나, 여러 파일을 연결하여 하나의 파일로 만들 때 사용됩니다.
- 예시: cat file1.txt (파일의 내용을 출력), cat file1.txt file2.txt > combined.txt (두 파일의 내용을 결합하여 새 파일에 저장).
- more:
- more 명령어는 텍스트 파일의 내용을 페이지 단위로 나누어서 보여줍니다.
- 이를 통해 사용자는 한 번에 한 화면씩 내용을 볼 수 있으며, 스크롤하여 전체 내용을 차례대로 볼 수 있습니다.
- 예시: more longfile.txt (파일의 내용을 페이지 단위로 출력).
- tail:
- tail 명령어는 파일의 끝부분(보통 마지막 몇 줄)의 내용을 표준 출력으로 보여줍니다.
- 로그 파일과 같이 지속적으로 업데이트되는 파일의 최근 변경 사항을 볼 때 유용합니다.
- 예시: tail -n 5 file.txt (파일의 마지막 5줄을 출력).
- tail은 실시간으로 파일의 변화를 추적하는 -f 옵션도 제공합니다, 예를 들어 tail -f log.txt는 log.txt 파일에 새로운 내용이 추가될 때마다 이를 실시간으로 출력합니다.
- echo:
- echo는 주어진 문자열이나 변수의 값을 표준 출력(보통 콘솔이나 터미널)으로 출력하는 유닉스 커맨드 라인 유틸리티입니다.
- 문자열 출력: 사용자가 입력한 문자열을 그대로 화면에 출력합니다. 예를 들어, echo "Hello, World!"는 "Hello, World!"를 터미널에 표시합니다.
- 환경 변수 출력: 쉘 환경 변수의 값을 출력할 때 사용됩니다. 예를 들어, echo $HOME은 사용자의 홈 디렉토리 경로를 출력합니다.
- 옵션: -n 옵션을 사용하면 출력 후 줄바꿈을 하지 않습니다. -e 옵션을 사용하면 특수 문자(예: \n으로 줄바꿈)를 해석하여 출력합니다.
- 파일 작성 및 수정: 리디렉션(> 또는 >>)과 함께 사용하여 파일에 내용을 쓰거나 추가할 수 있습니다. 예를 들어, echo "Some text" > file.txt는 "Some text"를 file.txt에 쓰고, echo "More text" >> file.txt는 file.txt의 끝에 "More text"를 추가합니다.
- 스크립팅에서의 사용: 쉘 스크립트에서 메시지를 출력하거나 디버깅을 위해 변수의 값을 확인하는 데 자주 사용됩니다.
2. -r 옵션
-r 옵션은 유닉스나 리눅스의 몇몇 커맨드에서 사용되는 옵션으로, 주로 "재귀적(recursive)"을 의미합니다. 이 옵션의 사용 목적과 의미는 사용되는 커맨드에 따라 달라질 수 있습니다. 몇 가지 일반적인 예시를 들어보겠습니다:
- cp (파일 복사):
- cp -r source_directory destination_directory 명령은 소스 디렉토리와 그 안에 있는 모든 파일 및 하위 디렉토리를 대상 디렉토리로 복사합니다.
- rm (파일 삭제):
- rm -r directory 명령은 지정된 디렉토리와 그 안의 모든 내용(파일 및 하위 디렉토리)을 삭제합니다.
- chmod (파일 권한 변경):
- chmod -r permissions directory 명령은 지정된 디렉토리 및 그 안의 모든 파일과 하위 디렉토리에 대한 권한을 변경합니다.
-r 옵션을 사용하는 이유는 단일 파일이나 디렉토리에 대해 작업하는 대신, 디렉토리와 그 안의 모든 내용에 대해 작업하고자 할 때입니다. 이는 특히 디렉토리 구조가 복잡하거나 여러 파일을 한 번에 처리해야 할 때 매우 유용합니다.
'computer science' 카테고리의 다른 글
| cs - 스키마의 종류와 차이점(물리스키마, 논리스키마, 내부스키마, 외부스키마, 개념스키마) (2) | 2024.01.03 |
|---|---|
| cs - 모듈러 연산자와 리터럴 (2) | 2023.12.26 |
| cs - 부분적 함수종속이란? : 예시로 보는 정규화 과정 (2) | 2023.12.20 |
| cs - 리눅스에서 하드 링크와 심볼릭 링크 (0) | 2023.12.20 |
| cs -진폭편이변조(ask),주파수편이변조(fsk),위상편이변조(psk) (0) | 2023.08.11 |