2014년 7월 9일 수요일

Linux 명령어, 팁 등등



1. ls


ls –d */ - 디렉토리만 출력, 보기좋게


2. 속성 변경 
chmod -R 777

3. 복사/삭제

cp  /Source/*.* /Destination/
cp -rp /Source/ /Destination/

4. 찾기

find . -name *.c
find . -name *.c | xargs touch
/ : 루트부터 검색
. : 현재기준 하위포함 검색
/디렉토리명 : 디렉토리명 검색

- 폴더 찾기
find . -name 'xxx*' -type d (현재 기준 하위 폴더)
find / -name 'xxx*' -type d (root 기준)


- 현재 디렉토리 내 확장자가 txt인 파일들을 중에서 "홍길동"이라는 문자열을 갖고 있는 파일의 한 줄과 이름을 보여준다.
find . -name "*.txt" | xargs grep 홍길동
- 이 때 검색어로 사용된 문자열은 색을 달리하여 표시하고 싶다면
find . -name "*.txt" | xargs grep --color=auto 홍길동
- 검색어의 위치(줄번호)를 같이 표기하고 싶다면
find . -name "*.txt" | xargs grep -n 
홍길동
- 대소문자를 구분하고 싶지 않다면
find . -name "*.txt" | xargs grep -i LgMobile
- 현재 디렉토리 내 확장자가 txt인 파일들을 중에서 "홍길동"이라는 문자열을 갖고 있는 파일의 이름만 보고 싶다면
find . -name "*.txt" | xargs grep -l 홍길동
- 검색 결과에 다음과 같은 메시지가 포함된다면
grep: [특정경로]: No such file or directory
2>/dev/null 을 추가하면 해당 메시지를 표시하지 않고 찾은 결과만 볼 수 있다. ,
find . | xargs grep 2>/dev/null 홍길동
- 모든 옵션은 함께 사용 가능하다.
find . -name "*.txt" | xargs grep --color=auto -n 2>/dev/null 홍길동

- 파일 찾아 열기
find .-name 'xxx.txt' -exec vim {} \; 


find . -name "*.*" | xargs grep -n --color=auto "string" 2> /dev/null


- 특정 폴더 삭제(하위포함)
find . -name .git | xargs rm -rf


- 파일 개수
find . -type f | wc -l


5. 드디스크 용량 확인
df -h : file system
du -hs * : 현재폴더에 있는 폴더 및 파일 용량 확인
du -hs 폴더이름 : 해당 폴더 용량 확인
du -hsx * | sort -rh | head -n 10 : 현재폴더에 있는 폴더 및 파일 중에서 용량이 큰 것 순으로 10개 보기


6. Screen
screen -S 111 (create)
screen -list
ctrl + a + d (detach)
screen -x 111 (재접속)
exit (종료) 



7.network
ifconfig eth1 xxx.xxx.xxx.xxx : ip setting
ifconfig eth1 down
ifconfig eth1 up
route add default gw 192.168.10.1 (http 안될때)
vi /etc/resolv.conf 에도 dns 추가 168.126.63.1


8. symbolic link
sudo ln -s /opt/eclipse/eclipse /usr/bin

9. serial com

dmesg | grep tty
sudo minicom -b 115200 -D /dev/ttyUSB3



10. 압축 관련
tar 압축
tar -cvzf name.tar 경로(파일 or 폴더) ex> tar -cvf abc.tar def

tar 해제
tar -xvf name.tar

tar.gz 압축
tar -zcvf name.tar.gz 경로
permission 없는 파일 무시하기
tar -zcvf name.tar.gz 파일 --ignore-failed-read

tar.gz 해제
tar -zxvf name.tar.gz

-C 옵션 이용하여 압축 풀 경로 지정
tar -zxvf name.tar.gz -C path

tgz 압축 풀기
tar -zxvf name.tgz

option value
-x : 묶음을 해제
-c : 파일을 묶음(압축이 아님)
-v : 과정을 화면에 표시
-f : 파일 이름 지정
-p : 권한을 원본과 동일하게 유지
-C : 경로 지정
-z : gzip 으로 압축/해제


zip 압축
zip -rF name.zip folder or file
r : recursive
F : 한글 이름 파일 포함 압축

zip 해제
unzip name.zip -d 경로

11. systemd
systemctl start xxx
systemctl stop xxx
systemctl status xxx -l(로그확인)
journalctl -u xxx | cut -d ' ' -f 6- | more

12. process
pgrep tms-manager
pidof tms-manager
kill -INT id
killall -9 tms-manager

13. gdb
gdb
gdb process_name
run
falut <- 발생
bt
killall -9 gdb

zz. etc
which gcc : gcc 설치 위치
pwd : 현재 위치


scp
scp xxx.txt id@192.168.10.241:/app/hmiapp/ : 보내기
scp -r id@192.168.10.241:/app/hmiapp/ /xxx/ : 가져오기


deb install
sudo dpkg -i xxx.deb
sudo apt-get remove xxx


rpm install
rpm -ivh --force --nodeps xxx.rpm


symbolic link
sudo ln -s /opt/eclipse/eclipse /usr/bin


log redirect
> : 표준출력을 새로운 파일로
>& : 표준출력,에러를 새로운 파일에
./start.sh >& 1.log


touch
find  -type f  -exec touch {} +
find  -type f  -name "*.txt" -exec touch {} +
find . -type d -exec chmod 777 {} \


encoding
file -i xxx.file
iconv -f ISO-8859-1 -t UTF-8//TRANSLIT xxx.file -o xxx.file


lib check
ldd process_name


vim shortcut key
http://seungdols.tistory.com/537

bash shell
-xv 옵션을 주면서 실행하면 디버깅 모드로 출력된다.

$ bash -xv filesize.sh

댓글 없음:

댓글 쓰기

Android Jetpack viewpager2

  Android Jetpack ViewPager2 기본 개념 및 샘플 코드 오늘은 안드로이드 개발에 있어서 굉장히 유용한 컴포넌트 중 하나인 ViewPager2에 대해 이야기해볼까 합니다. ViewPager2는 사용자 인터페이스에서 여러 화면을 좌우...