Linux centos7 bash编程(小练习)

一、打印九九乘法口诀

这一个for循环嵌套的小练习,难度不大。提供一种写法,供参考:

#!/bin/bash

文件名:99table.sh

打印输出九九乘法口诀表

for i in {1..9}

do

for ((j=1;j<=$i;j++))

do

echo -ne "j\*i=$[j*i]\t" #用制表符分隔,表格整齐

done

echo

done

编写为文件,方便保存。执行后效果:

如果写为一行,可以直接在命令行执行:

for i in {1..9}; do for ((j=1;j<=i;j++));do echo -ne "j*i=[j*i]\t";done;echo;done

二、打印黑白国际象棋盘

可以调整背景颜色,打印不同的对比色!

#!/bin/bash

#打印输出黑白国际象棋盘

for i in {1..8}

do

for j in {1..8}

do sum=$[i+j]

if [ $[sum%2] -eq 0 ];then

echo -ne "\e[40m \e[m"

else

echo -ne "\e[47m \e[m"

fi

done

echo

done

执行效果:

写为一行,可以直接在命令行执行:

for i in {1..8}; do for j in {1..8};do sum=\[i+j\]; if \[ [sum%2] -eq 0 ];then echo -ne "\e[40m \e[m"; else echo -ne "\e[47m \e[m";fi;done;echo;done

修改40m和47m为不同数值,可获得不同效果。

41m ---> 45m

42m --->46m

小结

编程时注意代码结构的正确;训练时可以多设置一些参数,查看效果。

可以采用不同的思路编程,为了达到目标,多练习,多动手!

相关推荐
RussellFans24 分钟前
Linux 文本三剑客(grep, awk, sed)
linux·运维·服务器
傍晚冰川32 分钟前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
猴哥聊项目管理33 分钟前
什么是DevOps智能平台的核心功能?
运维·项目管理·制造·devops·软件·项目管理软件·软件分享
Chuncheng's blog37 分钟前
CentOS 7如何编译安装升级gcc至7.5版本?
linux·运维·c++·centos
听风吹等浪起38 分钟前
CentOS在vmware局域网内搭建DHCP服务器【踩坑记录】
linux·服务器·centos
明月看潮生1 小时前
青少年编程与数学 01-011 系统软件简介 04 Linux操作系统
linux·青少年编程·操作系统·系统软件·编程与数学
月初,1 小时前
MongoDB学习和应用(高效的非关系型数据库)
学习·mongodb·nosql
aitav01 小时前
⚡️ Linux Docker 基本命令参数详解
linux·运维·docker
Nazi61 小时前
docker数据管理
运维·docker·容器
casual_clover2 小时前
Android 之 kotlin 语言学习笔记四(Android KTX)
android·学习·kotlin