С sed
:
sed 's/^Question Nr\..*/\\item/; s/^\([A-Z] .*\)/\n\1/' file
s///
заменяет Question Nr.
на \item
аналогично команде sed
в вашем вопросе. A
до Z
, но только ту, за которой следует пробел. Вся эта строка заменяется на себя \1
, после чего следует новая строка \n
. Выход:
\item
Main proteins are in the lorem ipsun
A Lorem
B Cells
C Metoclom
D Cells
E Muscles
\item
Main proteins are in the lorem ipsun
A Lorem
B Cells
C Metoclom
D Cells
E Muscles
Все файлы включены по умолчанию, поэтому, если вы хотите включить все файлы, не передавайте никакие опции --include
или --exclude
.
Если вы используете шаблоны, rsync не обрабатывает файлы точек особым образом. Если вы хотите пропустить точечные файлы, вам придется явно использовать --exclude='.*'
.
Обратите внимание, что --include='.*'
включает только точечные файлы. Это шаблон оболочки, где .
означает саму себя, а *
означает «любая последовательность символов», а не регулярное выражение, где .
означает «любой символ», а *
означает «любое количество предшествующих символов или группа". Без какой-либо директивы exclude вы по-прежнему получаете все файлы, поэтому директива include просто бессмысленна, но если бы у вас были некоторые директивы exclude, --include='.*'
не означало бы «включить все файлы, включая файлы с точками», это означало бы только «включить файлы с точками». ” (и сам по себе он не будет рекурсивно обращаться к каталогам, имя которых не начинается с точки ).
Без указания каких-либо шаблонов включения или исключения, rsync
будет копировать скрытые файлы и каталоги.
rsync --stats --progress -av user@vm:/mnt/storage8/backups ~/data/backup_of_backups/