1. 파일 및 디렉터리 관리
🔹 현재 디렉터리 확인 (pwd)
bash
복사편집
pwd
🔹 디렉터리 이동 (cd)
bash
복사편집
cd 디렉터리명
cd ..
cd ~
cd -
🔹 디렉터리 목록 보기 (ls)
bash
복사편집
ls
ls -l
ls -a
ls -lh
ls -lt
🔹 디렉터리 생성 (mkdir)
bash
복사편집
mkdir 디렉터리명
mkdir -p 경로/하위디렉터리
🔹 디렉터리 삭제 (rmdir / rm -r)
bash
복사편집
rmdir 디렉터리명
rm -r 디렉터리명
🔹 파일 복사 (cp)
bash
복사편집
cp 원본 대상
cp -r 원본디렉터리 대상디렉터리
🔹 파일 이동 및 이름 변경 (mv)
bash
복사편집
mv 파일명 새파일명
mv 파일명 디렉터리/
🔹 파일 삭제 (rm)
bash
복사편집
rm 파일명
rm -rf 디렉터리
2. 파일 내용 확인 및 편집
🔹 파일 내용 보기 (cat, less, more)
bash
복사편집
cat 파일명
less 파일명
more 파일명
🔹 파일 검색 (grep)
bash
복사편집
grep "검색어" 파일명
grep -r "검색어" 디렉터리/
grep -i "검색어" 파일명
🔹 파일 찾기 (find)
bash
복사편집
find /경로 -name "파일명"
find . -type f -name "*.txt"
3. 프로세스 및 시스템 관리
🔹 프로세스 확인 (ps, top, htop)
bash
복사편집
ps aux
top
htop
🔹 프로세스 종료 (kill, pkill)
bash
복사편집
kill PID
pkill 프로세스이름
kill -9 PID
🔹 메모리 및 CPU 사용량 확인 (free, df, du)
bash
복사편집
free -h
df -h
du -sh 디렉터리/
4. 사용자 및 권한 관리
🔹 사용자 정보 확인 (whoami, id, who)
bash
복사편집
whoami
id
who
🔹 사용자 변경 (su, sudo)
bash
복사편집
su - 사용자명
sudo 명령어
🔹 파일 권한 변경 (chmod, chown)
bash
복사편집
chmod 755 파일명
chmod +x 파일명
chown 사용자:그룹 파일명
5. 네트워크 관련 명령어
🔹 네트워크 연결 확인 (ping, curl, wget)
bash
복사편집
ping 도메인/IP
curl -I URL
wget URL
🔹 네트워크 포트 확인 (netstat, ss)
bash
복사편집
netstat -tulnp
ss -tulnp
🔹 IP 주소 확인 (ip, ifconfig)
bash
복사편집
ip a
ifconfig
6. 압축 및 아카이브 관리
🔹 파일 압축 (tar, zip, gzip)
bash
복사편집
tar -cvf archive.tar 파일/디렉터리
tar -xvf archive.tar
zip -r archive.zip 파일/디렉터리
unzip archive.zip
7. 시스템 종료 및 재부팅
bash
복사편집
shutdown -h now
shutdown -r now
reboot
poweroff
8. 기타 유용한 명령어
🔹 명령어 실행 기록 (history)
bash
복사편집
history
🔹 명령어 실행 시간 측정 (time)
time 명령어
🔹 백그라운드 실행 (&, nohup)
명령어 &
nohup 명령어 &
🔹 파일 전송 명령어 사용법 (SCP를 활용한 EC2로 파일 전송)
🔹 EC2에서 실행 중인 JAR 파일 종료 및 백그라운드 실행 방법
✅ 1. 실행 중인 프로세스 확인
- 현재 실행 중인
pinup-0.0.1-BETA.jar 프로세스를 확인:
ps -ef | grep pinup-0.0.1-BETA.jar
✅ 2. 기존 프로세스 종료
- 실행 중인 프로세스(PID 5613)를 종료:
kill -9 5613
- PID 5613는
pinup-0.0.1-BETA.jar의 실행 중인 프로세스야. kill -9로 강제 종료할 수 있어.
✅ 3. 백그라운드에서 JAR 실행
1. 명령어 1: 현재 작업 디렉토리에서 실행
nohup java -jar -Dspring.profiles.active=prod pinup-0.0.1-BETA.jar > pin-up.log 2>&1 &
설명:
nohup: 이 명령어는 현재 터미널 세션을 종료해도 실행 중인 프로세스가 계속 실행되도록 해줍니다.
java -jar -Dspring.profiles.active=prod pinup-0.0.1-BETA.jar: pinup-0.0.1-BETA.jar 파일을 실행합니다. Dspring.profiles.active=prod는 Spring 프로파일을 prod로 설정하여, 해당 환경에 맞는 설정을 사용하게 합니다.
> pin-up.log 2>&1: 표준 출력(stdout)과 표준 오류(stderr)를 pin-up.log 파일로 리다이렉트합니다. 모든 로그는 이 파일에 기록됩니다.
&: 이 부분은 명령어를 백그라운드에서 실행하도록 합니다. 즉, 터미널을 차지하지 않고 계속 실행됩니다.
사용 조건:
- 현재 작업 중인 디렉토리(
pwd 명령어로 확인) 내에 pinup-0.0.1-BETA.jar 파일이 위치해야 합니다.
- 경로를 생략하고 파일 이름만 사용하므로, 현재 작업 디렉토리에서 실행됩니다.
2. 명령어 2: 절대 경로로 실행
nohup java -jar -Dspring.profiles.active=prod /home/ec2-user/pinup-0.0.1-BETA.jar > pin-up.log 2>&1 &
설명:
nohup: 위와 동일하게, 터미널 세션 종료 후에도 프로세스가 계속 실행됩니다.
java -jar -Dspring.profiles.active=prod /home/ec2-user/pinup-0.0.1-BETA.jar: /home/ec2-user/ 경로에 위치한 pinup-0.0.1-BETA.jar 파일을 실행합니다. Dspring.profiles.active=prod는 Spring 프로파일을 prod로 설정합니다.
> pin-up.log 2>&1: 표준 출력과 오류를 pin-up.log 파일로 리다이렉트하여 로그를 기록합니다.
&: 이 명령어를 백그라운드에서 실행하도록 합니다.
사용 조건:
pinup-0.0.1-BETA.jar 파일이 /home/ec2-user/ 경로에 위치해야 합니다.
- 절대 경로를 사용하기 때문에 현재 작업 중인 디렉토리와 관계 없이 파일을 정확한 경로로 지정할 수 있습니다.
✅ 4. 실행 확인
- 새로 실행된 프로세스 확인:
bash
복사편집
ps -ef | grep pinup-0.0.1-BETA.jar
- 이 명령어로 실행 중인 프로세스를 확인하고, 새로운 PID가 나타나면 정상적으로 실행되고 있다는 뜻이야.