linux中shell自动对齐代码,linux – Shell编程 – 如何printf像表一样对齐我的输出?...
如何printf像表格一樣對(duì)齊我的輸出?
Title Author
BaokyBook Baoky2
Use basename commandUse basename command .. Baoky
我的部分代碼是這樣的
titlelength=${#title};
首先我獲得標(biāo)題長(zhǎng)度,然后我就像這樣打印
titlespace=`expr 60 - titlelength`;
printf "%s %${titlespace}s\n" "$title" "$author"
但是對(duì)齊是不對(duì)的,我如何使其良好對(duì)齊
在回答以下答案:
在做出改變之后
我所有的左邊都對(duì)齊了.它似乎不起作用.
解決方法:
最簡(jiǎn)單的方法是在固定寬度上打印標(biāo)題:
printf "%30s %s\n" "$title" "$author"
如果要確定最大寬度,則需要在執(zhí)行任何輸出之前讀取所有數(shù)據(jù).或者你可以簡(jiǎn)單地將輸出傳遞給列-t.或者,將標(biāo)題截?cái)酁樗x寬度(這種截?cái)嘧址募夹g(shù)是一種基礎(chǔ)):
printf "%30s %s\n" "${title:0:30}" "$author"
標(biāo)簽:shell,linux,sh
來(lái)源: https://codeday.me/bug/20190626/1289463.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的linux中shell自动对齐代码,linux – Shell编程 – 如何printf像表一样对齐我的输出?...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 1,008.392怎么读?
- 下一篇: 一分钟等于多少秒啊?