当前位置: 首页 > news >正文

shell打印图案

打印如下图案

1
12
123
1234
12345
123456
1234567
12345678
123456789
12345678910
123456789
12345678
1234567
123456
12345
1234
123
12
1
#!/bin/bash
# 打印上半部分
for ((y=1;y<=10;y++))
dofor ((x=1;x<=$y;x++))do #取消换行,确保轴上数字落到同一行,如123echo -n $xdone
echo
done
# 打印下半部分
for y in {9..1}
dofor ((x=1;x<=$y;x++))doecho -n $xdone
echo
done

解析:
1
12
123
当y=1,x=1,即打印1
当y=2,x<=y=2,即打印12
当y=3,x<=y=3,即打印123
x轴负责打印数字,y轴负责换行

打印如下图案

         121232123432123454321234565432123456765432123456787654321234567898765432123456789
109876543212345678910987654321234567898765432123456787654321234567654321234565432123454321234321232121
#!/bin/bash# 上半部分
for ((i=1; i<=10; i++))
do# 打印前导空格for ((j=10; j>i; j--))doecho -n " "done# 打印递减数字for ((k=i; k>=1; k--))doecho -n "$k"done# 打印递增数字(从2开始)for ((l=2; l<=i; l++))doecho -n "$l"doneecho ""  # 换行
done# 下半部分
for ((i=9; i>=1; i--))
do# 打印前导空格for ((j=10; j>i; j--))doecho -n " "done# 打印递减数字for ((k=i; k>=1; k--))doecho -n "$k"done# 打印递增数字(从2开始)for ((l=2; l<=i; l++))doecho -n "$l"doneecho ""  # 换行
done

相关文章:

  • 常用的OceanBase调优配置参数
  • Maven 多仓库配置及缓存清理实战分享
  • 【Redis/1-前置知识】分布式系统概论:架构、数据库与微服务
  • vue的created和mounted区别
  • word嵌入图片显示不全-error记
  • Linux下制作Nginx绿色免安装包
  • 介绍一种直流过压保护电路
  • 中和农信创新引领“三农“金融服务新模式
  • vue实现气泡词云图
  • Elasticsearch增删改查语句
  • freeCAD 学习 step1
  • 金属工具制造企业如何做项目管理?数字化系统全面提升交付效率
  • vue的这两个特性:数据驱动视图 与 双向数据绑定的区别
  • 日志收集工具-logstash
  • Gartner企业技术参考架构学习心得
  • GPU架构对大模型推理部署到底有什么影响?
  • 86壳温湿度传感器:高温下工业生产的安全防线
  • 【C#】C++的回调函数和C#的事件委托在某些方面有相似之处
  • 土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测技术应用
  • spearman相关性 - 斯皮尔曼秩相关系数
  • wordpress网站关键词/sem和seo哪个工作好
  • 网站表单功能/软文发稿公司
  • kuler网站/地推放单平台
  • 专业做室内设计的网站有哪些/产品推广营销
  • 访问量大的网站选择多少流量的服务器何时/免费seo搜索优化
  • 常州做网站yongjiaweb/西安企业seo外包服务公司