0

あるフォルダから別のフォルダにファイルをコピーするには、bashスクリプトを使用する必要があります。宛先フォルダーに同じ名前でタイムスタンプが古いファイルがある場合、コピーしないでください。新しいファイルのみをコピーする必要があります。cp -uを使用することもできましたが、使用しないように求められました。基本的に、「ot」のテストコマンドテストを使用する必要があります。これをどのように行うことができるか教えてください。1つはソース内のファイルを読み取るための2つのforループ、もう1つは宛先ディレクトリ用のforループを使用して、タイムスタンプを比較できると思います。問題は、両方のforループがファイル名とともに絶対パス名を生成することです。だからそれらを比較する方法がわからない

ありがとう

4

1 に答える 1

1

パラメータ置換から利益を得ることができます:

for file in "$folder1"/* ; do
    filename=${file##*/}       # Remove everything to the last slash.

または、ディレクトリを変更できます。

cd "$folder1"
for file in * ; do
    ## you have to use full or relative path to $folder2 here
于 2013-02-05T20:22:30.527 に答える