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

长沙企业网站建设哪家好有什么设计logo网站

长沙企业网站建设哪家好,有什么设计logo网站,wordpress反应慢,高端建材品牌一、学习前提准备 ✅ 环境要求: Linux系统(Ubuntu/CentOS等)或 WSL (Windows用户) 任意文本编辑器(推荐VSCode/Vim) 基础命令行操作能力 🔍 验证环境: # 查看系统默认Shell echo $SHELL #…

一、学习前提准备

环境要求

  • Linux系统(Ubuntu/CentOS等)或 WSL (Windows用户)

  • 任意文本编辑器(推荐VSCode/Vim)

  • 基础命令行操作能力

🔍 验证环境

# 查看系统默认Shell
echo $SHELL
# 查看Bash版本
bash --version 

二、Shell脚本基础认知

2.1 什么是Shell脚本?

  • 解释型语言:通过/bin/bash逐行解析执行

  • 核心价值

    • 自动化重复性系统操作(80%运维工作可脚本化)

    • 快速实现任务调度(结合cron)

    • 提升操作可重复性和精确度

2.2 脚本文件标准结构

#!/bin/bash           # Shebang声明(必须第1行)
# 文件:demo.sh        # 脚本描述
# 作者:CSDN用户       # 维护信息
​
echo "欢迎学习Shell编程"   # 可执行语句

三、首个Shell脚本实战

3.1 创建并运行脚本

# 创建脚本文件(建议.sh后缀)
touch hello_world.sh  
chmod +x hello_world.sh  # 添加执行权限

3.2 编辑器输入以下代码

#!/bin/bash
# 第一个Shell程序
echo "当前用户:$(whoami)"
echo "系统时间:$(date +%F)"

3.3 三种执行方式对比

执行方式命令示例适用场景
路径直接执行./hello_world.sh已添加执行权限时
指定解释器执行bash hello_world.sh调试快速执行
source命令执行source hello_world.sh需保留环境变量时

四、核心编程语法精要

4.1 变量操作

company="CSDN社区"          # 定义变量(等号无空格)
readonly version="1.0"     # 只读变量(不可修改)
today=$(date +%Y-%m-%d)    # 命令执行结果赋值
echo "${company} ${today}" # 建议变量用花括号包裹

4.2 条件分支结构

if [ -f "/etc/passwd" ]; then     # 判断文件存在echo "系统密码文件存在"
elif [ -d "/tmp" ]; then          # 判断目录存在echo "/tmp目录存在"
elseecho "条件未满足"
fi

4.3 循环结构

for循环处理文件列表:

for file in *.log; doecho "正在处理日志文件:${file}"
done

while按行读取文件:

while read line; doecho "当前行:$line"
done < input.txt

4.4 函数定义与调用

# 带返回值函数
file_exists() {[ -f "$1" ] && return 0 || return 1
}
​
# 调用函数
file_exists /etc/hosts
if [ $? -eq 0 ]; then    # $?获取上一条命令返回值echo "文件存在"
fi

五、实用功能模块速查

5.1 参数传递处理

特殊变量含义示例
$0脚本名称echo "脚本:$0"
$1-$9第1-9个位置参数echo "第1参数:$1"
$#参数总个数if [ $# -gt 0 ]
$@所有参数列表for param in $@

5.2 退出状态码

check_service() {systemctl is-active nginx >/dev/nullreturn $?   # 返回上条命令的退出状态
}
​
check_service
case $? in0) echo "服务运行中";;*) echo "服务异常,状态码:$?";;
esac

5.3 管道与重定向

# 管道组合命令
cat access.log | grep "404" | awk '{print $7}'
​
# 输出重定向
ls -l > file_list.txt    # 覆盖写入
echo "新增内容" >> log.txt # 追加写入
​
# 错误输出处理
apt update 2> /dev/null  # 丢弃错误输出

六、自动化实战:系统备份脚本

6.1 需求说明

  • 每日凌晨压缩备份/data目录

  • 自动删除30天前的备份文件

  • 记录操作日志

6.2 完整代码实现

#!/bin/bash
# 自动化备份脚本
​
# 配置参数
backup_dir="/data"
dest_path="/backup"
keep_days=30
log_file="/var/log/backup.log"
​
# 目录检查
[ ! -d "$dest_path" ] && mkdir -p "$dest_path"
[ ! -f "$log_file" ] && touch "$log_file"
​
# 生成压缩包
timestamp=$(date +%Y%m%d%H%M)
tar -czf "${dest_path}/backup_${timestamp}.tar.gz" "$backup_dir" 2>&1 | tee -a "$log_file"
​
# 清理旧备份
find "$dest_path" -name "*.tar.gz" -mtime +$keep_days -delete 2>&1 | tee -a "$log_file"
​
# 日志记录
echo "[$(date)] 备份完成,保留最近${keep_days}天文件" | tee -a "$log_file"

6.3 部署到cron计划任务

# 每日凌晨2点执行
crontab -e
# 添加如下行
0 2 * * * /opt/scripts/backup.sh

七、高阶调试技巧

7.1 执行过程追踪

bash -x script.sh  # 显示每条执行命令

7.2 代码段调试

set -x   # 开启调试模式
# 需要调试的代码
set +x   # 关闭调试模式

7.3 错误自动退出

#!/bin/bash
set -e   # 任何语句返回值非0则立即退出
set -o pipefail  # 管道命令出错时也退出

八、学习路线与资源推荐

🔥 技能提升路线

  1. 掌握正则表达式(grep/sed)

  2. 学习awk高级文本处理

  3. 理解Linux信号处理(trap)

  4. 研究Ansible等自动化工具

📚 推荐资料

  • 书籍:《Linux命令行与Shell脚本编程大全》

  • 工具:ShellCheck在线检测

http://www.yayakq.cn/news/720883/

相关文章:

  • 个人网站如何建设凡科做 淘宝客网站
  • 网站品牌推广策略网站及app开发招聘
  • 代点任意广告链接网站本地建站工具
  • wordpress网站防采集开发软件的成本预算
  • 南京企业自助建站试用网站开发
  • iis .net 网站架设企业名称核准查询系统
  • 女人网上量体做衣网站广告公司名称
  • 做传销网站违法做照片书网站好
  • 建设银行官方网站手机版下载安装wordpress 开发实例
  • 北京网站改版报价如何被百度收录
  • 怎么做网站模块海口网站排名
  • 漳州微信网站开发系统开发技术
  • 建立网站看病的经济问题北京网站建设明细
  • 网站内容更新用什么龙岗区网站建设哪个公司好
  • 点击一个网站跳转到图片怎么做的手机网站整站下载
  • 漳州建设项目公告网站商标注册证号查询官网
  • 网站建设合优做校园二手交易网站的目的
  • 建设银行账户网站查询密码百度分享wordpress
  • 电子商务网站建设与管理 总结下载网站模板
  • 淘宝客优惠券网站建设教程视频自己做网站背景图片
  • 制作网站哪里做程序员用的编程软件
  • 北京做养生SPA的网站建设wordpress自定义函数
  • 沈阳做网站的公司排行文化馆网站建设的意义
  • 网站要做几个备案网络服务昭通学院
  • 怎么做自己的刷赞网站垂直网站导航是谁做的
  • 太康做网站公司漫画 网站 源码
  • 广东住房城乡建设厅网站泉州鲤城网站建设
  • 怎么做网页制作网站模板网站开发协议模版
  • 名片在哪个网站可以做wordpress it模板下载
  • 济南建网站工作室wordpress页面展示多个文章