注意,一定要写成 ./test.sh,而不是 test.sh,运行其它二进制的程序也一样,直接写 test.sh,linux 系统会去 PATH 里寻找有没有叫 test.sh 的,而只有 /bin, /sbin, /usr/bin,/usr/sbin 等在 PATH 里,你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,要用 ./test.sh 告诉系统说,就在当前目录找。
1 基本正则表达式1.1 行首定位符“^”1.2 行尾定位符“$”1.3 单个字符匹配“.”圆点“.”用来匹配任意单个字符,包括空格,但是不包括换行符“\n”。可以连续使用圆点符号来匹配多个字符,例如“l..
当在shell脚本中执行错误命令时,如果该命令的退出状态码(exit code)不为0,则shell会认为命令执行失败,并立即停止脚本的执行。然而,在命令执行后添加 $? 的作用是获取上一个命令的退出状态码,即shell会将上一个命令的退出状态码赋值给 $? 变量。
什么是Shell脚本?Linux作为比较专业的操作系统,主要用于服务器端项目部署,需要很多命令组合完成一项功能,而这些功能很多都是重复执行的,比如数据库备份、软件环境安装、或者一个管理员要同时操作几百台甚至上千台的服务器,这就需要进行统一配置,同时完成多台服务器统一配置。
摘要:Shell是文本互动程序,相当一个命令行翻译器。能将在计算机上的操作命令,翻译为计算机可识别的二进制命令,传递给内核,以便调用计算机硬件执行相关的操作。同时,计算机执行完命令后,再通过Shell翻译成自然语言,呈现在用户面前。
Shell 似乎没有定制的 IDE,这里推荐 VS Code 搭配对应的插件:shellman 智能提示和自动补全,在插件页面有介绍常用代码片段的触发关键词,作者在 Shellman reborn 中写到了 Shellman 诞生的故事,挺有趣的。
&& 和 ||:双与号和双或号用于执行条件命令,例如 command1 && command2 将会先执行 command1,只有在 command1 执行成功后才会执行 command2,而 command1 || command2 则相反,只有在 command1 执行失败后才会执行 command2。