필자가 사주 사용하는 명령어를 정리하는 공간이다. 설명 전혀 없이, 코멘트와 명령어만 붙여넣을 예정이며, 지속적으로 update가 될 것 이다. option이 길어 깜빡하거나, 간헐적으로 사용하여 손에 익지 않은 명령어가 주로 이룰 것이다.
( 🔥 Ubuntu, MAC 중심 입니다 )
sudo du ~ -h --max-depth=1 | sort -hr
sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr
sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | wc
grep -rnw '/path/to/somewhere/' -e 'pattern'
r
or R
is recursive,n
is line number, andw
stands for match the whole word.l
(lower-case L) can be added to just give the file name of matching files.e
is the pattern used during the search--exclude
, --include
, --exclude-dir
flags could be used for efficient searching:grep --include=\*.{c,h} -rnw '/path/to/somewhere/' -e "pattern"
grep --exclude=\*.o -rnw '/path/to/somewhere/' -e "pattern"
-exclude-dir
parameter. For example, this will exclude the dirs dir1/, dir2/ and all of them matching *.dst/:grep --exclude-dir={dir1,dir2,*.dst} -rnw '/path/to/somewhere/' -e "pattern"
man grep
.find . -name "*.docx" | xargs rm
# 아래는 현재 경로에서 file type만 찾고 (디렉토리 제외) 이름에 2022를 포함한 모든 파일 찾고 삭제
find ./ -type f -name "*2022*" -exec rm -rf {} \;
kill -9 `ps -ef | grep 'celery' | awk '{print $2}'`
kill -9 `ps -ef | grep 'gunicorn' | awk '{print $2}'`
du -hd1
du -h --max-depth=1
du -sh *
du -sh -B1 --apparent-size *
# Sparse file을 찾는 방법
find . -type f -printf "%S\t%p\n" | gawk '$1 < 1.0 {print}'
lt
로 등록해놓고 씀ls -alrth --time-style=long-iso
alias lt="ls -alrth --time-style=long-iso"
pidof mongod
# 아래와 같은 방식으로 shell 에서 얻어올 수 도 있음
${pidof mongod}
pgrep mongo | wc -l
# 아래와 같이 shell을 짜면 아주 간단하게(low level로 ㅎ) restart 스케쥴러 쉘을 만들 수 있다.
mongo="`pgrep mongo | wc -l`"
if [ "$mongo" -eq "0" ] ; then
sudo service mongodb start &
fi
sudo launchctl unload /System/Library/LaunchDaemons/ssh.plist
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist
sudo launchctl stop com.openssh.sshd
sudo launchctl start com.openssh.sshd
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder
docker run --rm --volumes-from my-mongo-server mongo unlink "/data/db/mongod.lock"
docker run --rm --volumes-from my-mongo-server mongo --repair
echo -n any string | shasum -a 256 | awk '{ print $1 }'
sudo lsof -PiTCP -sTCP:LISTEN
특정 포트를 찾아 포트를 닫고 싶으면 다음과 같이 쳐서 PID를 알아낸다.
sudo lsof -i :3000
: 여기서 3000이 포트번호이다.
위에서 나온 PID를 다음 명령어에 넣으면 포트가 닫힌다. sudo kill -9 PID
pbcopy
와 pbpaste
를 통해 지금 클립보드 내용 저장 & 붙여넣기를 cli 환경에서 사용할 수 있다.
cat log.txt | pbcopy
pbpaste > log2.txt
# 인증서 상태 체크
sudo certbot certificates
# (30일 미만만 갱신 가능) 갱신 이후 nginx restart 까지 하기
certbot renew --post-hook "systemctl restart nginx"