我想编写一个shell脚本,将文件名与我在运行时在命令行中输入的给定字符串相匹配。我希望能够匹配文件名中的模式。 就像字符串是'questi'并且文件夹包含'question1.c','question2.c',questions.doc'那些应该显示为答案。
答案 0 :(得分:1)
脚本可以简单如下:
$!/bin/bash
shopt -s nullglob # To return nothing if there is no match.
echo *$1*
然后将其称为script.sh questi
。
答案 1 :(得分:1)
使用find
:
find /path/to/directory -type f -iname "*questi*"
选项-type f
导致只返回文件而-iname
对glob *questi*
进行不区分大小写的匹配,因此应返回'question1.txt','five_questions.txt'等
如果您希望可以将其放在shell脚本中,请执行以下操作:
#!/bin/sh
find $1 -type f -iname "*$2*"
并称之为:filefind.sh /path/to/directory questi