Портирование Linux на плату LPC2148

Esto sincronizará las entradas en /etc/shadowdesde el sistema local al sistema remoto (aquí llamadoremotehost)para todas las cuentas de usuario con UID > 1000 que existen en ambos sistemas:

getent passwd |
    awk -F: '$3>1000 {print $1}' |
    sort |
    join -t : -j 1 -o 2.{1..9} - <(getent shadow | sort) |
    ssh remotehost '
        cp -fp /etc/shadow /etc/shadow.old &&
        join -t : -j 1 -o 1.{1..9} - <(getent shadow | sort) |
            awk -F: "!h[\$1]++" - /etc/shadow >/etc/shadow.new &&
        : cp -f /etc/shadow.new /etc/shadow
    '

Recomiendo enfáticamente que divida el comando en partes para ver qué está haciendo en cada etapa de la canalización, y que NO elimine los dos puntos no -op de : cpen la última línea hasta que esté seguro de que está funcionando como usted espera.

Esencialmente

  1. Extraiga una lista de nombres de usuario de /etc/passwdcon UID > 1000
  2. Use esta lista para extraer las líneas correspondientes de/etc/shadow
  3. Copiar al sistema remoto
  4. Escriba los miembros de la nueva lista shadowque existen en la actual/etc/shadow
  5. Escriba líneas del antiguo /etc/shadowcuyos nombres de usuario aún no se hayan emitido
  6. Guarde las copias originales y nuevas deshadow(en lugares conocidos, para rescate de emergencia si es necesario)
  7. Instale el archivo fusionado resultante como/etc/shadow
1
09.12.2015, 09:05
1 ответ

Вывод можно передать в wc . Для подсчета строк можно использовать флаг -l . Запустите программу нормально и используйте канал для перенаправления на wc.

python Calculate.py | wc -l

Можно также перенаправить выходные данные программы в файл, скажем calc.out , и запустить wc для этого файла.

python Calculate.py > calc.out
wc -l calc.out
-121--14230-

Если гарантированно, что ваши строки поступят попарно с тремя полями на первом и 4 на втором (а вторая строка содержит значение «g»):

$ sed -n 'N;s/\n//;p' your_file \
   | sort -t';' -k7 \
   | perl -F';' -ane '$,=";";print @F[0..2],"\n";print @F[3..$#F]'

Часть sed соединяется каждые две последовательные строки, sort сортирует входные данные в седьмом поле как разделенные ; и, наконец, perl разбивает каждую строку на 2: одно с тремя полями и одно с четырьмя.

-121--87688-

Поскольку микросхема представляет собой устройство arm7, это должно быть возможно в целом. Но поскольку устройство имеет ОЧЕНЬ маленькое место хранения ram/flash и нет mmu, там не будет работать полнофункциональный linux. Посмотрите здесь: https://uclinux2015.hackpad.com/ Это похожий проект.

2
29.04.2021, 00:20

Теги

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