Linux shell脚本中的另一个新手。
基本上我有一个包含许多文件的文件夹。但我只需要获取以".log"
以下是我的版本<无效
#!/bin/sh
for i in *;
do
if [ "$i" == "$i".log ]; then
echo $i;
fi
done
有人可以帮我吗?非常感谢!
答案 0 :(得分:3)
你有什么理由不能这样做吗?
for fname in *.log
do
echo $fname
done
答案 1 :(得分:0)
@ John3136有最简单的答案。使用bash
,您可以使用==
[[ ... ]]
实际上是模式匹配运算符而不是相等运算符的事实:
#!/bin/bash
for f in *; do
if [[ "$f" == *.log ]]; then
echo "$f"
fi
done
请参阅http://www.gnu.org/software/bash/manual/bashref.html#Conditional-Constructs