linux shell

Edit

shell script에서 #!를 뭐라고 부를까?

쉘 안에서 현재 경로

#!/bin/sh
BASEDIR=`dirname $0`
echo $BASEDIR
cd $BASEDIR

언제나 절대경로로 하려면

$(cd dirname $0 && pwd)

참조

CD: http://www.ibm.com/developerworks/kr/aix/library/au-directorytree/index.html

파일명

find . -type f -name "*Controller.java" -printf "%f\n" | sort | uniq | awk '{print "- [ ] " $1}'

find / -name "sysinfo.html"

grep "sysinfo.html" *|awk '{print $1}'

내용

# 찾기
find /. -name "*" | xargs grep -i "benelog"

find /. -name "*" -print -exec grep "benelog" {} \;

find /. -name "*" -print | wc -l

# sub directory안의 파일 내용 중에 문자열 대체하기
find ./ -type f -exec sed -i -e 's/assets-cdn.github.com/github.githubassets.com/g' {} \;

용량과 업로드일자

find ./ -mtime -30 -size +1024k -ls find /. -name "StringCleaner.java" | xargs du -b

날짜

ls

http://www.cyberciti.biz/open-source/command-line-hacks/linux-ls-commands-examples/

열려있는 파일 찾기

Command-line Tools can be 235x Faster than your Hadoop Cluster

파일명 일괄 변경

_를 -로

for i in *_*;do mv $i ${i//"_"/"-"};done