bash – for for循环目录中的每个文件夹,不包括其中一些文件夹
发布时间:2020-12-16 01:26:52 所属栏目:安全 来源:网络整理
导读:非常感谢您提前帮助! 我在bash中有这个代码: for d in this_folder/* do plugin=$(basename $d) echo $plugin'?' read $plugin done 这就像一个魅力.对于’this_folder’中的每个文件夹,将其作为一个问题回显并将输入存储到具有相同名称的变量中. 但是现在
非常感谢您提前帮助!
我在bash中有这个代码: for d in this_folder/* do plugin=$(basename $d) echo $plugin'?' read $plugin done 这就像一个魅力.对于’this_folder’中的每个文件夹,将其作为一个问题回显并将输入存储到具有相同名称的变量中. 但是现在我想排除一些文件夹,例如,它会询问该目录中的每个文件夹,只要它们不是以下任何文件夹:global,plugins和css. 任何想法我怎样才能做到这一点? 谢谢! 更新: 这是最终代码的样子: base="coordfinder|editor_and_options|global|gyro|movecamera|orientation|sa" > vt_conf.sh echo "# ========== Base" >> vt_conf.sh for d in $orig_include/@($base) do plugin=$(basename $d) echo "$plugin=y" >> vt_conf.sh done echo '' >> vt_conf.sh echo "# ========== Optional" >> vt_conf.sh for d in $orig_include/!($base) do plugin=$(basename $d) echo "$plugin=n" >> vt_conf.sh done
如果你有最新版本的bash,你可以使用扩展的globs(shopt -s extglob):
for d in this_folder/!(global|plugins|css)/ do plugin=$(basename "$d") echo $plugin'?' read $plugin done (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |