blog

Shell Script: favorite snippets - Advanced

날짜: 2024-06-25

목록으로


현재 스크립트가 들어있는 폴더의 절대 경로 얻기

명령어 실행 중 에러 발생시 에러 발생 종료 처리

stdout, stderr file append + 콘솔 출력

grep 으로 특정 프로세스 찾아서 죽이기

입력값 받아서 파라미터로 저장하기

scp 를 이용하여 A 서버로부터 파일 받아와서 B 서버로 보내기

scp -i /home/ssm-user/.aws/my-aws-key.pem ec2-user@10.50.222.22:/home/ec2-user/gitlab_backups/* .
scp -i /home/ssm-user/.aws/my-aws-key.pem /home/ssm-user/gitlab-backups/* ec2-user@10.50.333.3:/home/ec2-user/gitlab_backups

특정 포트 사용하는 프로세스 죽이기

#!/bin/bash

# 종료할 포트 목록
ports=(3000 3030)  # 여기에 원하는 포트를 추가하세요

# 각 포트를 순회하면서 프로세스를 종료
for port in "${ports[@]}"; do
echo "포트 $port 를 검사 중입니다..."

# 포트를 사용하는 프로세스 찾기
pid=$(lsof -t -i:$port)

if [ -z "$pid" ]; then
    echo "포트 $port 를 사용하는 프로세스를 찾을 수 없습니다."
else
    echo "포트 $port 를 사용하는 프로세스 PID: $pid"
    # 프로세스 강제 종료
    kill -9 $pid
    echo "프로세스 $pid 를 강제 종료했습니다."
fi
done

목록으로