Использование datamash
иbash
:
n=($(datamash -W check < foo)); datamash -W sum 1-${n[2]} < foo
Выход:
1332 1665 1998
Как это работает:
datamash -W check < foo
выводит строку "3 строки, 3 поля" .
n=($(datamash -W check < foo))
загружает эту строку в массив $n
. Нам нужно количество полей, которое будет ${n[2]}
.
datamash -W sum 1-${n[2]} < foo
сделает все остальное.
Это также можно сделать с оболочкой POSIX , используя сложную printf
строку форматирования вместо массива, но это сложнее:
datamash -W sum 1-$(printf '%0.0s%0.0s%s%0.0s' $(datamash -W check < foo)) < foo
Это также можно сделать с помощью инструментов оболочки:
datamash -W sum 1-$(head -1 foo | wc -w) < foo
После перепробования многих решений и различных инструментов для создания загрузочного USB-ключа для переустановки Windows на моем ноутбуке. Наконец-то я нашел замечательную и замечательную статью Создание загрузочного USB-накопителя UEFI Windows 10 с помощью Linux , которая решила проблему, и я могу успешно создать загрузочный ключ.