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から固定幅のファイルを作成する方法です。