在外壳中阻塞字符串的空间

用户名

我们如何使用printf命令在shell中为字符串阻塞特定的空间,例如result是

[email protected] 10
[email protected] 11
[email protected] 12
[email protected] 15

我们如何以正确的方式对齐此结果,因为我在编码中使用的命令是

printf $user$i $time

理想的结果是

[email protected]          10
[email protected]         11
[email protected]       12
[email protected]  15

我的代码如下-

    echo $h | cut -f$a -d" " 

`printf "\t${t[$a]}\t\t $hour:$min:$sec\n"` 
乔纳森·勒夫勒(Jonathan Leffler)

可能的脚本

while read -r user time
do
    printf "%-20s %s\n" "$user" "$time"
done <<'EOF'
[email protected] 10
[email protected] 11
[email protected] 12
[email protected] 15
EOF

样本输出:

[email protected]            10
[email protected]           11
[email protected]         12
[email protected]    15

%-20s可调节一点(%-17s%-18s)如果需要的话,但其基本思想是预留的空间适当数量和左对齐的字符串,然后由一个空白,然后“时间”。\n对换行是必要的; printf除非您要求添加新行,否则不会添加新行。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章