批量更改文件名



需求:bash

  1. 找到/123目錄下全部後綴名爲.txt的文件ide

  2. 批量修改.txt爲.txt.bakspa

  3. 把全部.bak文件打包壓縮爲123.tar.gzorm

  4. 批量還原文件的名字,即把增長的.bak再刪除it

參考答案class



#!/bin/bash打包

##查找txt文件date

find /123 -type f -name 「*.txt」 > /tmp/txt.listmargin

##批量修改文件名top

for f in `cat /tmp/txt.list`

do

mv $f $f.bak

done

##建立一個目錄,爲了不目錄已經存在,因此要加一個複雜的後綴名

d=`date +%y%m%d%H%M%S`

mkdir /tmp/123_$d

##把.bak文件拷貝到/tmp/123_$d

for f in `cat /tmp/txt.list`

do

cp $f.bak /tmp/123_$d

done

##打包壓縮

cd /tmp/

tar czf 123.tar.gz 123_$d/

##還原

for f in `cat /tmp/txt.list`

do

mv $f.bak $f

done

相關文章
相關標籤/搜索