Bash 教程六章

4. Bash中的引号

引号是在任何编程语言中引用字符串的标准做法。引号用于处理带有空格字符的文本、文件名。阅读本教程以了解单引号和双引号之间的区别。

4.1 引用字符串

#!/bin/bashecho ‘我是单引号’echo “我是双引号”

上面脚本会输出

我是单引号我是双引号

4.2 引用变量

shell 变量扩展仅适用于双引号。如果您在单引号中定义任何变量将不起作用。

#!/bin/bashNAME=”Welcome China!”echo “$NAME”echo ‘$NAME’

上面脚本会输出

Welcome China!$NAME

5. 调试 Bash 脚本

Bash 脚本提供了在运行时调试脚本的选项。您在 shell 脚本中使用“set -xv”命令或在执行脚本时在命令行上使用 -xv。

5.1 语法

$ bash -xv hello_world.sh

5.1.1 示例 – 在脚本中启用调试

#!/bin/bashset -xv # 这行代码将会触发调试模式cd /var/log/for i in “*.log”; dodu -sh $idone

5.1.2 示例 – 启用调试运行时

vim hello_wolrd.sh# 写入以下内容#!/bin/bashset -xv # 这行代码将会触发调试模式cd /var/log/for i in “*.log”; dodu -sh $idone

执行以下命令

$ bash -xv script.sh

6. Bash 退出代码

退出代码是一个介于 0 和 255 之间的数字。这是子进程完成后返回给父进程的值。换句话说,它表示我们函数的最后一个命令的退出状态。

基于命令或程序返回的退出代码值将成功执行或不执行。

  • Success – 0 表示成功
  • failure – 非0 表示失败

6.1 示例1

编写程序在 /tmp/test.txt 文件中写入一些内容并检查命令执行成功与否。

#!/bin/bashecho “hi” > /tmp/test.txtif [ $? -eq 0 ]; then echo “执行成功”else echo “执行失败, 不能写入 /tmp/test.txt”fi

6.2 示例2

编写一个程序来搜索文件中的字符串并检查字符串是否存在。

#!/bin/bashSTRING=”root”if grep ${STRING} /etc/passwdthen echo “恭喜,成功找到字符串”else echo “很遗憾,没有找到字符串”fi

以上代码会输出

root:x:0:0:root:/root:/bin/bashoperator:x:11:0:operator:/root:/sbin/nologin恭喜,成功找到字符串

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
(0)
用户投稿
上一篇 2022年6月12日
下一篇 2022年6月12日

相关推荐

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息