Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Can';无法运行bash脚本,出现错误_Bash - Fatal编程技术网

Can';无法运行bash脚本,出现错误

Can';无法运行bash脚本,出现错误,bash,Bash,我正在尝试运行在此处找到的脚本: bash/path/to/mysql backup.sh 我得到以下错误: /path/to/mysql-backup.sh: line 2: : command not found /path/to/mysql-backup.sh: line 4: : command not found /path/to/mysql-backup.sh: line 8: : command not found /path/to/mysql-backup.sh: line 10

我正在尝试运行在此处找到的脚本:

bash/path/to/mysql backup.sh

我得到以下错误:

/path/to/mysql-backup.sh: line 2:
: command not found
/path/to/mysql-backup.sh: line 4:
: command not found
/path/to/mysql-backup.sh: line 8:
: command not found
/path/to/mysql-backup.sh: line 10:
: command not found
/path/to/mysql-backup.sh: line 40: syntax error near unexpected token `{
'
/path/to/mysql-backup.sh: line 40: `function checkMysqlUp() {
我调用这个命令不正确吗


<>当然,是空格,现在我只剩下最后2个错误

它不喜欢里面的空行。您确定在复制和粘贴时没有在其中插入^M(回车符)或其他空格字符吗?

鉴于错误消息的显示方式,我认为您下载了带有CRLF行结尾的脚本,shell不喜欢这样

使用“dos2unix”或“dtou”或(如果以上两项都不可用,
tr
)删除回车符

tr -d '\015' < /path/to/mysql-backup.sh > /path/to/other-mysql-backup.sh
#/bin/bash


脚本顶部的这一行不正确。它应该没有空格。

伟大的思想都是一样的——当然,有一个好的名字也会有帮助。很久以前,有传言说空格是必要的,内核(或者是外壳?)查看了文件的前四个字节以查找
#/,它充当了一个神奇的排序数。我认为这只是一个毫无根据的谣言(一个2字节的魔法数字是可信的)。我不知道这个空间至少曾经是可选的。那篇文章对所需的格式一点也不清楚,但1980年的例子显然有一定的篇幅。呵呵。
/path/to/other-mysql-backup.sh