shell中如何将中文进行左对齐右对齐,awk的printf不好使啊

 我来答
我叫熊拍拍
2012-12-17 · TA获得超过210个赞
知道小有建树答主
回答量:101
采纳率:0%
帮助的人:97.2万
展开全部
左对齐 sed 's/^[ \t]*//' your_file

右对齐 sed -e :a -e 's/^.\{1,79\}$/ &/;ta' your_file

居中 sed -e :a -e 's/^.\{1,78\}$/ &/;ta' -e 's/\(*\)\1/\1/' your_file

其中右对齐与居中均已80个字符为宽度
直接复制到命令行即可
luneng8183
2012-12-06 · TA获得超过902个赞
知道小有建树答主
回答量:606
采纳率:100%
帮助的人:514万
展开全部
$ ./xx8
|到目前您已帮助了250715位网友. |
| 到目前您已帮助了250715位网友.|

$ cat xx8
#!/bin/bash

awk 'BEGIN{
str = "到目前您已帮助了250715位网友."

printf("|%-40s|\n", str);
printf("|%40s|\n", str);
}'
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沧海中一笑
2012-12-07 · 超过20用户采纳过TA的回答
知道答主
回答量:57
采纳率:100%
帮助的人:51.1万
展开全部
linux-hg:~ # cat test
中文 英文 德语
linux-hg:~ # awk '{printf ("%8s\n",$1) }' test
中文
linux-hg:~ #
printf加个括号就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式