Я работаю над сценарием инвентаризации, который будет использоваться, который будет собирать компьютерную информацию на многих устройствах, и я ищу лучший способ получить файл csv с информацией
В настоящее время у меня есть это:
touch ZI_IT_Inventory_output.txt
touch ZI_IT_Inventory_output.csv
user_whoami=$(whoami)
user_lscpu=$(lscpu | sed -nr '/Model name/ s/.*:\s*(.*) @ .*/\1/p' )
user_lshw=$(lshw -C display |grep 'product' | cut -f 2 -d":" | awk '{$1=$1}1' )
user_how_many_gpu=$(lspci | grep VGA | wc -l)
user_how_many_cpu=$(lscpu | sed -nr '/Model name/ s/.*:\s*(.*) @ .*/\1/p' | wc -l)
user_how_much_ram=$(lshw -c memory |grep 'size' | cut -d':' -f2- | cut -d' ' -f2)
echo $user_whoami>>ZI_IT_Inventory_output.txt
echo $user_lscpu>>ZI_IT_Inventory_output.txt
echo $user_lshw>>ZI_IT_Inventory_output.txt
echo $user_how_many_gpu>>ZI_IT_Inventory_output.txt
echo $user_how_many_cpu>>ZI_IT_Inventory_output.txt
echo $user_how_much_ram>>ZI_IT_Inventory_output.txt
При этом создается текстовый файл следующего содержания:
ziadmin
Intel(R) Core(TM) i7-6700 CPU
HD Graphics 530
1
1
8GiB
Как лучше всего я мог бы вывести это как файл csv, где все данные находятся в той же строке, но в разных столбцах