linux

如何利用printf命令在Linux中进行对齐输出

小樊
83
2024-09-07 10:28:25
栏目: 智能运维

在 Linux 中,你可以使用 printf 命令来格式化和对齐输出

  1. 左对齐:使用 - 标志
  2. 右对齐:默认情况下,文本是右对齐的。要实现这一点,只需指定字段宽度即可。
  3. 居中对齐:没有直接的方法可以实现居中对齐,但你可以通过计算左侧和右侧的空格数量来实现。

下面是一些示例:

  1. 左对齐:
printf "%-10s %-10s\n" "Name" "Age"
printf "%-10s %-10s\n" "Alice" "25"
printf "%-10s %-10s\n" "Bob" "30"

输出:

Name      Age      
Alice     25       
Bob       30       
  1. 右对齐:
printf "%10s %10s\n" "Name" "Age"
printf "%10s %10s\n" "Alice" "25"
printf "%10s %10s\n" "Bob" "30"

输出:

      Name         Age
     Alice          25
       Bob          30
  1. 居中对齐:
# 计算左侧和右侧的空格数量
left_padding=5
right_padding=4

# 输出表头
printf "%*s%*s\n" $left_padding "Name" $right_padding "Age"

# 输出数据
printf "%*s%*s\n" $left_padding "Alice" $right_padding "25"
printf "%*s%*s\n" $left_padding "Bob" $right_padding "30"

输出:

  Name   Age 
 Alice  25  
  Bob   30  

注意:在这个例子中,我们使用了 %*s 格式说明符,其中 * 表示从参数列表中获取宽度值。这样我们可以通过调整 left_paddingright_padding 变量来控制居中对齐。

0
看了该问题的人还看了