Страница 2 из 2

синк определенной папки

Добавлено: 25 мар 2021, 16:32
broken
echo выводит пути нормально... Даже через пробел...
А rsync тупит
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ rsync -rlstvupx --delete --progress '/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/' '/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/'
sending incremental file list
./
666/

sent 72 bytes  received 23 bytes  190.00 bytes/sec
total size is 0  speedup is 0.00
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ синк
sending incremental file list
rsync: change_dir "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" failed: No such file or directory (2)
rsync: change_dir#3 "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(713) [Receiver=3.1.2]
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ 
#!/bin/bash

newPwd="/media/dma/5TB/hardD/"

bPwd=`pwd`
#pwd | sed 's/ /\\ /g' > $bPwd
cbPwd="$bPwd/"

newnewPwd="$newPwd${cbPwd:11}"
#echo "'$newnewPwd'"
#echo "'$cbPwd'"
#echo "'$cbPwd'" "'$newnewPwd'"

rsync -rlstvupx --delete --progress "'$cbPwd'" "'$newnewPwd'"

синк определенной папки

Добавлено: 25 мар 2021, 16:52
demonlibra
А если вместо этого просто указать абсолютный путь?

Код: Выделить всё

newnewPwd="абсолютный_путь
вместо

Код: Выделить всё

bPwd=`pwd`
#pwd | sed 's/ /\\ /g' > $bPwd
cbPwd="$bPwd/"

newnewPwd="$newPwd${cbPwd:11}"

синк определенной папки

Добавлено: 25 мар 2021, 17:03
broken
абсолютный путь будет меняться в зависимости от начального пути )
В смысле конечный в зависимости от начального....
А абсолют - неизменчив...

синк определенной папки

Добавлено: 25 мар 2021, 17:07
demonlibra
Хорошо.
И всё-таки, если подставить абсолютные пути, сценарий сработает?

синк определенной папки

Добавлено: 25 мар 2021, 17:14
demonlibra
Не портит ли всё параметр s в строке rsync

синк определенной папки

Добавлено: 25 мар 2021, 17:20
broken
:hm: с абсолютными такая же беда...
Скрипт со строкой

Код: Выделить всё

rsync -rlstvupx --delete --progress "'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/'" "'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/'"
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ синк
sending incremental file list
rsync: change_dir "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" failed: No such file or directory (2)
rsync: change_dir#3 "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(713) [Receiver=3.1.2]
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ 

синк определенной папки

Добавлено: 25 мар 2021, 17:20
slant
Попробуйте параметр "откуда/что" для rsync получать так:

Код: Выделить всё

src=`pwd`
src="$src/*"
Смысл тот же самый - "все в текущем каталоге", но через маску "*". Кстати, ругается у вас rsync потому, что на конце этого параметра оказывается "/". Причем даже не важно что он там двойной, в параметре "откуда", если вы хотите rsync'у скормить каталог, слеша вообще не должно быть на конце. Это в параметре "куда" он нужен.

синк определенной папки

Добавлено: 25 мар 2021, 17:24
broken

Код: Выделить всё

rsync -rlstvupx --delete --progress "'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777'" "'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/'"
Результат тот же (слеш конечный первый убрал)

синк определенной папки

Добавлено: 25 мар 2021, 17:26
demonlibra
Покажите результат выполнения команды из вашего последнего сообщения.
Кстати '" зачем? Достаточной "

синк определенной папки

Добавлено: 25 мар 2021, 17:29
broken

Код: Выделить всё

dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ синк
sending incremental file list
rsync: change_dir "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555" failed: No such file or directory (2)
rsync: change_dir#3 "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777//'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(713) [Receiver=3.1.2]
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ grep синк ~/.bashrc
alias синк="bash ~/.scripts/bsh/rsync.sh"
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ cat ~/.scripts/bsh/rsync.sh
#!/bin/bash

rsync -rlstvupx --delete --progress "'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777'" "'/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/'"
dma@dma-work:/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777$ 

синк определенной папки

Добавлено: 25 мар 2021, 17:30
demonlibra
Уберите лишние кавычки и будет счастье

Код: Выделить всё

rsync -rlstvupx --delete --progress "/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777" "/media/dma/5TB/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777/"

