推荐一个 IDEA 的 shell 检查插件,Shell Script强烈推荐,idea 官方出品,里面有一个扩展 shellcheck,在你打开 sh 脚本的时候会提示你是否安装它,这个很有用,会告诉你一些写法可能是有问题的,然后可以根据提示(一般有问题的会有黄色的背景)你可以去看看为什么会有提示,要如何修改。这个功能还挺不错的,强烈推荐
基础知识
遇到错误信息停止执行后续脚本
#!/bin/bash
set -o errexit
修改脚本权限
增加执行权限后,可以使用 ./xx.sh
来执行脚本
chmod u+x file.sh
cd 目录失效
如下一段代码,通过 ./xx.sh
执行代码,进入会失效.
cd /data/xxx
rm -rf xx.txt
可以增加脚本头来解决(这只是其中一个方法,应该是比较标准的方法)
#!/bin/sh
cd /data/xxx
rm -rf xx.txt
再次执行发现报错:/bin/sh^M: bad interpreter: No such file or directory
错误原因是:在 windows 下编写的脚本,手动解决如下
手工转换为 unix 格式
# 在vi命令模式中使用以下命令查看格式
:set ff
# 修改为 unix 格式
set ff=unix
但是这样一个一个修改会很麻烦。可以使用 dos2unix 工具修改
dos2unix 转换为 unix 格式
yum install dos2unix
dos2unix ./*.sh
再次执行就会发现目录进入正常了;