mirror of
https://github.com/caiwx86/small-packages.git
synced 2026-07-27 08:31:44 +08:00
54 lines
1.9 KiB
Bash
54 lines
1.9 KiB
Bash
#!/bin/bash
|
||
|
||
# 遍历所有的luci-app-*目录
|
||
for app_dir in luci-app-*; do
|
||
# 检查是否是目录
|
||
if [ -d "$app_dir" ]; then
|
||
# 首先检查ucitrack目录是否存在
|
||
if [ ! -d "$app_dir/root/usr/share/ucitrack" ]; then
|
||
# 初始化变量
|
||
config_file=""
|
||
init_file=""
|
||
|
||
# 查找init文件
|
||
if [ -d "$app_dir/root/etc/init.d" ]; then
|
||
# 获取init.d目录下的第一个文件名
|
||
init_file=$(ls "$app_dir/root/etc/init.d" 2>/dev/null | head -n 1)
|
||
|
||
# 如果找到init文件,检查USE_PROCD
|
||
if [ ! -z "$init_file" ]; then
|
||
init_path="$app_dir/root/etc/init.d/$init_file"
|
||
# 如果文件包含USE_PROCD=,则跳过这个目录
|
||
if grep -sqE 'USE_PROCD=.' "$init_path"; then
|
||
echo "Skipping $app_dir - contains USE_PROCD"
|
||
continue
|
||
fi
|
||
fi
|
||
fi
|
||
|
||
# 查找config文件
|
||
if [ -d "$app_dir/root/etc/config" ]; then
|
||
# 获取config目录下的第一个文件名
|
||
config_file=$(ls "$app_dir/root/etc/config" 2>/dev/null | head -n 1)
|
||
fi
|
||
|
||
# 如果找到了任意一个文件
|
||
if [ ! -z "$config_file" ] || [ ! -z "$init_file" ]; then
|
||
# 创建ucitrack目录
|
||
mkdir -p "$app_dir/root/usr/share/ucitrack"
|
||
|
||
# 创建json文件
|
||
cat > "$app_dir/root/usr/share/ucitrack/$app_dir.json" << EOF
|
||
{
|
||
"config": "$config_file",
|
||
"init": "$init_file"
|
||
}
|
||
EOF
|
||
echo "Created ucitrack for $app_dir"
|
||
fi
|
||
else
|
||
echo "Skipping $app_dir - ucitrack directory already exists"
|
||
fi
|
||
fi
|
||
done
|