微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

bash〜for循环一个目录中的特定文件

一个目录中有一些各种文件 – .txt,.sh然后计划没有.foo修饰符的文件

如果你是目录:

blah.txt
blah.sh
blah
blahs

如何告诉循环只使用没有.foo修改文件?所以在上面的例子中对文件blah和blahs做“做事情”。

基本语法是:

#!/bin/bash
FILES=/home/shep/Desktop/test/*

for f in $FILES
do
    XYZ functions
done

您可以看到这有效地循环了目录中的所有内容。如何排除.sh,.txt或任何其他修饰符?

我一直在玩一些if语句,但如果我可以选择那些未修改文件,我真的很好奇。

也可以有人告诉我没有.txt的这些纯文本文件的正确术语?

#!/bin/bash
FILES=/home/shep/Desktop/test/*

for f in $FILES
do
if [[ "$f" != *\.* ]]
then
  DO STUFF
fi
done

原文地址:https://www.jb51.cc/bash/387281.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