改行コードとは?CR・LF・CRLFの違いを初心者向けに解説




はじめに

Linuxを勉強していると、
ある日ふとこんな言葉に出会います。

  • 改行コード

  • CR / LF / CRLF

正直、最初は
「改行ってEnter押しただけじゃないの?」
と思いがちですよね。

でもこの改行コード
実は Linuxの基礎知識としてかなり重要で、
LinuC(Linux技術者認定試験)でも普通に出題されます。

この記事では、

  • そもそも改行コードとは何か

  • CR / LF / CRLF の違い

  • なぜOSごとに違いがあるのか

  • なぜLinux学習で出てくるのか

を、試験勉強+実務の両方で役立つ視点で解説します。


改行コードとは何か?

改行コードとは、
「ここで行を終わらせて、次の行に移る」
ことをコンピュータに伝えるための制御文字です。

私たちがキーボードで Enter を押すと、
画面上では単純に改行されて見えますが、
内部的には 特定の文字コード が記録されています。

この「どの文字を使うか」が、
OSごとに違う、というのが改行コード問題の正体です。


CR・LF・CRLF の違い

改行コードには主に次の3種類があります。

種類 正式名称 意味
CR Carriage Return 行頭に戻る
LF Line Feed 次の行へ進む
CRLF CR + LF 行頭に戻って次の行へ

この名前、かなり機械っぽいですが、
昔のタイプライターが由来になっています。

  • CR:ガチャっと行の先頭に戻す

  • LF:紙を1行分送る

この2つをどう使うかが、
OSごとに分かれました。


OSごとの改行コードの違い

それぞれのOSでは、以下のように扱われています。

OS 改行コード
Windows CRLF
Linux LF
macOS LF

Windowsだけが CRLF(2文字)
LinuxとmacOSは LF(1文字) を使います。

ここがLinux学習でよく話題になるポイントです。


なぜLinuxではLFだけなのか?

LinuxはUNIX系OSの流れを汲んでおり、
UNIXでは LFだけを改行とする設計が採用されました。

シンプルで扱いやすく、
テキスト処理を前提とした文化が強かったためです。

一方、Windowsは
過去の互換性を重視した結果、
CRLFという形式が残りました。

どちらが正しい・間違いではなく、
歴史と設計思想の違いです。


なぜLinuC試験に出てくるのか?

LinuC試験では、

  • LinuxはテキストベースのOSである

  • 設定ファイルやスクリプトを扱う

  • 他OSとの違いを理解しているか

といった 基礎リテラシー が問われます。

その中で、

  • Linuxの改行コードは LF

  • Windowsは CRLF

という違いは、
**暗記レベルではなく「前提知識」**として出題されます。

実務でも、

  • Windowsで作ったファイルをLinuxで使う

  • Gitで複数OSの人が作業する

といった場面が多く、
「知らないと原因が分からない」状態になりやすいです。


注意点

見た目ではほぼ分からない

改行コードはエディタ上では見えません。
「見た目は同じファイル」でも、
内部的には違う、というのが厄介な点です。


知識として知っておくだけでOK

この段階では、

  • 無理に変換方法を覚える

  • コマンドを暗記する

必要はありません。

まずは
「LinuxはLF」
「WindowsはCRLF」

これを押さえるだけで十分です。


まとめ

改行コードは地味ですが、
Linuxを理解するうえで避けて通れない基礎知識です。

ポイントを整理すると、

  • 改行コードは「行を区切るための制御文字」

  • CR:行頭に戻る

  • LF:次の行へ進む

  • Linuxは LF

  • Windowsは CRLF

  • LinuC試験にも普通に出てくる

最初はピンとこなくても、
後から必ず
「これ知っててよかった」
となる知識なので、今のうちに押さえておきましょう。

コメント

タイトルとURLをコピーしました