GNU/Linux >> Znalost Linux >  >> Linux

Kopírování souborů na základě data modifikace v Linuxu

Nejprve bych dočasně uložil seznam souborů a použil smyčku.

find . -mtime -90 -ls >/tmp/copy.todo.txt

Seznam, pokud není příliš velký, si můžete přečíst pomocí

for f in `cat /tmp/copy.todo.txt`;
do echo $f;
done

Poznámka:uvozovky kolem cat... jsou zpětné zaškrtnutí, často v levém horním rohu klávesnice.

Poté můžete příkaz echo nahradit příkazem pro kopírování:

for f in `cat /tmp/copy.todo.txt`;
do cp $f /some/directory/
done

Přesné datum a čas lze vybrat i jinak, než se vrátit o určitý počet dní:

cp  `find . -type f -newermt '18 sep 2016 20:05:00'` FOLDER

Výše uvedené zkopíruje všechny soubory v adresáři, které byly vytvořeny po 18. září 2016 20:05:00, do FOLDER (tři měsíce před dneškem :)

Buďte opatrní se symbolem pro příkaz find. Není tento:'

Je to toto, zpětné zaškrtnutí:`

Výběr data je s tímto:'

Pokud máte v názvech soubory s mezerami, novými řádky, tabulátory nebo zástupnými znaky, můžete použít kterékoli z řešení od Stéphana Chazelase. První je pro GNU a druhý je pro GNU nebo některá BSD:

find . -type f -newermt '18 sep 2016 20:05:00' -exec cp -t FOLDER {} +
find . -type f -newermt '18 sep 2016 20:05:00' -exec sh -c 'cp "[email protected]" FOLDER' sh {} +

Použijte tento příkaz:

for i in `ls -lrt | grep "jul" | awk '{print $9}' `; do cp $i* /some/folder/; done

Použijte -exec možnost pro find :

find . -mtime -90 -exec cp {} targetdir \;

-exec zkopíruje každý výsledek vrácený find do zadaného adresáře (targetdir ve výše uvedeném příkladu).


Linux
  1. Jak najít a seřadit soubory na základě data a času úpravy v Linuxu

  2. Najděte a seřaďte soubory na základě přístupu, data a času úprav v systému Linux

  3. Rekurzivní kopírování skrytých souborů - Linux

  1. Linux – získávání souborů pro aktuální datum v Linuxu?

  2. Příkazy hledání pro Linux

  3. Jak v Linuxu odstraníte soubory starší než konkrétní datum?

  1. Kopírování souborů v Linuxu

  2. Jak najít duplicitní soubory v Linuxu

  3. Linux:pomocí funkce find vyhledejte soubory starší než <datum>