执行我有很简单的shell脚本cp命令将不会运行,如果从shell脚本
#!/bin/bash
cp -rf /var/www/ksite/app2/* /var/www/ksite/app
echo "----"
echo "done"
,但似乎cp命令失败
如果我从终端执行的一切
cp -rf /var/www/ksite/app2/* /var/www/ksite/app
工作好。有人能告诉我如何在shell脚本中包含cp吗?
感谢
执行我有很简单的shell脚本cp命令将不会运行,如果从shell脚本
#!/bin/bash
cp -rf /var/www/ksite/app2/* /var/www/ksite/app
echo "----"
echo "done"
,但似乎cp命令失败
如果我从终端执行的一切
cp -rf /var/www/ksite/app2/* /var/www/ksite/app
工作好。有人能告诉我如何在shell脚本中包含cp吗?
感谢
我们似乎对这个脚本如何失败有疑问。如果没有错误信息,那么这是一个奇怪的。我建议:
which cp
cp
(如/bin/cp
)bash -x script-name
运行你的脚本,看看你是否得到你所期望的。echo $?
复制后的脚本 - 如果它为零,然后它(认为它)的工作。ls -ld /var/www/ksite/app
,也许有人设置了符号链接?. script-name
只是覆盖所有的基地..做权限不同之间的excutions ..即你执行一个与sudo/root权限,其他作为用户(不太可能,但以为我会问,因为我们不知道确切的错误是什么)
@ Kupe3我在2小时前提出了许可问题,发表评论:) – Levon
我有类似的问题。对我有什么帮助:
我用windows和腻子来写脚本,所以我在行尾有\ r \ n。当然,你只有\ n符号。
我复制的文件和它在脚本中为我工作的唯一方式是cp <source_dir>/fileName <dest_dir>/fileName
,而在命令行cp <source_dir>/fileName <dest_dir>
中也运行得很好。
脚本中是否有错误?你为什么认为'cp'失败? – rush
* cp命令以什么方式失败?什么是错误信息?这很可能是一个$ PATH问题。 – cdarke
您是否使shell脚本成为可执行文件? – hardmath