Исключить Rsync со списком, содержащим полный путь?

Решено:

Ошибка в файле ~/.inputrc, поскольку речь шла о консоли в приглашении, терминале xterm и mate -, это должно быть проблема с bash. Конечно. Под оскорбительной строкой в ​​.inputrc:

i#{{{ Some user comments...

Приведенная выше строка полностью отключила вывод ¨i¨ и ключ.... И не повлияло ни на какие другие клавиши, которые были привязаны к.inputrc. Таким образом, диагностика была выполнена только сразу после двухэтапного :, как было предложено здесь, на stackexchange :, ищите строку, начинающуюся с i в профиле.bash _или.bashrc или.inputrc. Сделанный.

0
11.05.2021, 16:35
1 ответ

Пути к файлам в вашем исключенном файле должны относиться к корневому каталогу передачи /var/log/hosts/, поэтому пути в list.txtдолжны выглядеть следующим образом:

/p_rsyslog/2021/05/11/14.log
/loggerarchive/2021/05/11/14.log
/node1/2021/05/11/14.log
/node2/2021/05/11/14.log
/node3/2021/05/11/14.log

Обратите внимание, что эти пути начинаются с ведущего /, чтобы считаться полными путями. Без ведущего /они сопоставляются с последним компонентом пути, например. node1/2021/05/11/14.logбудет соответствовать

/var/log/hosts/node1/2021/05/11/14.log

, а также

/var/log/hosts/another_dir/node1/2021/05/11/14.log

что, вероятно, нежелательно.

Ты можешь бежать

find /var/log/hosts/ -type f -mmin -30 | sed 's#^/var/log/hosts##' > list.txt

, чтобы удалить префикс /var/log/hostsиз каждой строки в вашем файле исключения.

Обратите внимание, что параметр -rуже включен в -a, вы можете удалить его в своей команде rsync.

1
28.07.2021, 11:33

Теги

Похожие вопросы