shell脚本打印国际象棋棋盘
程序员文章站
2023-02-15 23:46:49
本文实例为大家分享了shell打印国际象棋棋盘的具体代码,供大家参考,具体内容如下
代码如下:
#!/bin/bash
#set chess cell's...
本文实例为大家分享了shell打印国际象棋棋盘的具体代码,供大家参考,具体内容如下
代码如下:
#!/bin/bash #set chess cell's width read -p "please set the chess cell's width( two space width as unit ):" width if [[ $width =~ "^[0-9]+$" ]];then echo "wrong width setting, check your input and try again." exit fi let width=$width*2 #choose player's board cell color player="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 :" ;; *) ;; esac done if (( color1==color2 ));then echo "two player must choose different color, check your choice and try again." exit fi #print the chess board for (( 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 done done
参考文章:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。