因為工作需要窘奏,前幾天弄了一個自定義復制文件夾的功能,通過shell腳本實現(xiàn)。
shell腳本真的是一個很神奇的發(fā)明瘤运,可以用最少的代碼做最多的事情但金,太贊了冷溃!
今天我要講的是一個復制命令。
復制命令其實很簡單“cp”復制凿歼,大家都知道冗恨。但是如果復制過去之后重命名文件或者文件夾,并且文件名包含當前時間掀抹,這要怎么做呢傲武?
cp -rf old copy_test/new_`date '+%Y%m%d_%H.%M.%S'`
cp:復制一個文件或文件夾
-r :遞歸持續(xù)復制,用于目錄的復制行為土童;
-f :為強制 (force) 的意思,若有重復或其它疑問時敢订,不會詢問使用者,而強制復制;
old:是復制源的文件夾路徑,因為我已經(jīng)cd到該路徑下了怪蔑,所以不要前綴喧枷;
copy_test/new_date '+%Y%m%d_%H.%M.%S'
:是復制之后的文件夾路徑隧甚,復制到copy_test文件夾下面的名為new_date '+%Y%m%d_%H.%M.%S'
戚扳;
注意:這里的new_date '+%Y%m%d_%H.%M.%S'
并不是文件夾名字菩帝,而是日期的格式轉(zhuǎn)換握础,文件夾名字叫“new_”加上當前日期被格式化之后的樣子。最終結(jié)果是“new_20170918_10.03.19”定枷,日期格式化的結(jié)果是“20170918_10.03.19”欠窒。
不難看出年月日時分秒的對應關(guān)系:
%Y:年覆旭;%m:月;%d:日七兜;%H:時丸凭;%M:分;%S:秒腕铸;
其中格式就是自己想要什么格式就直接在里面添加就好了惜犀。
更多日期格式請參考:http://blog.csdn.net/shanliangliuxing/article/details/16821175
更多詳細復制命令請參考:http://clin003.com/linux/cp-rf-2479/