리눅스는 숨겨진 파일 이름 앞의 점을 어떻게 제거합니까? 나는 점으로 시작하는 숨겨진 파일인 대량의 데이터 파일을 가지고 있다. 예를 들면. " Dataxxxx "를 참조하십시오.
Find 를 사용하여 일부 파일을 찾아 -execdir 매개 변수로 하나씩 처리하지만 -execdir 뒤에 쓸 수 있는 명령 제한이 너무 많습니다. 이 파일의 내용으로 스크립트를 작성해 보겠습니다.
#! /bin/sh
X = `basename' $1"` 0
L=' 표현식 길이 "$X"' 입니다
L =' expr $ L- 1' 입니다
D = `expr substr "$ X" 2 $ L'
Mv "$X" "$D "
Bash 구문을 사용하여 문자열을 처리하는 경우 위 행은 더 간단하며 호환성을 위해 expr 을 사용합니다.
(예를 들어 스크립트 파일이 /tmp/nodot.sh 인 경우) 이제 다음을 실행합니다.
찾기-유형 F- 이름. * "-execdir/tmp/nodot.sh {} \;
(find 명령은 현재 디렉토리의 모든 하위 디렉토리에 있는 점 파일을 처리하며 범위를 제한하는 추가 매개변수가 필요합니다. ) 을 참조하십시오