linux - 从 shell 脚本调用脚本 - 找不到获取命令

标签 linux perl shell

我是 shell 脚本的新手。我正在努力解决这个问题。

> script to execute in cron (util.sh)
#!/bin/sh
HOST='ahostname'
PORT='3306'
USER='auser'
PASS='apassword'
DB='adatabase'
. /mnt/stor/backups/backup.sh

(我也试过source/mnt/stor/backups/backup.sh)

 > script to execute (backup.sh)

当 backup.sh 被调用(它确实被调用)时,它似乎只是被解析而不是被执行。所以无论我放入什么,我都会收到如下消息:

/mnt/stor/backups/backup.sh: line 8: date: command not found
/mnt/stor/backups/backup.sh: line 8: mysqldump: command not found
/mnt/stor/backups/backup.sh: line 8: tar: command not found
/mnt/stor/backups/backup.sh: line 8: rm: command not found

想法是拥有一个域本地化文件,用变量执行它,然后调用一个使用变量来完成肮脏工作的主脚本。由于我的一个主机和多个域的限制,这是最好的方法。

最佳答案

有问题的脚本似乎是 /mnt/stor/backups/backup.sh。尝试将 PATH 设置为包括所有带有二进制文件的常用目录,以便脚本可以找到它的工具。或者,更好的是,更改 /mnt/stor/backups/backup.sh 并在 /bin/rm 之类的命令中使用绝对路径,而不仅仅是 'rm '.

关于linux - 从 shell 脚本调用脚本 - 找不到获取命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9005867/

相关文章:

mongodb - 使用mongo在git bash中改写问题

linux - 如何在 grep 命令中使用从文件中读取的行

java - 如何设置Java线程的cpu核心亲和性?

linux - yum install glibc 提示broken package

linux - 在 redhat 5 机器上构建 Python3

perl - 在 Perl 调试器和 CPAN 客户端中向上和向下箭头不再起作用

perl - Perl 中的输出流 : STDERR, STDOUT,

javascript - 如何在 Javascript 中编写此数字检测正则表达式?

linux - linux perf 对于测量多线程 C 程序的缓存未命中是否准确?

c# - 以编程方式更改 Windows Shell