0

私はちょうどそれに気づいた

grep -rni 'a2}' *

は、文字列を持つすべてのドキュメントa2}に一致する行を与えるわけではありません。これはなぜですか?

最小限の例を作成しようとしましたが、新しいファイルを作成してコンテンツを貼り付けると失敗します。そのため、ファイルをGit リポジトリにアップロードしました。おそらくそれはエンコードの問題です。

ファイルの内容は次のとおりです。

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{KV-Diagramme}
\label{chap:a2}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  \PsTexAbbildungOhneCaption{figures/a2-1}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%% Local Variables:
%%% mode: latex
%%% TeX-master: "skript"
%%% End:

の結果grep -rni 'a2}' *

moose@pc08 ~/Downloads/algorithms/grep $ grep -rni "a2}" *
%%% End:master: "skript"%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

しかし、私は期待した

moose@pc08 ~/Downloads/algorithms/grep $ grep -rni "a2}" *
\label{chap:a2}

この結果が得られるのはなぜですか?

4

2 に答える 2

0

このファイルには CR 行末記号があるため、単一行のファイルに見えます。

#> file anhang-2.tex
anhang-2.tex: LaTeX document, ASCII text, with CR line terminators

Linux 形式に変換します。

#>  mac2unix anhang-2.tex
mac2unix: converting file anhang-2.tex to Unix format ...
#>  grep -rni 'a2}' anhang-2.tex 
3:\label{chap:a2}
于 2013-08-10T05:41:28.550 に答える
0

ファイルが Mac OS 9 の行末を使用しているためです。最初に UNIX の行末に変換する必要があります。その方法はシナリオによって異なりますが、これで 1 つのファイルを実行できます。

tr '\r' '\n' < anhang-2.tex > anhang-2.txt

次に、その新しいファイルを grep できるようになります。

于 2013-08-10T05:52:55.103 に答える