我试图在终端中运行这个脚本,但它没有工作,并说权限被拒绝。 scriptEmail是文件名。
% find . -type d -exec ./scriptEmail {} \;
scriptEmail
写成如下:
# !/bin/bash
# Mail Script
find gang-l -type f -name "*" -exec sh -c ' file = "$0" java RemoveHeaders "$file" > processed/$file ' {} ';'
我的读写权限
-rwxr-xr-x
答案 0 :(得分:1)
至于权限:
#!
无法使用。# !
会这样做。chmod 750 scriptEmail
标志安装,或者在SELinux上下文中禁止执行)。如果您的挂载点是noexec
,或者SELinux或类似程序阻止了您创建可执行脚本的能力,那么请使用noexec
显式指定解释器,而不是尝试执行您的脚本。
第二:既然您已经使用find . -type d -exec bash ./scriptEmail {} \;
执行了您的脚本 - 并使用它来递归目录 - 您内部不需要第二个find
(这会您是否有可能在find
以及processed/dirA/dirB/file
和processed/dirB/file
上运行 - 但目录不存在的所有这些都存在错误。
processed/file
答案 1 :(得分:-1)
尝试
sudo find . -type d -exec ./scriptEmail {} \;