linux国际象棋 棋盘脚本.md(含脚本注释,查看更直观)
最终效果:
题目:编写脚本,实现打印国际象棋棋盘
路径:(仅作者) PDF:D:\Download_SD-Date and Bak(D盘 下载)\学习资料\pdf文件\基础知识\15SHELL脚本编程进阶.pdf
? 15SHELL脚本编程进阶.pdf
? 5、编写脚本,实现打印国际象棋棋盘
视频:(仅作者)17、18天
?
逻辑:(详见代码注释)
1、循环[for done] 深浅 格子。
2、简化 嵌套 第二层 循环[for done]。
3、判断命令[if else] 的引用,实现 首行 与第二 行 格子的交替
总结:(大纲)-------第一级(行)循环 >>> 第二级的(列)循环 >>> 二级循环包含(if else)两个二级 判断 循环
查看脚本:(命令)
[[email protected]_uscwifi_cn ~]# cat chess.sh
cat chess.sh
脚本内容:
#!/bin/bash
#
#********************************************************************
#Author: quansen
#QQ: 1955346284
#Date: 2019-08-25
#FileName: chess.sh 国际象棋
#URL: http://www.uscwifi.cn
#Description: The test script
#Copyright (C): 2019 All rights reserved
#********************************************************************
#背景为 浅色 的空格 *2
YELLO_BACKGROUND_SPACE_x2=‘\033[0;43m \033[0m‘
#背景为 绿色 的空格 *2
GREEN_BACKGROUND_SPACE_x2=‘\033[0;42m \033[0m‘
#简化变量名
Y_BG_S_x_0=${YELLO_BACKGROUND_SPACE_x2}
G_BG_S_x_0=${GREEN_BACKGROUND_SPACE_x2}
#第一层for 循环 8次 $i(行);做
for i in {1..8};do
#如果 $i 行数为奇数(除以二,余数为1);就
if [ $[${i}%2] -eq 1 ];then
{
#第二层循环1 $j(列) 4列;做
for j in {1..4};do
#打印变量 浅色空格X2
echo -en "${Y_BG_S_x_0}"
#打印变量 绿色空格X2
echo -en "${G_BG_S_x_0}"
done
}
#如果不是(if判断),那么 (如果不是奇数 ,是偶数,那么)
else
{ #第二层循环2 循环循环 $j(列) 4列;做
for j in {1..4};do
#打印变量 绿色空格X2
echo -en "${G_BG_S_x_0}"
#打印变量 浅色空格X2
echo -en "${Y_BG_S_x_0}"
done
}
fi
echo
done
#打印作者 联系方式
echo -e "
#*******************************#
# #
#Author: *#
# \033[1;32mquansen\033[0m #*
# *#
#QQ: 599503255;\033[1;32m1955346284\033[0m #*
# #
#*******************************#
"
原文地址:https://blog.51cto.com/14451083/2432472
时间: 2024-11-05 19:31:34