首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将.txt文件输出转换为shell脚本中的表格格式/ bash [非html表格格式]

如何将.txt文件输出转换为shell脚本中的表格格式/ bash [非html表格格式]
EN

Stack Overflow用户
提问于 2019-12-26 14:01:47
回答 2查看 1.9K关注 0票数 0

我想在bash脚本中将一个文本文件转换为MySQL类型的正确表格式。

现在,我将输出转储到一个文本文件table.txt中,然后逐行读取以按格式顺序打印。

还想打印文件的位置toatl路径

但我想要一个更好的解决方案。

代码语言:javascript
复制
#!/bin/bash
search_dir="$1"

path=$(ls -l $search_dir)

echo "$path" | awk -v OFS='\t''|''\t' 'BEGIN{print "          Owner         |      Size     |        Name     "}; {print"|" $3,  $5, $9 "\t""|"}' > table.txt
    

while IFS= read -r line; do
    echo "$line"
    echo "-----------------------------------------------------------------"
done < table.txt

EN

回答 2

Stack Overflow用户

发布于 2019-12-26 21:01:37

尝试将此示例作为模板:

代码语言:javascript
复制
#/bin/bash
header="Perm         D Owner  Group   Size Date         Name"
data=$(ls -l|sed 's/total.*//')
whiptail --title "Scrollbox" --scrolltext --msgbox "$header $data" 30 100
票数 0
EN

Stack Overflow用户

发布于 2020-10-05 12:46:53

使用printf (根据需要调整格式):

代码语言:javascript
复制
echo "$path" | awk -v 'BEGIN{print "          Owner         |      Size     |        Name     "}; {printf("|%-20s|%-20s|%-20s|\n", $3, $5, $9)}' > table.txt

如果您愿意,您也可以对标题使用相同的格式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59484405

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档