突然有个想法,用shell生成xml文件。现在开始:
#!/bin/bash
# Create By: hellowordomain
# Create Time: 20201227
tag_num='0'
# 结束一个tag,传输的第一个参数是要结束的tag的名称,且再之后的所有元素减少一个空格。
function end_tag(){
let tag_num=${tag_num}-1
add_tab;
echo '<\'$1'>'
}
# 添加计数器tag_number数量的空格方便格式标准化
function add_tab(){
for((i=1;i<=${tag_num};i++));
do
echo -n " ";
done
}
# 开始一个tag,传入的第一个参数是tag名称,且在之后的所有元素添加一个空格,直到读取到结束tag
function begin_tag(){
add_tab;
echo '<'$1'>'
let tag_num=${tag_num}+1
}
# 添加一个元素,传入前两个参数分别为元素的名称和值
function add_e(){
add_tab;
echo '<'$1'>'$2'<\'$1'>'
}
# 获取hostname
function get_hostname(){
hostname
}
# 创建XML文件
function create_XML(){
begin_tag OS
add_e hostname `hostname`
add_e uname_m `uname -m`
add_e uname_r `uname -r`
add_e uname_s `uname -s`
add_e uname_v `uname -v`
end_tag OS
}
# 主方法
function main(){
create_XML
}
main;