У меня есть 2 папки в этой ситуации, /ParentFolder/FolderName/Files.mp4
и /Mount/FolderName/Files.mp4
.
В сущности, в /ParentFolder
необходимо заменить любые папки с таким же именем в /mount
. Я должен использовать ACDCLI для фактической копии, поэтому мне нужно сначала удалить их, вызвав любое имя папки из /ParentFolder/*
и rm -rf /mount/"FolderName"
. Если это была одна папка, легко, но я не уверен, как скажем, получить все имена папок из X и удалить, если они существуют в Y.
Следующий сценарий удара должен сделать то, что Вы описываете. Можно хотеть поместить echo
перед rm
в первый раз, когда Вы выполняете его, только чтобы удостовериться, что это собирается сделать то, что Вы ожидаете.
#!/bin/bash
if test -d "$1"
then
from="$1"
else
echo "could not find source directory \`$1'" >&2
exit 1
fi
if test -d "$2"
then
to="$2"
else
echo "could not find destination directory \`$2'" >&2
exit 1
fi
for fromdir in "${from}"/*/
do
todir="${to}${fromdir#"${from}"}"
if test -d "${todir}"
then
rm -rf "${todir}"
fi
done
Имя сценарий что-то соответствующее как acd_prep
и использование chmod +x acd_prep
для создания этого исполняемым файлом. Для папок в качестве примера в вопросе Вы затем запустили бы скрипт как acd_prep /ParentFolder /Mount
.