Затем вы запускаете chmod 777 directory
, затем изменяются только права доступа к самому каталогу , а не к файлам, содержащимся в нем.
Если вы хотите изменить разрешения для всех файлов, содержащихся в каталоге, включая файлы в подкаталогах и сами эти подкаталоги, используйте:
chmod -R 777 directory
-R
вызывает рекурсивный режим.
Обратите внимание, что обычно неразумно давать больше разрешений, чем необходимо. Обычные файлы обычно не должны иметь разрешения на выполнение, так как тогда они могут быть случайно вызваны bash
и содержимое (не -оболочки )будет загружено в bash
.
Если вы хотите установить разрешения только для каталогов в данном каталоге, вам нужно объединить chmod
с find
. Сначала используйте find
, чтобы найти все каталоги, а затем запустите chmod
для этих :
find directory -type d -exec chmod 777 {} +
Команда -type d
выполняет поиск каталогов.
-exec
указывает, что над найденными именами файлов должна быть запущена команда.
{}
заменяется найденным именем. +
указывает, что несколько имен могут быть заменены в командной строке перед ее выполнением.
У вас также есть файл с именем >
, который звучит как ошибка где-то в скрипте...
Не запускайтеrsync
(или любые команды Cygwin, в этом отношении )из CMD
или Powershell
. Запустите его из терминала Cygwin
Убедитесь, что Cygwin ssh
установлен и находится в PATH
перед любыми каталогами Windows. В противном случае вы в конечном итоге будете использовать Cygwin rsync
с Microsoft ssh
, а это не самое удачное сочетание. (Проверьте версию ssh
с помощью type ssh
и посмотрите, в каком каталоге она находится)