我正在研究 Unix 构建后期文档流程,我有一个 CSV 文件需要为每个新构建填写和上传,以确保服务器按照原始请求构建。
CSV 文件中已有一些内容,现在我必须将 Unix 命令输出重定向到该 CSV 文件中的特定行和列。有办法实现吗?
在上面的 CSV 文件中,我必须添加服务器信息,该信息应该是 G13 列中的某种 shell 脚本。
我已经创建了脚本,但这是创建一个新的 CSV,而不是特定的行或列。不确定如何准确地将命令输出重定向到相应的列和行。
脚本:
echo -e "$(cat /etc/redhat-release | cut -d ' ' -f1-5)" >> /tmp/test.csv
echo -e "$(cat /etc/redhat-release | awk '{ print $7 }')" >> /tmp/test.csv
echo -e "$(uname -r)" >> /tmp/test.csv
echo -e "$(dmidecode | grep Product | head -n 1 | cut -d: -f 2)" >> /tmp/test.csv
echo -e "$(grep -c processor /proc/cpuinfo)" >> /tmp/test.csv
echo -e "$(getconf -a | grep PAGES | awk 'BEGIN {total = 1} {if (NR == 1 || NR == 3) total *=$NF} END {print total / 1024" kB"}')" >> /tmp/test.csv
echo -e "$(fdisk -l | grep Disk | grep -i gb | grep -v mapper)" >> /tmp/test.csv
echo -e "" >> /tmp/test.csv
echo -e "$(swapon -s | grep dev | cut -d' ' -f1)" >> /tmp/test.csv
echo -e "$(swapon -s | grep dev | awk '{ print $3 }')" >> /tmp/test.csv
echo -e "$(hostname -i)" >> /tmp/test.csv
echo -e "$(/sbin/ifconfig eth0 | grep 'inet addr:' | cut -d: -f4)" >> /tmp/test.csv
echo -e "$(route -n|grep "UG"|grep -v "UGH"|cut -f 10 -d " ")" >> /tmp/test.csv
我已经包含了我手动填写的示例 csv 文件,
任何指导和帮助将不胜感激。
编辑:
CSV 文件是不变的,并且值始终重定向到相同的行和列。