맥 OS
맥 OS 터미널은 강력하고 다양한 기능을 제공하는 명령줄 인터페이스입니다. 이 블로그에서는 맥 OS 터미널에서 사용하는 명령어를 초보자를 위해 정리하였습니다. 이 명령어들은 맥 OS 사용자들이 일상적으로 활용할 수 있는 필수 명령어입니다.
디렉토리 탐색 명령어
1. pwd: 현재 작업 중인 디렉토리의 경로를 출력합니다.
2. ls: 현재 디렉토리의 파일과 하위 디렉토리 목록을 보여줍니다.
3. cd [디렉토리 경로]: 지정한 디렉토리로 이동합니다.
4. cd ~: 사용자 홈 디렉토리로 이동
5. cd -: 이전 디렉토리로 이동
예제
#!/bin/bash
current_dir=$(pwd)
echo "현재 파일 : $current_dir"
echo "현재 디렉토리의 파일과 하위 디렉토리 목록:"
ls
cd /path/to/directory
echo "/path/to/directory 로 이동"
cd ~
echo "홈 디렉토리로 이동: $(pwd)"
cd /path/to/directory1
echo "현재 디렉토리: $(pwd)"
cd /path/to/directory2
echo "현재 디렉토리: $(pwd)"
cd -
echo "이전 디렉토리: $(pwd)"
파일 및 디렉토리 관리 명령어
1. mkdir [디렉토리명]: 새로운 디렉토리를 생성합니다.
2. touch [파일명]: 새로운 파일을 생성합니다.
3. cp [소스] [대상]: 파일 또는 디렉토리를 복사합니다.
4. mv [소스] [대상]: 파일 또는 디렉토리를 이동하거나 이름을 변경합니다.
5. rm [파일 또는 디렉토리]: 파일 또는 디렉토리를 삭제합니다. -r 옵션을 사용하여 재귀적으로 디렉토리를 삭제할 수 있습니다.
예제
#!/bin/bash
mkdir new_directory
echo "생성 디렉토리'new_directory'"
touch new_file.txt
echo "생성 파일 'new_file.txt'"
cp source.txt destination.txt
echo "복사 'source.txt' to 'destination.txt'"
mv oldfile.txt newfile.txt
echo "새로운 이름으로 변경 'oldfile.txt' to 'newfile.txt'"
rm example.txt
echo "삭제 'example.txt'"
파일 내용 확인 및 편집 명령어
1. cat [파일명]: 파일의 전체 내용을 출력합니다.
2. less [파일명]: 파일의 내용을 페이지 단위로 출력합니다. 스크롤 및 검색 기능을 제공합니다.
3. head [파일명]: 파일의 처음 부분을 출력합니다.
4. tail [파일명]: 파일의 마지막 부분을 출력합니다. -f 옵션을 사용하여 파일의 변화를 실시간으로 모니터링할 수 있습니다.
5. nano [파일명]: 터미널에서 간단한 텍스트 편집을 제공하는 텍스트 에디터를 실행합니다.
예제
#!/bin/bash
cat file.txt
less file.txt
head -n 10 file.txt
tail -n 10 file.txt
nano file.txt
시스템 관리 명령어
1. top: 현재 실행 중인 프로세스 및 시스템 자원 사용량을 실시간으로 모니터링합니다. q를 눌러 종료할 수 있습니다.
2. ps: 현재 실행 중인 프로세스 목록을 보여줍니다.
3. kill [프로세스ID]: 특정 프로세스를 종료합니다.
4. ifconfig: 네트워크 인터페이스 설정 및 정보를 확인합니다.
5. shutdown: 시스템을 종료합니다. -r 옵션을 사용하면 재부팅할 수 있습니다.
예제
#!/bin/bash
top
ps aux
kill 1234
ifconfig
sudo shutdown now
기타 명령어
1. history: 사용한 명령어 히스토리 확인
2. grep: 파일 내에서 특정 패턴 검색
3. find: 파일 시스템에서 파일 및 디렉토리 검색
4. chmod: 파일 또는 디렉토리 권한 변경
chmod 명령어는 파일 또는 디렉토리의 권한을 변경하는 데 사용됩니다. 파일 또는 디렉토리의 권한은 사용자(user), 그룹(group), 기타 사용자(other)의 읽기(read), 쓰기(write), 실행(execute) 권한을 나타냅니다.
chmod 명령어는 다음과 같은 형식으로 사용됩니다
chmod [옵션] [모드] [파일 또는 디렉토리]
[옵션]은 chmod 명령어의 동작을 제어하기 위해 사용되는 선택적인 옵션입니다.
몇 가지 일반적인 옵션은 다음과 같습니다:
-R (또는 --recursive): 디렉토리의 권한을 재귀적으로 변경합니다.
[모드]는 권한을 나타내는 숫자로 표현됩니다. 일반적으로 3개의 숫자로 구성되며, 각 숫자는 사용자(user), 그룹(group), 기타 사용자(other)의 권한을 나타냅니다. 각 권한은 다음과 같은 숫자로 표현됩니다:
읽기(read): 4
쓰기(write): 2
실행(execute): 1
권한 없음: 0
[파일 또는 디렉토리]는 권한을 변경할 파일 또는 디렉토리의 경로입니다.
예시: chmod 755 file.txt: file.txt 파일에 대한 권한을 rwxr-xr-x (소유자에게는 읽기, 쓰기, 실행 권한을 부여하고, 그룹과 기타 사용자에게는 읽기 및 실행 권한을 부여)로 변경합니다.
chmod +x script.sh: script.sh 스크립트 파일에 실행 권한을 추가합니다.
5. ssh: 원격 서버로 안전한 셸 접속
ssh 명령어는 Secure Shell(SSH) 프로토콜을 사용하여 원격 서버로 안전한 셸 접속을 제공합니다. SSH를 통해 원격 서버에 로그인하고, 원격 서버에서 명령을 실행하고, 파일을 전송하는 등의 작업을 할 수 있습니다.
ssh 명령어는 다음과 같은 형식으로 사용됩니다:
ssh [옵션] [사용자명@호스트]
[옵션]은 ssh 명령어의 동작을 제어하기 위해 사용되는 선택적인 옵션입니다.
몇 가지 일반적인 옵션은 다음과 같습니다:
-p [포트번호]: 원격 서버의 포트 번호를 지정합니다.
-i [개인키파일]: 개인 키 파일을 지정하여 인증합니다.
[사용자명@호스트]는 원격 서버에 접속할 사용자명과 호스트(서버) 주소를 나타냅니다.
예시: ssh username@hostname: hostname 호스트에 username 사용자로 로그인합니다.
ssh -p 2222 username@hostname: hostname 호스트의 2222 포트로 접속하여 username 사용자로 로그인합니다.
예제
#!/bin/bash
history
grep "pattern" file.txt
find /path/to/search -name "*.txt"
chmod 755 file.txt
ssh username@hostname