我正在尝试编写一个使用 printf 将字符串填充到特定宽度的 KornShell (ksh) 函数。
例子:
称呼
padSpaces Hello 10
输出
'Hello '
我目前有:
padSpaces(){
WIDTH=$2
FORMAT="%-${WIDTH}.${WIDTH}s"
printf $FORMAT $1
}
编辑:这本身似乎是有效的,但是当我在脚本中分配它时,它似乎失去了除了第一个空格之外的所有内容。
TEXT=`padSpaces "TEST" 10`
TEXT="${TEXT}A"
echo ${TEXT}
输出:
TEST A
我也愿意接受不使用 printf 的建议。我真正想要的是一种从 ksh 制作固定宽度文件的方法。