用shell做制报表

运行效果:

这里写图片描述
代码:

#!/bin/bash
table=""
#设置行,可以是表头,也可以是表格内容。
#如果是表格内容,“—”表示空值
function setRow(){
    value=$*
    table=${table}"|${value// /#|}#|\n"
}

#行分隔线
#入参:表格的列数。如表格有5列,则入参为5
function splitLine(){
    local num=`expr $1 + 2`
    split=`seq -s '+#' $num | sed 's/[0-9]//g'`    # 生成连续个的+#
    table=${table}"${split}\n"
}

#绘制表格
#入参:table
function setTable(){
    echo -e $1|column -s "#" -t|awk '{if($0 ~ /^+/){gsub(" ","-",$0);print $0}else{print $0}}'
}
if [ "$SHLVL" -eq "2" ]
then
   table=""
    splitLine 3
    setRow "姓名" "性别" "年龄"
    splitLine 3
    setRow "Tom" "male" "10"
    setRow "Nacy" "female" "-"
    splitLine 3
    setTable ${table}
fi
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
### 回答1: Shell是一种命令行解释器,它可以解释用户输入的命令并将其转化为计算机可以执行的指令。Shell可以用来管理文件、运行程序、处理文本等等。在Linux和Unix系统中,Shell是用户与操作系统交互的主要方式。 ### 回答2: Shell是一种计算机操作系统的核心部分,用于与操作系统进行交互并执行命令。它是用户与计算机之间的界面,提供了一种命令行或图形化界面的方式,使用户能够操纵计算机系统。 首先,Shell用于执行命令。用户可以通过输入命令来告诉计算机系统要执行的操作,例如创建、删除、复制文件,运行程序等。用户可根据需要使用Shell内置的命令,也可以自定义命令。 其次,Shell还可以进行脚本编程。用户可以编写一系列的命令,将其保存为一个脚本文件,然后通过Shell来运行该脚本。这样可以简化重复性的任务,提高工作效率。 此外,Shell还提供了许多功能和工具,如文件管理、输出重定向、管道等。用户可以使用Shell来管理文件和目录,将命令的输出结果保存到文件中,或者将多个命令连接起来,以实现更复杂的操作。 总而言之,Shell是用户与计算机系统进行交互的界面,通过输入命令或编写脚本来执行各种操作。它提供了丰富的功能和工具,使用户可以更方便地管理和操作计算机系统。 ### 回答3: Shell是一种用于与计算机操作系统进行交互的命令行解释器。它充当了用户与操作系统之间的桥梁,使用户能够通过输入特定的命令来执行各种系统操作。 首先,shell可以用于运行操作系统提供的各种命令。通过输入合适的命令,用户可以创建、复制、删除文件和文件夹,修改文件权限,搜索文件,查看文件内容等。此外,shell还可以运行编译器、解释器和其他应用程序,以便用户可以在命令行环境下进行程序开发和执行。 其次,shell还支持一些高级功能,如命令行脚本编程。用户可以编写一系列命令,并将其保存在一个脚本文件中,然后通过执行该脚本文件来自动完成一系列任务。这种自动化处理可以提高效率,并减少人工操作的错误。 此外,shell还提供了许多其他的功能和特性,例如环境变量的管理和配置、输入输出重定向、管道、通配符等。这些功能能够帮助用户更好地利用操作系统的各种功能和资源,并简化复杂的操作过程。 总的来说,shell是一种非常强大而灵活的工具,用于与操作系统进行交互和控制,可以帮助用户完成各种系统操作、程序开发和自动化处理任务。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

适当喝点

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值