0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

備忘録:grepコマンドの正規表現で$を使った行の終端一致が効かない謎

Last updated at Posted at 2022-11-25

起こったこと

プログラミング・エンジニアリング初学者です。
正規表現の勉強中、grepコマンドでテキストファイルの行の終端にある文字列を「文字列$」のような表記で検索しようと試みたところ、明らかに存在するはずなのにヒットしませんでした。
(書籍「独学プログラマー」の学習中に詰まったポイントです。同じところで詰んでいる方の助けになれば幸いです…)

原因

改行方式の違い。
自分のPCがWindowsで、改行が「CRLF」という方式になっていた。
これを「LF」方式で保存しなおしたファイルで試したところ、検索がヒットするようになった。

LFはLinuxで使われる改行方式らしいです。
Windows環境で作成したテキストファイルをUbuntuのEC2にアップロードしてSSHで利用していたのでこんな感じになってしまっていました。

改行方式の変更方法

  1. VS codeでテキストファイルを開く
  2. 画面下部の「CRLF」とあるところをクリック
    image.png
  3. 「改行コードの選択」で「LF」を選ぶ
    image.png
  4. ファイルを保存する

以上です。

P.S.
お読みいただきありがとうございます:bow:
学び始めて間もないため、内容が不正確だったりもっと良い方法があったりすることもあるかと思います。
もしお気づきの点がある際は、お知らせいただけたら大いに助けになります。ぜひお願いいたします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?