shell 循环输出2以内的倍数 (多种方法)

循环100以内2的倍数 输出10给换行换颜色

#!/bin/bash

n=0  							变量n的作用是换行
k=30 							变量k的作用是给字体变颜色
for i in `seq 2 2 100`  		循环每次循环把变量赋值给i seq 2 2 100 简单理解就是从2开始每次加2到100结束  
do
n=$[$n+1]							每循环一次n就加1
echo -ne "\e[$[$k]m $i \e[0m"		$k是字体颜色的值  输出 $i  \e[$[$k]m 和 \e[0m 是转义序列,用于设置和重置字体颜色。
	if [[ $[$n%10] == 0 ]]; then   	这里判断循环了10次就输出一个 空
    	echo " "  					输出一个空格,然后换行。
		k=$[$k+1] 			 如果已经打印了10个数字,那么就使 k 的值加1,这样下一个数字就会有一个新的颜色。
	fi
done

效果就是上面图片的样子了。

循环100以内2的倍数 不换行简单版

#!/bin/bash
k=40 					这个变量的作用是设置字体的颜色
for i in `seq 2 2 100`  循环每次循环把变量赋值给i seq 2 2 100 简单理解就是从2开始每次加2到100结束  
do

	if [[ $k == 47    ]];then 	它会判断 k 的值是否等于47等于47就执行下面的代码
	k=$[$k -  7 ]				如果 k 的值等于47,那么就使 k 的值减7。这是为了确保颜色的值不会超过终端所能显示的最大值。
	fi
	echo -e  "\e[$[$k];37m $i \e[0m" 打印出一个带有颜色的数字。$k是字体颜色的值  输出 $i
	k=$[$k+1] 						  k 的值加1,这样下一个数字就会有一个新的颜色

done

在这里插入图片描述
效果就是上面图片的样子了。

娱乐

一个好玩的根据上面这个代码的结果我们把相同颜色的数字拿出来一起输出
在这里插入图片描述
大致就是上面的样子 下面的是代码

#!/bin/bash
c=41		
color=41	
for x in `seq 1 1 6`
do	
	echo 
	for i in `seq 2 2 100`
	do

		s=`echo  -e  "\e[$[$color];37m  $i \e[0m"`	
	
	 	if [[ $color == 47  ]];then
                color=$[color-7]
        fi

		
		if [[ $color == $c ]];then
			echo  -n $s
	
		fi
			color=$[$color+1]
	
		if [[ $i == 100   ]];then
			color=41
		fi
	done
	
echo 
c=$[$c+1]
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值