Ваша ошибка не воспроизводится для меня:
$ cat test.sh
#!/bin/bash
rsnos () {
local dest_server="dsp"
local source_path="/home/kenan/django/event_project/"
local dest_path="${dest_server}:/home/kenan/www"
local exclude_all="--exclude={'.git','env','secrets.json','.vscode','static','event_project/wsgi.py','manage.py'}"
local exc_gev="--exclude={'.git','env','.vscode'}"
local exc_gevs="--exclude={'.git','env','.vscode','static'}"
local log_rsync="--log-file /home/kenan/rsync.log"
rsync -e \"ssh\" -a ${exclude_all} ${source_path} ${dest_path} ${log_rsync} --stats
}
Когда я запускаю его, сначала я извлекаю файл из своей оболочки, так как файл не вызывает саму функцию. Затем я бегу от своей раковины.
$ . test.sh
$ rsnos
rsync: failed to open log-file /home/kenan/rsync.log: No such file or directory (2)
Ignoring "log file" setting.
ssh: Could not resolve hostname dsp: nodename nor servname provided, or not known
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at /BuildRoot/Library/Caches/com.apple.xbs/Sources/rsync/rsync-52/rsync/io.c(453) [sender=2.6.9]
Очевидно, что на самом деле я не могу сделать rsyn c, но я не получаю никаких ошибок по поводу функции