gpt4 book ai didi

string - KornShell Printf - 填充字符串

转载 作者:行者123 更新时间:2023-12-01 23:15:47 27 4
gpt4 key购买 nike

我正在尝试编写一个使用 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 制作固定宽度文件的方法。

最佳答案

你的功能对我来说很好用。您的作业不适用于等号周围的空格。应该是:

SOME_STRING=$(padSpaces TEST 10)

我也冒昧地替换了反引号。

您没有说明如何使用变量或如何获得所显示的输出。但是,您的问题可能是您需要引用变量。这是一个演示:

$ SOME_STRING=$(padSpaces TEST 10)
$ sq=\'
$ echo $sq$SOME_STRING$sq
'TEST '
$ echo "$sq$SOME_STRING$sq"
'TEST '

关于string - KornShell Printf - 填充字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1730183/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com