前言:
使用场景是 我这边的一个单体项目需要多一个多副本的部署方式,一直输入重复命令我实在是嫌烦了,使用写了一个脚本来一键更新部署上去。jar包都是我手动上传的,没有把包传入公网库里。
之所以记录就是因为遇到了几个没有遇到过的问题记录以下。
示例:
chmod +x script
这个命令,可以将脚本复制到一个在系统 PATH 中的目录中,这样就可以在任何地方执行它,而无需添加 ./
前缀或手动更改权限。/usr/local/bin/
目录中:sudo cp 脚本文件名 /usr/local/bin/
错误一:-bash: /usr/local/bin/runpoject: Permission denied 没有权限的命令
/usr/local/bin/runpoject
脚本。这是因为 /usr/local/bin
目录通常需要超级用户权限才能写入。你可以尝试以下步骤来解决这个问题:
使用尝试使用以下命令:
sudo chmod +x /usr/local/bin/script
\r\n
),而不是 Linux 风格的换行符(\n
)。这种问题可能会导致解释器无法找到正确的路径。要解决这个问题,你可以使用文本编辑器将脚本文件转换为 Linux 风格的换行符。
你可以使用 dos2unix
命令来进行转换,如果系统没有安装这个命令,可以尝试使用 sed
命令来进行转换,如下所示:
sed -i 's/\r$//' /usr/local/bin/script
亲测可以解决问题。