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

На основе ответа jordanm:

1. Передача всех данных через один экземпляр wc -l

    , если [«$ #» -gt 0]
    тогда
    cat -- «$ @» | wc -l
    еще
    эхо 0
    fi
    

    или

    cat --/dev/null «$ @» | wc -l
    
    • Используйте -- «$ @» для защиты от имен файлов, начинающихся с - .
    • Избегайте вызова cat без аргументов, поскольку это приведет к считыванию стандартных входных данных.
    • Обратите внимание, что cat a _ single _ file | нечто является классической формой страшного Бесполезного использования Cat , но cat один _ или _ несколько _ файлов | что-то может быть в порядке (хотя он все еще не идеален).

    2. Полагайтесь на то, что wc выдает «общую» строку

      , если [«$ #» -gt 0]
      тогда
      wc -l --/dev/null «$ @» | tail -1
      еще
      всего эхо 0
      fi
      

      или

      wc -l --/dev/null/dev/null «$ @» | tail -1
      
      • Обратите внимание, что wc выдает итоговую строку только если он имеет по крайней мере два аргумента имени файла.

      3. Используйте awk без использования wc

        , если [«$ #» -gt 0]
        тогда
        awk 'END {print NR}' -- «$ @»
        еще
        эхо 0
        fi
        

        или

        awk 'END {print NR}' --/dev/null «$ @»
        

        Предупреждение:

        Приведенные выше команды не дадут одинаковый ответ если любой из файлов заканчивается символом, отличным от newline.

        -121--84407-

        Хорошее управление IP-адресами?

        Linux не проверяет, используется ли IP-адрес путь в Windows.

        RedHat/CentOS использует dhclient в качестве клиента DHCP по умолчанию, который также не проверяет, используется ли IP-адрес, полученный от DHCP-сервера. Это (вероятно) предполагает, что DHCP-сервер был правильно настроен.

        Для выполнения аналогичной процедуры можно установить garp , но необходимо записать его в сетевые сценарии. Если да, то эквивалентом ArpRetureCount будет параметр -c .

        -121--145420-

        #!/bin/bash
        read -a header 
        cut --complement -f ${n} < <(tr -s ' ' '\t' <6)
        

        Но если вам это нравится, это может быть сделано «просто sed » (даже это не оптимально)

        sed "s/\S\+\s*//$(sed 's/\s\+/\n/g;1q' file | sed -n '/ddd/=')" file
        

        \S\+\s * - столбец Mean 1 (символ (ы), не являющийся пробелом, следует за некоторыми возможными местами).
        s/// - подстановка только числа -го вхождения образцов .
        s/\s\+/\n/g - Замените каждое пространство или блок мест на \n ewline только для
        1q - первой строки (заголовка). Таким образом, его столбец заголовка преобразуется в строки.
        sed -n '/ddd/= - номер строки печати, где образцы exist = = No. столбца

        3
        10.12.2017, 00:21
        0 ответов

        Теги

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