Ksh
如何在已列印輸出的左右列印
我有一個命令說
printf "%5s1"
,它的輸出是:1
如何列印已列印
2
的左側數字3
和右側數字1
。因此,輸出如下所示:213
所以,這裡有一個條件
1
已經使用 command 列印出來了printf "%5s1"
。我試過使用下面的命令,
printf "%5s1";printf "\r%4s2%1s3\n"
但這會覆蓋現有的輸出
1
,我得到低於輸出。2 3
假設我必須先使用,如何在不失去它
1
的情況下列印已列印數字的右側?我正在尋找類似的東西:printf``printf "%5s1"
printf "%5s1";printf "\r%4s2???\n"
left=$(tput cub1) right=$(tput cuf1) printf %5s1; printf '%s\n' "$left${left}2${right}3"
細節
tput cub1 move left one space tput cuf1 non-destructive space (move right one space)
只需顛倒您列印的順序並首先在右側列印您需要的字元串:
printf "%5s1";printf "3\r%4s2\n"