Grep

查找 .tex 文件列表的 grep?

  • June 21, 2016

document.tex想在哪裡獲取文件列表,並使用術語 grep 這些文件gastric

\subimport{}{1.2_protocal_answers.tex}
\subimport{}{2_protocol_answers.tex}
  • 1.2_protocal_answers.tex內容:this is a gastric juice lorem content
  • 2_protocol_answers.tex內容:this is a second gastric\n test file

我的 .pdf 輸出已損壞,但我需要搜尋材料中的內容。我的目錄太大了,無法為所有人做這件事,這可以用 Geany 的Find in Files. 我想對文件中導入的文件進行依賴搜尋。嘗試

  • 無法獲取 .tex 文件中文件列表的虛擬碼
find ./document.tex -type f -exec \
   grep -E '\subimport{[A-Za-z1-9_-]*} {} \; 
# TODO search the list of files with the word `gastric`
  • 任何IDE方法?我最喜歡的 IDE在grep內部使用,所以我認為find-grep這裡的方法最合適。

系統:Ubuntu 16.04,64 位

Grep:grep (GNU grep) 2.25

查找:find (GNU findutils) 4.7.0-git

硬體:Macbook Air 2013-mid

Linux 核心:4.6

根據使用者需要編輯:

  cat document.tex | cut -d'{' -f3 | cut -d'}' -f1 | while read file
        grep -i 'gastric' "$file" &>/dev/null && echo "$file contains gastric"
  done 
perl -l0 -ne 'print for /\\subimport\{\}\{(.*?)\}/g' file.tex

將列印那些以\subimport{}{...}NUL 分隔的函式內的文件名。

您可以通過管道xargs -0 grep -l gastric --來查找其中哪些文件包含gastric.

引用自:https://unix.stackexchange.com/questions/289957