1. 현재폴더에서 하위 폴더 삭제

ll | grep ^d | awk '{print $NF}' | xargs rm -rf

2. 특정폴더에서 하위 폴더 삭제

ll /폴더/경로/ | grep ^d | awk '{print $NF}' | xargs rm -rf


iconv -f utf-8 -t euc-kr convert.dat (저장안되고 화면만출력)
iconv -f utf-8 -t euc-kr convert.dat > convert2.dat



[iconv 사용법]

iconv -f <소스 포맷> -t <목적 포맷> <파일명>

예)
- cp949 으로 되어 있는 파일을 utf8 로 변환
iconv -f cp949 -t utf-8 source.txt > target.txt

지원하는 인코딩 목록을 보려면 -l 옵션을 넣는다.
iconv -l


파일만 따로 퍼미션 주기.

find ./ -name '*.php'  -exec chmod 604 {} \;
find ./ -name '*.html'  -exec chmod 604 {} \;
find ./ -name '*.css'  -exec chmod 604 {} \;
find ./ -name '*.jpg'  -exec chmod 604 {} \;
find ./ -name '*.gif'  -exec chmod 604 {} \;
find ./ -name '*.png'  -exec chmod 604 {} \;

디렉토리에는 x 권한이 필요하므로

find ./ -type d -exec chmod 755 "{}" \;

디렉토리만 빼고 모든 파일 퍼미션 바꾸기

find ./ -type f -exec chmod 644 "{}" \;

{} 에 따옴표를 한 이유는 파일명에 공백이 있을경우도 처리하기 위함입니다.

 

'Works > CentOS & RockyLinux' 카테고리의 다른 글

리눅스 디렉토리만 삭제  (0) 2016.02.22
iconv 명령어 사용법  (0) 2015.12.04
쉘에서 원격 연결 끊기  (0) 2015.11.24
hdparm 명령 사용법  (0) 2015.11.24
idn 명령어 사용법  (0) 2015.11.24


특정 "로그인 사용자이름"의 접속자를 끊을 때

# skill -KILL [로그인 사용자 이름]

특정 터미널만 접속 해제 할 때

# skill -KILL -v pts/0

: pts/0에 연결된 접속이 끊어지게 됨.

위의 명령어로도 해결이 안되는 경우는 해당 프로세스를 찾아서 강제 종료하거나 재부팅. 

[추가] 위방법은 CentOS 기준 6버전까지는 동작하나 버전 7 이상부터는 작동하지 않는다.

그런경우 
ps -ef | grep ssh 명령어를 통해 연결을 끊고자 하는 TTY (pts/0~x) 에 대응되는 pid 를 확인하고
kill -9 "PID" 를 실행하면 정상적으로 해당 접속자만 연결이 끊어진다.

 


hdparm은 시스템에 장착된 하드디스크의 설정을 확인하거나 하드디스크의 설정을 하고자 할 때에 사용하는 명령어다. 주로 실무에서는 IDE 또는 SCSI하드디스크의 ACCESS속도를 측정할 때에 많이 사용하며 이 명령어로 하드디스크의 직접적인 성능에 영향을 줄 수 있는 여러가지 설정을 할 수 있지만 극히 위험한 상황을 초래할 수 있으므로 설정의 용도로는 사용하지 않는 것이 좋다.

따라서 대부분의 경우 하드디스크의 ACCESS속도 및 성능을 확인하고자 할 때에 사용한다.


1. hdparm명령어로 버퍼링되어 있지않은 데이터의 디스크 ACCESS 속도 체크하기


 # hdparm -t /dev/sda


/dev/sda:

Timing buffered disk reads: 344 MB in  3.01 seconds = 114.28 MB/sec


위의 결과를 보면 현재 시스템에 장착되어 있는 SCSI(또는 S-ATA)하드디스크의 경우 실제로 디스크에 존재하는 데이터를 읽는

속도는 초당 약114MB임을 알 수있다.


2. hdparm명령어로 버퍼링되어 있는 데이터와 되어있지않는 데이터의 ACCESS 속도 비교하기 


# hdparm -tT /dev/sda


/dev/sda:

Timing cached reads:   3396 MB in  2.00 seconds = 1698.05 MB/sec
Timing buffered disk reads: 342 MB in  3.00 seconds = 113.86 MB/sec


여러분도 잘 아시다시피 캐쉬(cache)에 버퍼링되어 있는 데이터를 읽는다면 실제 속도는 엄청나게 빨라질 것이다. 캐쉬(cache)에 저장된 데이터를 읽는다는 것은 실제로 디스크에서 읽어오는 것이 아니라 캐쉬메모리(cache)에서 읽어오기 때문이며 1번의 예는 실제로 디스크에 존재하는 데이터(t옵션)를 읽는 속도를 체크한 것이라면 위의 예는 캐쉬에 존재하는 데이터(T옵션)를 읽는 속도와 함께 측정하는 예입니다.


위의 예에서 보면 캐쉬에 버퍼링되어 있는 데이터(T옵션)를 읽을 때에는 초당 약 1698MB를 읽을 수 있으며 실제로 디스크에서 데이터(t옵션)를 읽어오는 속도는 초당 약 113MB임을 알 수 있다.

이 예에서 캐쉬메모리가 시스템의 속도에 얼마나 막대한 영향력을 행사하는가를 알 수 있습니다.


idn 명령어는 유니코드가 포함된 도메인 (한글도메인)을 ASCII 형식으로 변환해주는 명령어이며

아래는 설치부터 사용법 예시에 대한 정리이다.

[idn 설치]

yum -y install libidn


[idn 명령사용법]


CHARSET=EUC-KR idn -a --quiet 한글도메인 (한글도메인을 punnycode 로 변환)
CHARSET=EUC-KR idn -u --quiet punnycode (punnycode를 한글도메인을 변환)

ex) CHARSET=EUC-KR idn -a --quiet 네이버.com (xn--950bt9s8xi.com 으로 변환됨)
ex) CHARSET=EUC-KR idn -u --quiet xn--950bt9s8xi.com (네이버.com 으로 변환됨)
 

[중요] CHARSET=EUC-KR 를 명시하지 않으면 서버 로케일 설정이 euc-kr 로 지정되지 않은 서버에서는

엉뚱한 결과값이 출력될 수 있으므로 명령어 사용시 반드시 위 예시와 같이 CHARSET=EUC-KR 를 조합해서 사용할 것.

CHARSET=EUC-KR 옵션사용시 시스템의 로케일 설정의 영향 받지 않음.

 

/bin/rm: Argument list too long

파일수가 많은 경우를 삭제하려고 시도할 때 나타나는 메세지이다.
rm 명령어에서 getopt function의 아규먼트 파싱하는데에 최대 수치를 넘어선 것으로 기본적으로 1024개 이상을 핸들링하지 못한다.
이에 대한 대처로 다음과 같은 명령어를 쓸 수 있다.

1. find . -name '파일타입' | xargs rm 또는 find . -name '파일타입' -exec rm -rf {};

2. find . -name '*' -exec rm {} \;


예시) /var/spool/mqueue 디렉토리 하위의 파일들이 삭제되지 않을 경우
find ./q*/ -print | xargs rm