Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 如何检查文件名中是否存在某个字符串的文件?_Linux_Bash - Fatal编程技术网

Linux 如何检查文件名中是否存在某个字符串的文件?

Linux 如何检查文件名中是否存在某个字符串的文件?,linux,bash,Linux,Bash,如果目录中不存在文件名中包含“RDR\u Config\u Summary”的文件,我想打印一条错误消息。一些示例文件名可以是er2\u FCLS\u RDR\u Config\u Summary.txt或er1\u CDMA\u RDR\u Config\u Summary.txt。我收到以下代码的语法错误: cd $inputDir/$reviewDir [[ ! grep "RDR_Config_Summary" ]] && echo -e "

如果目录中不存在文件名中包含“RDR\u Config\u Summary”的文件,我想打印一条错误消息。一些示例文件名可以是
er2\u FCLS\u RDR\u Config\u Summary.txt
er1\u CDMA\u RDR\u Config\u Summary.txt
。我收到以下代码的语法错误:

cd $inputDir/$reviewDir
[[ ! grep "RDR_Config_Summary" ]] && echo -e "\nError: RDR Config Summary file was not found\n" && exit 1


[[
本身就是一个命令;您不需要它来运行
grep
。但是,您没有任何东西可以运行
grep
。请改用路径名扩展

cd "$inputDir/$reviewDir"
shopt -s failglob
if ! { : *RDR_ConfigSummary*; } 2> /dev/null; then
  echo -e "\nError: RDR Config Summary file was not found\n";
  exit 1
fi
shopt -u failglob

我在这里没有看到语法错误。您确定使用的是
bash
?@chepner正在运行op的代码,我得到
-bash:conditional binary operator expected-bash:syntax error靠近“RDR\u Config\u Summary”
哦,对了;表达式迷你语言中的语法错误。
cd "$inputDir/$reviewDir"
shopt -s failglob
if ! { : *RDR_ConfigSummary*; } 2> /dev/null; then
  echo -e "\nError: RDR Config Summary file was not found\n";
  exit 1
fi
shopt -u failglob