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

北京做网站的外包公司百度小程序注册

北京做网站的外包公司,百度小程序注册,软件代码大全,网站地图怎么做的一、引言 在 Linux 系统管理与自动化运维领域,Shell 脚本凭借其强大的灵活性与高效性成为必备技能。其中,输入输出处理与数据运算是 Shell 编程的核心基础,掌握这些知识能让脚本实现数据交互、文件操作及逻辑计算等关键功能。 二、输入输出核…

一、引言

在 Linux 系统管理与自动化运维领域,Shell 脚本凭借其强大的灵活性与高效性成为必备技能。其中,输入输出处理与数据运算是 Shell 编程的核心基础,掌握这些知识能让脚本实现数据交互、文件操作及逻辑计算等关键功能。


二、输入输出核心操作

2.1 重定向:精准控制数据流向

重定向用于改变命令的输入输出源,分为覆盖式与追加式两类:

覆盖式重定向(> / <)

# 将echo内容覆盖写入文件

echo "file1.txt" > file.txt

# 从文件读取内容作为命令输入

cat < file.txt

追加式重定向(>> / <<)

# 追加内容到文件末尾

echo "file2.txt" >> file.txt

# 多行内容追加(EOF分界符)

cat << EOF >> config.ini

[db]

host=127.0.0.1

port=3306

EOF

2.2 管道符:命令间的数据桥梁

管道符 | 用于将前一个命令的输出作为后一个命令的输入,实现流水线处理:

# 过滤环境变量中的SHELL信息

env | grep SHELL

# 统计当前目录文件数

ls -l | wc -l

2.3 后台执行:释放终端资源

& 符号可将命令置于后台执行,避免阻塞终端:

# 前台执行(阻塞4秒)

sleep 4

# 后台执行(立即返回)

sleep 10 &

# 查看后台进程

ps aux | grep sleep

2.4 EOF:动态生成格式化内容

EOF(End of File)用于在脚本中生成带格式的多行内容,支持自定义分界符:

# 生成请假条(注意EOF需顶格)

cat << EOF

=================请假条=================

尊敬的王老师:

        我因身体不适,需请假1天。

        请假人:张三 日期:2023-10-01

EOF

  • 技巧:使用 <<- 可自动忽略 EOF 前的制表符(Tab),方便代码缩进。

三、输出格式化:让信息清晰易读

3.1 echo:灵活的输出工具

  • 常用选项
    • -n:不自动换行
    • -e:启用转义字符(如 \n 换行、\t 制表符)

echo -e "姓名:张三\n年龄:25\t职位:运维工程师"

颜色控制
通过转义序列 \033[背景色;字体色m 设置颜色(结尾用 \033[0m 恢复默认):

echo -e "\033[41;37m 红底白字警告! \033[0m"

颜色代码表

颜色字体色(3x)背景色(4x)
黑色3040
红色3141
绿色3242
黄色3343

四、数据运算:让脚本动起来

4.1 整数运算:基础算术操作

  • 运算符+(加)、-(减)、*(乘)、/(除)、%(取余)
  • 计算方式
    • $((表达式)):最常用,支持变量与运算符

a=10

b=3

echo $((a * b + 5)) # 输出35

let 命令:直接对变量赋值

let "c = a * b + 5"

echo $c # 输出35

expr 命令:需转义乘号 *

expr $a \* $b + 5 # 输出35

4.2 赋值运算:简化变量操作

  • 复合赋值+=-=*=/=%=

a=5

a+=3 # 等价于 a=a+3,结果8

a*=2 # 等价于 a=a*2,结果16

 自增 / 自减++--(前置 / 后置不影响数值结果)

a=5 echo $((a++)) # 输出5,a变为6

echo $((++a)) # 输出7,a变为7

 

4.3 案例:鸡兔同笼问题

需求:已知头数 h 和脚数 f,计算鸡兔数量。
脚本

#!/bin/bash

h=$1 # 头数

f=$2 # 脚数

rabbit=$(( (f - 2*h) / 2 )) # 兔的数量

chicken=$(( h - rabbit )) # 鸡的数量

echo "鸡:$chicken 只,兔:$rabbit 只"

 执行

bash script.sh 30 88 # 输出:鸡:16 只,兔:14 只


 

http://www.dtcms.com/a/577505.html

相关文章:

  • GitHub 全方位指南(续):实战进阶与生态拓展​
  • 二十四、STM32的DMA
  • 新能源汽车高压系统“隐形守护者”:X电容、Y电容、支撑电容、共模电感与薄膜电容的关系全解析
  • OpenCV(二十一):HSV与HSL
  • 东莞seo建站优化方法做网站最小的字体是多少钱
  • Linux安装镜像initrd深度解析:从Lorax构建到故障排查
  • 基础篇:IoC(六):资源和资源加载器
  • Qt之元对象系统
  • 宿州网站建设设计公司海口可信的海南网站建设
  • Go Map 实现原理解析:从数据结构到核心机制
  • 百度做的网站国外可以打开吗软件开发过程五个步骤
  • 快速入门 - 开始使用 Azure Digital Twins Explorer 中的示例场景
  • 快速入门 - Azure 数字孪生的 3D 场景工作室(预览版)入门
  • 【OS zephyr】子系统logging
  • 哪里有免费建设网站企业解决方案ppt
  • Android内核进阶之获取PCM状态snd_pcm_status:用法实例(八十三)
  • 建设银行网站用户登录网页类界面图片
  • 【产品调研】MATB-II 软件用户指南总结
  • 程序开发的步骤东莞关键词排名seo
  • 重装系统后,恢复mysql的方法
  • 年化波动率匹配原则在ETF网格区间选择中的应用
  • 智慧公厕系统单机版与联网版有哪些区别
  • 华为技术有限公司 C语言编程规范
  • 新买的硬盘格式化后容量为啥缩水啦?
  • 【Ros2学习】服务-客户端模式
  • 网站建设的新闻重庆建网
  • 数字货币时代网络域名的价值评估
  • 帆软报表本地设计器中连接远程服务器后SAP数据集不显示问题
  • 第174期 TIMM:让迁移学习变得异常简单的PyTorch“隐藏”库
  • git cherry-pick