linux / unix:脚本在某些目录树存在时启动某些命令

时间:2014-12-03 15:05:01

标签: linux shell unix

我是一名Linux新手,请原谅我,如果你不理解我:)

我遇到一个问题,我需要运行一个命令chmod 777 XXX(XXX是目录),但是我无法登录它,但我可以推送将要执行的UNIX脚本。但问题是我不知道这个脚本在哪个路径上启动/放置:)。

IN DETAIL:我需要一个脚本来检查这台机器上是否存在相对路径(目录树)CCCC/YYY/XXX,如果存在,则需要在此目录chmod 777 XXX上启动以下命令。 (XXX应解析为绝对路径:))

我用find做了一些测试,但没有真正的结果。

1 个答案:

答案 0 :(得分:1)

locate命令可以帮助您:

path_part=CCCC/YYY/XXX
if output=$( locate "$path_part" 2>/dev/null ); then
    grep "$path_part$" <<< "$output" |
    while IFS= read -r dir; do
        # do something in "$dir"
    done
fi

locate要求您运行updatedb - 您的系统可能会定期运行它。