脚本执行常见错误:build.sh: caller: not found

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the GNUBourne-Again Shell)但Login Shell还是bash. 原因是dash更快、更高效,而且它符合POSIX规范。Ubuntu在启动的时候会运行很多shell脚本,使用dash可以加快启动速度。

1 bash与dash


从Ubuntu 6.10开始,默认使用dash(theDebian Almquist Shell)而不是bash(the GNUBourne-Again Shell)但Login Shell还是bash. 原因是dash更快、更高效,而且它符合POSIX规范。Ubuntu在启动的时候会运行很多shell脚本,使用dash可以加快启动速度。


2 执行脚本常常会有一些不知名的错误


比如:build.sh: caller: not found


我还遇到过还有一些其他莫名其妙的错误


先看下自己的脚本是用bash解析还是dash解析的,脚本我们一般默认都是用bash


先用命令ls -l /bin/sh看看自己系统的脚本解析


3 切换sh为bash/dash


sudo dpkg-reconfigure dash


出现一个界面选择切换为bash解析即可解决:build.sh: caller: not found


切换回去重新执行一遍命令选择即可

目录
相关文章
|
资源调度 JavaScript Windows
yarn install命令报错解决办法-warning package-lock.json found.
yarn install命令报错解决办法-warning package-lock.json found.
371 0
|
数据库管理
SVN 执行cleanup报错:Cleanup failed to process the following paths : 解决方法
引用:https://www.cnblogs.com/pinpin/p/11395438.html 在SVN更新时提示文件被锁住了,要求执行 clean up操作,执行clean up时又报clean up failed。造成的原因是在某次更新后,点击了cancel按钮,操作没有完成所以会锁住。解决方法如下:
1508 0
|
3月前
|
Ubuntu Unix Shell
sh执行脚本报错Syntax error: “(“ unexpected ​的两种解决办法
​sh执行脚本报错Syntax error: “(“ unexpected ​的两种解决办法
|
7月前
|
Shell Android开发
./build_native.sh执行错误
./build_native.sh执行错误
|
JavaScript
win10执行npm出现Error: EBUSY: resource busy or locked 错误解决方法
win10执行npm出现Error: EBUSY: resource busy or locked 错误解决方法
759 0
win10执行npm出现Error: EBUSY: resource busy or locked 错误解决方法
|
Python
pyinstaller打包exe后不能运行报Failed to execute script XXXX问题分析与处理
pyinstaller打包exe后不能运行报Failed to execute script XXXX问题分析与处理
658 0
|
Ubuntu 关系型数据库 MySQL
提示-bash: command not found的解决方法集锦
提示-bash: command not found的解决方法集锦
遇到错误怎么办:ndk-build.cmd‘‘ finished with non-zero exit value 2
遇到错误怎么办:ndk-build.cmd‘‘ finished with non-zero exit value 2
442 0
|
Shell
bash:govendor:command not found 如何解决?
bash:govendor:command not found 如何解决?
494 0