【Linux】编写一个 shell 脚本&执行
创始人
2024-11-22 06:35:38
0

在Linux中编写和执行脚本相对简单。下面是一个基本的步骤指南,帮助你创建一个简单的bash脚本并运行它:

1. 创建脚本文件

首先,你需要使用文本编辑器创建一个新的文件。这个文件通常会有 .sh 的扩展名,以表明它是一个shell脚本。例如,你可以创建一个名为 myscript.sh 的文件。

打开终端,并输入以下命令:

vim myscript.sh 

这里使用了 vim 编辑器,但你也可以使用其他你喜欢的编辑器,比如 nano,emacs 等。

2. 编写脚本内容

在编辑器中,输入你想要脚本执行的命令。例如,下面是一个简单的bash脚本,它会在终端中打印出 “xiaoming”:

ps: 第一行 #!/bin/bash 是一个特殊的shebang行,它告诉系统使用哪个解释器来执行这个脚本。在这个例子中,我们使用的是bash shell。

#!/bin/bash NAME_ID="xiaoming"  echo "变量 NAME_ID 的值为: $NAME_ID"  if [ $? = 0 ]; then       echo "******************* shell 脚本执行完成 ******************"       exit 0  else        echo "!!!!!!!!!!!!!!!!! [error: 执行失败!] !!!!!!!!!!!!!!!!!!!"       exit 1 fi 
3. 保存并退出编辑器

如果你使用的是 vim 编辑器,你可以按 Esc + :wq 保存文件,退出编辑器保存文件。其他编辑器的保存和退出命令可能会有所不同。

4. 为脚本添加执行权限

在Linux中,你需要为脚本文件添加执行权限,才能运行它。你可以使用 chmod 命令来添加权限:

chmod +x myscript.sh 

这会给 myscript.sh 文件添加执行权限。

5. 运行脚本

现在你可以运行你的脚本了。在终端中输入以下命令:

./myscript.sh 

如果一切正常,你应该会在终端中看到 “xiaoming” 的输出。

这就是在Linux中编写和执行脚本的基本步骤。当然,你可以编写更复杂的脚本,包含条件语句、循环、函数等,以实现更复杂的任务。

6.扩展: 上面提供的脚
  1. 首先,$? 变量用于获取上一个命令的退出状态。在您的脚本中,echo "变量 NAME_ID 的值为: $NAME_ID"
  2. 总是成功执行的,因此 $? 将会是 0if [ "$?" = "0" ];then表示成功) 。
  3. 但是,如果您想要模拟脚本执行失败的场景并处理错误,需要在脚本中故意引入一个失败的命令。
  4. 下面是一个修改后的脚本,它会在打印变量值后输出一个成功消息,并演示了如何检查一个故意失败的命令:
#!/bin/bash NAME_ID="xiaoming"  echo "变量 NAME_ID 的值为: $NAME_ID"  false_command_example  if [ $? -ne 0 ]; then       echo "!!!!!!!!!!!!!!!!!!!!!               [error: 执行失败!] 原因可能是:          !!!!!!!!!!!!!!!!!!!!!!!"      echo "!!!!!!!!!!!!!!!!!!!!! 1. 某个命令执行失败,比如上面的 false_command_example !!!!!!!!!!!!!!!!!!!!!!!!!"      exit 1   else       echo "******************* shell 脚本执行完成 ******************"   

在这个脚本中,false_command_example 是一个不存在的命令,因此它会失败,并且 $? 将不会是 0。然后 if 语句会捕获到这个失败,并输出一个错误消息。

相关内容

热门资讯

透视软件!约局吧开挂神器是真的... 透视软件!约局吧开挂神器是真的(透视)底牌透视挂辅助脚本(可靠开挂辅助安装教程)-哔哩哔哩;1、点击...
透视有挂!wepoker游戏安... 透视有挂!wepoker游戏安装教程,新老夫子开挂系统,安装教程(有挂透明挂)-哔哩哔哩一、新老夫子...
黑科技辅助!pokenow有挂... 黑科技辅助!pokenow有挂(智能ai辅助插件安装)软件透明挂黑科技(固有真的有挂)-哔哩哔哩;是...
第9分钟了解!麻辣竞技辅助器下... 第9分钟了解!麻辣竞技辅助器下载(辅助挂)其实真的是有挂(专业辅助详细教程)-哔哩哔哩是一款可以让一...
透视挂!pokerrrr2辅助... 透视挂!pokerrrr2辅助(透视)底牌透视挂辅助底牌(可靠开挂辅助揭秘教程)-哔哩哔哩;大家肯定...
透视美元局!cloudpoke... 透视美元局!cloudpoker透视挂,天天贵阳app破解版,玩家教程(有挂教程)-哔哩哔哩1、用户...
黑科技辅助!微扑克机器人代打(... 黑科技辅助!微扑克机器人代打(智能ai辅助工具)软件透明挂黑科技(都是是有挂)-哔哩哔哩;小薇(透视...
透视ai!德州透视脚本(透视)... 透视ai!德州透视脚本(透视)底牌透视挂辅助底牌(可靠开挂辅助揭秘教程)-哔哩哔哩;德州透视脚本简单...
第五分钟了解!牵手湖南麻将插件... 第五分钟了解!牵手湖南麻将插件(辅助挂)真是真的是有挂(专业辅助解密教程)-哔哩哔哩是一款可以让一直...
透视透视!约局吧德州有挂,新道... 透视透视!约局吧德州有挂,新道游游戏辅助器免费版,切实教程(有挂猫腻)-哔哩哔哩一、新道游游戏辅助器...