Код: Выделить всё

demonlibra@demonlibra-Extensa-2540:~$ rsync -rlstvupx --delete --progress "/mnt/data/Software_GNULinux/CAD/FreeCAD" "/mnt/data/123/"
sending incremental file list
FreeCAD/
FreeCAD/установка
            570 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=0/2)

sent 711 bytes  received 39 bytes  1,500.00 bytes/sec
total size is 570  speedup is 0.76
demonlibra@demonlibra-Extensa-2540:~$ rsync -rlstvupx --delete --progress "'/mnt/data/Software_GNULinux/CAD/FreeCAD'" "'/mnt/data/123/'"
sending incremental file list
rsync: change_dir "/home/demonlibra//'/mnt/data/Software_GNULinux/CAD" failed: No such file or directory (2)
rsync: change_dir#3 "/home/demonlibra//'/mnt/data/123" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(720) [Receiver=3.1.3]

синк определенной папки

Добавлено: 25 мар 2021, 17:30
broken
Если я их уберу, то будет проблема с пробелами
хм... отработал...

синк определенной папки

Добавлено: 25 мар 2021, 17:32
demonlibra
Если Вы их не уберете, то ничего не будет работать.
У Вас нет каталога, который содержит кавычки, а именно это ищет rsync.

синк определенной папки

Добавлено: 25 мар 2021, 17:34
rogoznik
broken писал(а):
25 мар 2021, 17:29
"'/mnt/hardD/dma/VirtualBox VMs/Windows/MC-89/555/777'"
Зачем 2 пары кавычек? Убирай одну пару. Поставив вторую пару кавычек ты, тем самым, сказал это эти кавычки являются частью строки(в твоем случае пути)

синк определенной папки

Добавлено: 25 мар 2021, 17:37
demonlibra
И убирайте символы ', оставляя ", потому что иначе переменная не будет преобразована в своё значение.

синк определенной папки

Добавлено: 25 мар 2021, 17:48
broken
Всё! Всем спасибо за участие! Немного ошибся я в расчетах! Теперь работает!

Код: Выделить всё

#!/bin/bash

#Задаем неизменную часть конечного пути
newPwd="/media/dma/5TB/hardD"
#Получаем начальный путь
bPwd=`pwd`
#Добавляем к нему слеш
cbPwd="$bPwd/"
#Задаем конечный путь
newnewPwd="$newPwd${cbPwd:10}"
#Синхронизация от начального к конечному
rsync -rlstvupx --delete --progress "$cbPwd" "$newnewPwd"
 ! Сообщение из: Dja
Пометил как решение, но с оговоркой: для индивидуального случая!

синк определенной папки

Добавлено: 25 мар 2021, 17:54
demonlibra
И всё-таки, какое значение содержит переменная ${cbPwd:10}?

синк определенной папки

Добавлено: 25 мар 2021, 18:10
demonlibra
broken писал(а):
25 мар 2021, 18:00
Рабочий стол
Но Рабочий стол не единственный каталог, из которого будет запускаться сценарий?

синк определенной папки

Добавлено: 25 мар 2021, 18:11
broken
поскольку у меня
lrwxrwxrwx  1 dma dma      25 янв 30  2020  Видео -> /mnt/hardD/dma/Видео
lrwxrwxrwx  1 dma dma      33 янв 30  2020  Документы -> /mnt/hardD/dma/Документы
lrwxrwxrwx  1 dma dma      31 янв 30  2020  Загрузки -> /mnt/hardD/dma/Загрузки
lrwxrwxrwx  1 dma dma      37 янв 30  2020  Изображения -> /mnt/hardD/dma/Изображения
lrwxrwxrwx  1 dma dma      27 янв 30  2020  Музыка -> /mnt/hardD/dma/Музыка
то всё будет происходить оттуда... Стало быть /mnt/hardD будет отсекаться

Рабочий стол был лишь примером для пробела. Он вообще не будет трогаться.

синк определенной папки

Добавлено: 25 мар 2021, 19:16
Dja
Так же не лишним будет
WWolf писал(а): @broken --dry-run
WWolf писал(а): покажет всё что будет делать, без реального исполнения