заменить запятую в определенном значении столбца

Вы можете попробовать воспользоваться командой sendkey, используя -monitor stdio. Хотя, по-видимому, опция -отображение none -serial mon:stdio должна передать Ctrl + c гостю.

Также можно создать сокет монитора , например:

qemu -display none -monitor unix:/tmp/qemu-monitor,server,nowait

А затем, подключившись к монитору, использовать sendkey с сокатом , например:

socat - UNIX-CONNECT:/tmp/qemu-monitor

Теперь вы можете отправить свои ключи, например:

(qemu) sendkey ctrl-c
sendkey ctrl-c

0
30.07.2014, 01:26
3 ответа

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

 sed 's/,//g' filename
0
28.01.2020, 02:37

Я бы использовал только sed:

sed 's/,//g' filename
0
28.01.2020, 02:37

Вы можете использовать awk:

$ awk -F'|' '{sub(",","",$(NF-1))}1' OFS='|' file
140121059|01/01/201400:00:45|[1390]|[387]|17.64|10
140121060|01/01/201400:00:46|[1112]|[867]|26.46|10
140121062|01/01/201400:00:47|[182]|[13]|4117.60|10
140121065|01/01/201400:00:48|[1088]|[385]|1147.04|10

$(NF-1) относится к предпоследнему полю, мы заменяем запятую только в этом поле.

Если вы хотите удалить запятые во всех полях, вы можете использовать tr:

$ <file tr -d ',' > out_file 
2
28.01.2020, 02:37

Теги

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