怎么在shell中打印国际象棋棋盘
短信预约 -IT技能 免费直播动态提醒
这篇文章将为大家详细讲解有关怎么在shell中打印国际象棋棋盘,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
代码如下:
#!/bin/bash#set chess cell's widthread -p "Please set the chess cell's width( two space width as unit ):" widthif [[ $width =~ "^[0-9]+$" ]];then echo "wrong width setting, check your input and try again." exitfilet width=$width*2#choose player's board cell colorplayer="player1"PS3="Which color do you want to set for $player :"select choice in red green yellow blue purple cyan white;do case $REPLY in [1-7]) if [[ $player == player2 ]];then declare -i color2=$REPLY break else declare -i color1=$REPLY fi player="player2" PS3="Which color do you want to set for $player :" ;; *) ;; esacdoneif (( color1==color2 ));then echo "two player must choose different color, check your choice and try again." exitfi#print the chess boardfor (( i=0; i<4; i++ )); do for (( j=0; j<$width/2; j++ ));do for (( k=0; k<4; k++ ));do echo -e "\e[4${color1}m$(printf %${width}s)\e[0m\c" echo -e "\e[4${color2}m$(printf %${width}s)\e[0m\c" done echo done for (( j=0; j<$width/2; j++ ));do for (( k=0; k<4; k++ ));do echo -e "\e[4${color2}m$(printf %${width}s)\e[0m\c" echo -e "\e[4${color1}m$(printf %${width}s)\e[0m\c" done echo donedone
关于怎么在shell中打印国际象棋棋盘就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341