printf +打印行(来自ksh脚本),行之间的空格相同

时间:2010-07-08 11:50:09

标签: ksh

我有来自print命令的以下行的示例(来自ksh脚本)

 first_name=raimondelita  last_name=plotanmkitus  Number_id=3574553442
 first_name=timratcel  last_name=plotiniues  Number_id=43
 first_name=tom  last_name=kot  Number_id=564

如何使用printf

打印(up)这样的行(向上)
first_name=raimondelita  last_name=plotanmkitus  Number_id=3574553442
first_name=timratcel     last_name=plotiniues    Number_id=43
first_name=tom           last_name=kot           Number_id=564

THX寻求帮助 耶尔

2 个答案:

答案 0 :(得分:0)

使用以下代码对齐20个字符:

printf("%20s", str);

在你的情况下,它可能更像是

printf("first_name=%15s last_name=%15s Number_id=%10s\n",
        first_name, last_name, Number_id);

答案 1 :(得分:0)

由于您没有显示代码,因此很难猜测您拥有数据的形式以及处理方式。但是,jdehaan's答案适用于ksh,稍作修改。您需要进一步修改以满足您的需求。

printf "first_name=%-15s last_name=%-15s Number_id=%10s\n" $first_name $last_name $Number_id