Aby wykonać kopię zapasową istniejących plików z przyrostkami liczb, mogę wykonać następujące czynności:
cp --backup=numbered afile /path/to/dest
Ale nie dotyczy to, gdy próbuję zrobić to samo z folderem:
cp -R --backup=numbered afolder /path/to/dest
Jak mogę to osiągnąć?
Może powinienem trochę pokazać, co chcę osiągnąć. Najpierw mamy dwa katalogi:
ls -ld source container
drwxrwxr-x 6 kaiyin kaiyin 4096 Nov 29 22:11 container
drwxrwxr-x 2 kaiyin kaiyin 4096 Nov 29 22:09 source
Następnie robimy to:
myPerfectCp -R --backup=numbered source container/
myPerfectCp -R --backup=numbered source container/
myPerfectCp -R --backup=numbered source container/
myPerfectCp -R --backup=numbered source container/
Idealnie chcę ten wynik:
tree container/
container/
├── source
├── source.~1~
├── source.~2~
└── source.~3~
backup.~1~
,backup~2~
itp. , Które chceszdir~1~
zawieraćbackup~1~
, a następniedir~2~
zawieraćbackup~2~
i tak dalej, śledząc w ten sposób każdą zmianę stanu w osobnym katalogu. Czy to jest poprawne?Odpowiedzi:
Chociaż można to zrobić w trybie bash, jestem raczej facetem pytona, więc oto moja propozycja:
źródło
Próbować:
źródło