Вам не нужно обновлять систему. Обновите youtube-dl, добавив этот PPA:
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install youtube-dl
Затем вы можете скачать любое видео, как обычно. Например:
youtube-dl https://www.youtube.com/watch?v=Ix1rD4JD3eo
Вы можете использовать переключатель -u из команды cp:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначенияили используйте команду rsync с --ignore-existing:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначения
пропустить обновления файлов, существующих на приемнике
rsync --ignore-existing source/* destination/
Вы можете использовать переключатель -u из команды cp:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначенияили используйте команду rsync с --ignore-existing:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначения
пропустить обновления файлов, существующих на приемнике
rsync --ignore-existing source/* destination/
Вы можете использовать переключатель -u из команды cp:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначенияили используйте команду rsync с --ignore-existing:
копировать только тогда, когда файл SOURCE является более новым, чем файл назначения или когда отсутствует файл назначения
пропустить обновления файлов, существующих на приемнике
rsync --ignore-existing source/* destination/
Ваша исходная команда может быть переписана как:
find . -type f -exec bash -c 'test -e /target-directory/"$1" || cp "$1" /target-directory' sh {} \;
Ключевым моментом здесь является то, что мы вызываем оболочку с определенными командами и передаем найденный файл в качестве аргумента $1. Если test -e /target-directory/"$1" терпит неудачу, значит, файл не существует, и в этом случае cp скопирует файл.
В общем случае можно использовать другие команды, если команда может проверить существование файл. Некоторые другие альтернативы:
/usr/bin/realpath -e /target-directory/"$1" > /dev/null || cp "$1" /target-directory stat >/dev/null /target-directory/"$1" || cp "$1" /target-directory/"$1"Прочитайте man cp и используйте опцию --no-clobber для cp.
Ваша исходная команда может быть переписана как:
find . -type f -exec bash -c 'test -e /target-directory/"$1" || cp "$1" /target-directory' sh {} \;
Ключевым моментом здесь является то, что мы вызываем оболочку с определенными командами и передаем найденный файл в качестве аргумента $1. Если test -e /target-directory/"$1" терпит неудачу, значит, файл не существует, и в этом случае cp скопирует файл.
В общем случае можно использовать другие команды, если команда может проверить существование файл. Некоторые другие альтернативы:
/usr/bin/realpath -e /target-directory/"$1" > /dev/null || cp "$1" /target-directory stat >/dev/null /target-directory/"$1" || cp "$1" /target-directory/"$1"Прочитайте man cp и используйте опцию --no-clobber для cp.
Ваша исходная команда может быть переписана как:
find . -type f -exec bash -c 'test -e /target-directory/"$1" || cp "$1" /target-directory' sh {} \;
Ключевым моментом здесь является то, что мы вызываем оболочку с определенными командами и передаем найденный файл в качестве аргумента $1. Если test -e /target-directory/"$1" терпит неудачу, значит, файл не существует, и в этом случае cp скопирует файл.
В общем случае можно использовать другие команды, если команда может проверить существование файл. Некоторые другие альтернативы:
/usr/bin/realpath -e /target-directory/"$1" > /dev/null || cp "$1" /target-directory stat >/dev/null /target-directory/"$1" || cp "$1" /target-directory/"$1"Прочитайте man cp и используйте опцию --no-clobber для cp.