Я хочу найти все файлы с расширением x во всех подпапках, содержащих строку s, как мне это сделать?
grep -nr s. *. X ?????
Dirk
GNU find
find . -iname "*.x" -type f -exec grep -l "s" {} +;
Если у вас есть Ruby (1.9 +)
Dir["/path/**/*.x"].each do |file| if test(?f,file) open(file).each do |line| if line[/s/] puts "file: #{file}" break end end end end
Сначала я найду файлы * .x, а затем найду интересующую вас строку с grep :
$ find directory -name "*.x" -exec grep -Hn s {} \;
-name "*.x"
-exec grep ... {} \;
-H