gpt4 book ai didi

regex - inotifywait 根据修改的文件类型运行命令

转载 作者:行者123 更新时间:2023-11-29 09:05:57 24 4
gpt4 key购买 nike

我特别尝试同时观看 2 个子目录中的 2 种不同的文件类型:

“js”子目录中的 .coffee 文件类型
“css”子目录中的 .styl 文件类型

我只知道这么多 bash,我正试图让这样的东西发挥作用

while inotifywait --format %w%f ./{css,js}/*.{styl,coffee}; do
# regex pattern to match the file ending
# and define it to $ending

if[ $ending == coffee ]
then
coffee -c $file
elif[ $ending == styl ]
then
stylus -c $file
fi
done



//编辑//修改了这一行:

while inotifywait --format %w%f ./{css,js}/*.{styl,coffee}; do

所以现在它会检查这两个文件,但是如果 css 文件夹中没有 .coffee 文件,或者 js 中没有 .styl 文件,它会返回一个错误,指出没有找到文件。

另外我注意到当我运行这个脚本时,它返回/运行以下 3 次

Setting up watches.
Watches established.
./css/styles.styl

最佳答案

不是最干净的解决方案,但有效

#!/bin/sh

while file=$(inotifywait -r -e modify --format "%w%f" ./); do
EXT=${file##*.}
if [ $EXT = "styl" ]
then
stylus -c $file
fi
if [ $EXT = "coffee" ]
then
coffee -c $file
fi
done

如果您有更好的解决方案,只监视我想要的文件,那么我洗耳恭听

关于regex - inotifywait 根据修改的文件类型运行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12373528/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com