首页›Linux操作系统›Linux网络操作系统-第19节-Shell编程与调试

Linux网络操作系统-第19节-Shell编程与调试

前面十几节敲的命令都是「一条条来」。运维需要把一组命令打包成脚本——写一次,以后一键执行。这一节写出第一个 Shell 脚本。

第十九节 Shell编程与调试:第一个脚本hello.sh、两种执行方式、变量
第十九节 Shell编程与调试:第一个脚本hello.sh、两种执行方式、变量

一、第一个脚本 hello.sh

vim hello.sh

#!/bin/bash        # Shebang:声明用 bash 解释执行(必须是第一行)
# author: class    # # 开头是注释
echo "Hello World"

chmod +x hello.sh      # 赋予执行权限

二、两种执行方式

  • ./hello.sh:像程序一样直接跑,前提是有 x 权限(依赖 Shebang 找解释器);
  • bash hello.sh:把脚本交给 bash 执行,不需要 x 权限,调试时常用。
./hello.sh         # 输出 Hello World
bash -x hello.sh   # -x 逐行显示执行过程,排错利器

三、变量

name="张三"          # 赋值:等号两边【不能有空格】
echo $name           # 引用加 $
echo "${name}同学"    # 加 {} 定界,避免歧义

today=$(date)        # 命令替换:命令结果存进变量
echo "Today is $today"

echo $PATH           # 环境变量:命令的搜索路径
echo $HOME           # 当前用户家目录

Shebang 写错(如写成 #!bin/bash)脚本会直接跑不起来——遇到 bash: ./hello.sh: bad interpreter 八成就是它。作业:写脚本显示当前登录用户(whoami)和当前路径(pwd)。

上一篇
下一篇