Как я могу перенаправить вывод rsync в каталог с отметкой даты и времени?

Это решение работает, если вы установили oh-my-zsh и включили плагин vi-mode . Решение на основе

Gilles xsel и zle у меня не сработало. Однако, поскольку я настроил vim для использования моего системного буфера обмена по умолчанию ( установить clipboard = un namedplus в ~ / .vimrc ), я просто набираю v в терминале в обычном режиме, чтобы открыть текущую команду в vim , а затем я могу скопировать ее в X-буфер обмена с помощью любой из команд vim yank.

-1
08.03.2019, 12:43
2 ответа

Насколько я понимаю, нет возможности создать каталог из команды rsync.

А как насчет того, чтобы написать такой простой bash-скрипт?:

#!/bin/bash
myDate="$(date +%F)"
mkdir -p "dest-dir/$myDate"
rsync -r source-dir dest-dir/"$myDate"
exit 0
1
28.01.2020, 05:08

Вы можете использовать команду:

rsync -avH <source> <dest>/"$(date +'%Y-%m-%d-%H-%M-%S')"/

Подстановка команды($(...))используется для создания имени нового каталога в <dest>как текущая дата + время.

Обратите внимание, что приведенная выше команда создаст каталог <source>в каталоге <dest>/<current_date-time>/. Если вы хотите просто скопировать содержимое из <source>, используйте :

.
rsync -avH <source>/ <dest>/"$(date +'%Y-%m-%d-%H-%M-%S')"/

(актуален /после<source>).

Как упоминалось в , у вас есть другой ответ , с некоторыми dateреализациями (, например. GNU date), спецификатор формата %Fможет использоваться для «даты в формате ISO», таким образом сокращая '%Y-%m-%d'. Обратите внимание, что %Fне указан в POSIX для утилиты date(, но многие реализации dateмогут использовать эту строку формата, поскольку они зависят от strftime(), которая будет ее поддерживать. ).

1
28.01.2020, 05:08

Теги

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