Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.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 Sed表达式在cron作业中不工作_Linux_Bash_Sed_Cron - Fatal编程技术网

Linux Sed表达式在cron作业中不工作

Linux Sed表达式在cron作业中不工作,linux,bash,sed,cron,Linux,Bash,Sed,Cron,我有一个包含以下脚本的sh文件: #!/bin/bash echo "Scripts para limpiar los JS" find . -type f -name "*.js" -print0 | xargs -0 sed -i "s/var _0xaae8=.*//" echo "Finalizo la limpieza de JS" 如果我在服务器中单独运行这一行,它将完美工作: find . -type f -name "*.js" -print0 | xargs -0 sed

我有一个包含以下脚本的sh文件:

#!/bin/bash
echo "Scripts para limpiar los JS"
find . -type f  -name "*.js" -print0 | xargs -0 sed -i "s/var _0xaae8=.*//"
echo "Finalizo la limpieza de JS"
如果我在服务器中单独运行这一行,它将完美工作:

find . -type f  -name "*.js" -print0 | xargs -0 sed -i "s/var _0xaae8=.*//"
但当我在cron作业中运行脚本时,会收到以下错误消息:

Scripts para limpiar los JS
sed: -e expression #1, char 19: unknown option to `s'
sed: -e expression #1, char 19: unknown option to `s'
sed: -e expression #1, char 19: unknown option to `s'
sed: -e expression #1, char 19: unknown option to `s'
find: `./.checkers': Permission denied
sed: -e expression #1, char 19: unknown option to `s'
Finalizo la limpieza de JS

我做错了什么?

我们可以看看你的crontab吗?是的,当然可以:45 11***bash/home/cmspeopl/public\u html/scripts-limpieza.sh可以试试
查找-键入f-name“*.js”-maxdepth 1-exec sed-i的/var_0xaae8=.*//g'{}\并查看是否有任何差异。服务器的响应:查找:缺少“-exec”的参数不要忘记,
cron
作为
root
运行,即使它是您自己的
cron
也在非常有限的环境和不同的位置运行。如果你看到你的第一个错误,你会得到一个“权限被拒绝”。我假设您的
find
中的点正在查找它不应该在的目录,因此
sed
没有有效的输入。不要将
放入
查找
输入中。