Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.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
Linux bash脚本与SSH控制台不同_Linux_Bash_Ssh_Debian_Sh - Fatal编程技术网

Linux bash脚本与SSH控制台不同

Linux bash脚本与SSH控制台不同,linux,bash,ssh,debian,sh,Linux,Bash,Ssh,Debian,Sh,我有这个命令 tar -czf /var/log/apache2/logfile_backups/dBackup_$(date "+%d-%m-%Y").tar.gz /var/log/apache2/ --exclude=/var/log/apache2/logfile_backups --exclude='*.sh' 首先,我在SSH控制台(Putty)中运行这个命令,一切都很好 其次,我编写了一个bash脚本(myscript.sh) 并在SSH控制台中使用bash./myscript.

我有这个命令

tar -czf /var/log/apache2/logfile_backups/dBackup_$(date "+%d-%m-%Y").tar.gz /var/log/apache2/ --exclude=/var/log/apache2/logfile_backups --exclude='*.sh'
首先,我在SSH控制台(Putty)中运行这个命令,一切都很好

其次,我编写了一个bash脚本(myscript.sh)

并在SSH控制台中使用
bash./myscript.sh
启动此脚本,但最后的结果不同。
tar
-命令忽略第二个
--exclude
参数

怎么了?
我认为,bash脚本与Putty这样的SSH控制台是一样的。

作为我在网上找到的一个示例:

一个简单的备份脚本是:

#!/bin/bash          
OF=/var/my-backup-$(date +%Y%m%d).tgz
tar -cZf $OF /home/me/
因此,请尝试将命令更改为:

tar  -cZf /var/log/apache2/logfile_backups/dBackup_$(date +%Y%m%d).tgz.gz /var/log/apache2/ --exclude=/var/log/apache2/logfile_backups --exclude='*.sh'
1) 你正在使用什么发行版

2) 您是否在一台服务器上运行命令和脚本

3) 尝试
chmod+xscript.sh
,然后通过说
/scipt.sh
来调用它

4) 通过说出
tar--version

你说:

我认为,bash脚本与Putty这样的SSH控制台是一样的


确保它们彼此相同,但在Linux上使用终端要容易得多

它们可能是不同版本的
tar
。请尝试
tar--version
查找。不,文件版本相同,bash脚本在“root”-user下运行,“root”-user也已登录到ssh控制台。请编辑帖子并添加两个命令的结果。我相信这会有帮助。
tar  -cZf /var/log/apache2/logfile_backups/dBackup_$(date +%Y%m%d).tgz.gz /var/log/apache2/ --exclude=/var/log/apache2/logfile_backups --exclude='*.sh'