Получение rsync отказы случайным образом

Если sedявляется вариантом, вы можете сделать:

sed -E ':a s/^([^ ]* )(.*),([^,]*$)/\1\2\n\1\3/; ta' infile

с учетом ввода ниже:

B 2,3,5,6
C 6,7
D 1,3,5,8
  1. Это ([^ ]* )захват первого столбца (при условии, что пробел является разделителем ); он захватитB (B , за которым следует пробел).
  2. Это (.*),фиксирует все до последней запятой; захватит2,3,5
  3. Это ([^,]*$)захватывает оставшуюся часть строки (т.е. :последнее поле после последней запятой каждый раз ); захватит6

    • поэтому \1\2\n\1\3будет выглядеть так, как показано ниже, при первом цикле -для первой строки:

      sed -E ':a s/^([^ ]* )(.*),([^,]*$)/\1\2\n\1\3/;q ;ta' infile 
      B 2,3,5
      B 6
      
    • следующий цикл -приведет к следующему результату:

      B 2,3
      B 5
      B 6
      
    • следующий запуск...
    • наконец, в последнем цикле -запуск первой строки будет выводиться, как показано ниже:

      sed -E ':a s/^([^ ]* )(.*),([^,]*$)/\1\2\n\1\3/ ;ta ;q' infile
      B 2
      B 3
      B 5
      B 6
      
    • Теперь прочитайте следующую строку и выполните тот же процесс, пока все строки не продолжатся и не закончатся.

1
10.07.2014, 23:54
1 ответ

Возможно, вы запускали несколько rsync параллельно. Если это так, то я думаю, что может произойти то, что параллельный rsync (или какой-либо другой процесс) удаляет временные файлы вашего rsync.

2
27.01.2020, 23:17

Теги

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