셸 명령 압축 풀기 zip 폴 더 및 압축 풀기 파일 이름 바 꾸 기 (대량)
1214 단어 Linux
먼저 디 렉 터 리 구 조 를 말 해 보 세 요./home/test 폴 더 에 N 개의 폴 더 가 있 습 니 다. 예 를 들 어 2019.1 2019.2 2019.3 등 이 있 고 모든 폴 더 에 N 개의 ZIP 파일 이 있 습 니 다. 예 를 들 어
a.txt.zip b.doc.zip c.html.zip d. pdf. zip 등. 모든 zip 파일 에 존재 하 는 이름 이 같 고 접미사 가 없 기 때문에 테스트 입 니 다. 따라서 압축 을 푼 파일 의 이름 을 바 꿔 야 합 니 다. 그렇지 않 으 면 파일 이 되 고 덮어 씁 니 다.
문제 설명 을 마치 고 쓴 코드 를 보 여 드 리 겠 습 니 다. 서버 에서 실 행 된 후에 효과 가 예상 한 것 과 같 습 니 다!
#!/bin/sh
#============ unzip the file ===========
Folder="/home/test"
for file in ${Folder}/*;
do
file_name=`basename $file`
cd ${Folder}/$file_name
(
for unzip in ${Folder}/$file_name/*.zip;
do
unzip_name=`basename $unzip`
rname=${unzip_name:0:${#unzip_name}-4}
unzip -o -O gbk $unzip_name && mv `unzip -l $unzip_name | awk '{if(NR == 4){ print $4}}'` $rname
# rm -f $unzip_name
done
)
done
마지막 으로 필요 한 사람들 을 도 울 수 있 기 를 진심으로 바 랍 니 다. 정 위 는 이 글 을 써 서 많은 시간 을 낭 비 했 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
바이너리 파일cat 또는tail, 터미널 디코딩 시 처리 방법cat으로 바이너리 파일을 보려고 할 때 코드가 엉망이 되어 식은땀이 났다. 웹에서 스크롤된 정보의 처리 방법과alias의 설정을 요약합니다. reset 명령을 사용하여 터미널을 재설정합니다.이렇게 하면 고치지 못하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.