Bash для отправки значения переменной в csv?

Убедитесь, что на сервере установлена ​​та же версия iperf.

У меня было такое же сообщение, когда я запускал iperf3на сервере и пробовал команду iperfна клиенте.

Что помогло, так это установить iperf3на клиенте и запустить его.

1
20.05.2021, 15:47
3 ответа

Использованиеawk:

awk -F"[=' ]" -v OFS=, '
$1=="hostname"{ hn=$5; next }
!hdr && hn    { print "Hostname", "Variable", "Value"; hdr=1 }
NF   && hn    { print hn, $1, $5 }' infile >output.csv

с -F"[=' ]", мы определили любой из символов =, 'и пробела в качестве разделителей полей, поэтому awk разделит строки на поля на основе этих разделителей.

с OFS=,, вывод генерируется в полях, разделенных запятыми, для создания простого CSV-файла,измените это на некоторые другие символы в зависимости от ваших потребностей.

2
28.07.2021, 11:30

Ответ почти такой же, как у @αғsнιη. Я использую блок BEGINдля записи заголовка и назначение $0 = ""для очистки строки, когда она содержит имя сервера.

awk -F"[= ']" -vOFS=, 'BEGIN {print "Hostname", "Variable", "Value"} $5~/^server[0-9]+$/ && h=$5 {$0 = ""} $0!~/^$/ {print h, $1, $5}' data
0
28.07.2021, 11:30

Использование Миллера и запуск

<input.txt sed "s/'//g" | mlr --x2c --ips "=" clean-whitespace then reshape -r "var" -o variable,value

у вас будет

hostname,variable,value
server1,var1,abc
server1,var2,xyz
server1,var3,def
server7,var1,ghi
server7,var2,mno
server7,var3,jkl
1
28.07.2021, 11:30

Теги

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