关于Ubuntu的故事或对Ubuntu的感慨及心情
-
ssfjhh
- 帖子: 1289
- 注册时间: 2007-11-08 21:23
- 来自: 中国
#1
帖子
由 ssfjhh » 2008-05-18 13:33
偶然看到有条有趣的命令banner(作用:将命令后跟的ASCII字符串以大字的方式显示输出),觉得很好玩,但是他的输出怎么是躺着的?
执行banner -w 20 hello之后的结果如下:
# #
##############
#
#
########
##
#######
#
# #
# ###
# #
##############
# #
##############
##
#######
#
# #
######
我想要的效果是这样的:
# # ####### # # #######
# # # # # # #
# # # # # # #
####### ##### # # # #
# # # # # # #
# # # # # # #
# # ####### ####### ####### #######
我该怎么办?

-
laborer
- 帖子: 1016
- 注册时间: 2005-10-25 11:15
-
联系:
#2
帖子
由 laborer » 2008-05-18 14:04
好久以前我写着玩的一个脚本
代码: 全选
$ cat hbanner
#!/bin/sh
banner -w $1 $2 | awk -v W=$1 '
BEGIN {FS=""; c[0]=" "; c[1]="*"; c[2]="#"; c[3]="@"}
{
for (i=1; i<=W; i++) b[i]=($i=="#" ? 1 : 0);
for (i=W-1; i>=2; i-=4) a[i]=a[i] c[b[i-1]+b[i]+b[i+1]];
}
END {for (i=W-1; i>=2; i-=4) print a[i]}
'
$ ./hbanner 44 HELLO
**@@@* *@@@****@@@*******#@ **@@@* **@@@* *##***#@#
@@@ @@@ @@@ * @@@ @@@ *@@ @@#
@@@ @@@ @@@ ## @@@ @@@ *@@* @@@
@@@******@@@ @@@****@@ @@@ @@@ @@@ @@@
@@@ @@@ @@@ @@@ @@@ @@@ @@@
@@@ @@@ @@@ @@@ @@@ @@@ *@@*
@@@ @@@ @@@ @ @@@ @ @@@ @ *@# #@#
###### #################### ############## ############## *###**
hreiser@oakland:~$ killall -9 wife
police@oakland:~$ sudo find / -user hreiser
court@oakland:~$ sudo mv /home/hreiser /jail/
court@oakland:~$ sudo usermod -d /jail/hreiser -s "/usr/sbin/chroot /jail/" hreiser
-
ssfjhh
- 帖子: 1289
- 注册时间: 2007-11-08 21:23
- 来自: 中国
#3
帖子
由 ssfjhh » 2008-05-18 14:16
laborer 写了:好久以前我写着玩的一个脚本
问题是怎么用呀?以后我想执行这条命令就得先把该脚本中的HELLO换成我自己想要的字符吗?
-
eexpress
- 帖子: 58428
- 注册时间: 2005-08-14 21:55
- 来自: 长沙
#4
帖子
由 eexpress » 2008-05-18 15:21
不如试试toilet
竖立的作用是什么啊?软件不提供这功能的话。估计要自己作阵列转换了。
● 鸣学
-
ssfjhh
- 帖子: 1289
- 注册时间: 2007-11-08 21:23
- 来自: 中国
#5
帖子
由 ssfjhh » 2008-05-18 15:29
eexpress 写了:不如试试toilet
竖立的作用是什么啊?软件不提供这功能的话。估计要自己作阵列转换了。
没前边列出的好看呀?这个命令的名字真是。。。