簡體   English   中英

根據日期/時間創建目錄並將文件復制到該目錄?

[英]Create directory based on date/time and copy files to it?

我正在嘗試創建一個腳本,該腳本將基於當前時間和日期創建一個文件夾。 然后,我需要腳本將文件從源文件夾復制到新創建的文件夾。 然后,我需要它將文件夾從第二個源文件夾復制到原始源文件夾,從而覆蓋其中的所有內容。

下面是我嘗試過的方法,但是它以史詩般的方式失敗了。

#!/bin/bash

d="/home/$(date +%d-%m-%y")"
mkdir "$d"
cp /home/test "$d"
cp /home/test2 /home/test

我知道我不必定義變量,因為副本之間的時間應該是幾秒鍾,而不是一天,但是我想確定地說,我有興趣學習在腳本中使用變量。

這里有一個太多的雙引號:

 d="/home/$(date +%d-%m-%y")" 

實際上,這里根本不需要引用,這樣編寫:

d=/home/$(date +%d-%m-%y)

在腳本的其余部分中,如果要復制目錄,則需要使用cp -r而不是cp

最后,請注意,當dir2已經存在時執行cp -r dir1 dir2時, dir1將被復制到dir2 ,而不是覆蓋其內容。 也就是說,它將創建dir2/dir1 如果dir1不包含隱藏文件,則可以這樣編寫以覆蓋dir2的內容:

cp -r dir1/* dir2/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM