Вам просто нужно установить разделитель полей вывода (OFS
), например.:
awk '{ for (i=3; i<=NF; i++) $i*=2 } 1' FS=, OFS=, infile
Или используя вашу формулу:
awk '{ for (i=3; i<=NF; i++) $i = 2*(2*($i-1)+1) } 1' FS=, OFS=, infile
Выход:
A,22,2,4,6,8,10
G,26,10,12,14
X,28,20,40,20
1
в конце скрипта — это короткая -рука для{ print $0 }
На самом деле все очень просто.
У вас могут быть разделы с не -уникальными UUID — это не проблема, но когда вы их монтируете, ядро создает ссылку между уникальным узлом устройства в /dev
и указанной точкой монтирования, которая означает, что ни в коем случае чтение и запись не могут выполняться на разных устройствах.
И если вы окажетесь в подобной ситуации, когда, например. вы клонируете несмонтированный раздел, а затем пытаетесь смонтировать его с помощью UUID
, утилита монтирования смонтирует любой из разделов случайным образом , но вы всегда можете свериться с выводом mount
для проверки какое устройство фактически использовалось.
How does the kernel actually utilize these UUID's internally?
Нет. Ядро использует узлы устройств.
Is there a userspace interface for the UUID to device mapping (which is not necessarily the same as device to UUID)?
Проверьте ls -la /dev/disk/by-uuid
.
How does the kernel decide which block device to access and can this more or less spontaneously change over time, maybe due to certain events?
Когда у вас есть не -уникальные разделы, я могу себе представить, что ядро может использовать любой из них в любой момент времени, но только один раз (вы пытаетесь их смонтировать ).
What can happen to my machine / filesystems if I do not obey the simple rule of unique UUID's?
Он не взорвется, но я бы не рекомендовал сохранять эту конфигурацию. Клонируйте разделы и удалите целевой диск.