前書き
このリポジトリは、catコマンドを実行してファイル最終行の末尾に改行があるかどうかで出力がどう変化するか確認します
インストールする必要のあるコマンド
- git
クイックスタート
上記のコマンドをインストール済みの方は、以下のコマンドを実行してリポジトリからダウンロード後、ディレクトリを移動し、catコマンドを実行して出力された文字列を確認してみてください
ubuntu
出力結果
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
macos
MacPorts
出力結果
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
windows
WSL2
出力結果
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
MSYS2 MINGW64
出力結果
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb
(prompt)
実行手順
ubuntu
クリックして詳細を開く
事前確認
以下のコマンドを端末に打ち込んでcommand not foundが出なければokです
preinstall
端末にcommand not foundが出たコマンドを以下のコマンドでインストールしてください
コマンド
以下のコマンドを端末で実行することで詳細のような文字列が出力されるはずです
詳細
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
macos
クリックして詳細を開く
事前確認
以下のコマンドをターミナルに打ち込んでcommand not foundが出なければokです
※macosはMacPortsパッケージマネージャを使用してコマンドを管理します。もしインストールしていない方は以下のリンクからMacPortsのインストール手順をご覧ください
またコマンドに別名を設定して既存の環境と競合しないでコマンドを呼び出せるようにします。
初めてこのブログを利用する方は、以下の2つの記事を参考に環境構築してください
preinstall
ターミナルでcommand not foundが出たコマンドを以下のコマンドでインストールしてエイリアスを設定してください
コマンド
以下のコマンドをターミナルで実行することで詳細のような文字列が出力されるはずです
詳細
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
windows
クリックして詳細を開く
事前確認
以下のコマンドをプロンプトに打ち込んでcommand not foundが出なければokです
WSL2
MSYS2 MINGW64
※windowsはWSL2とMSYS2 MINGW64で確認しています。可能な限りWSL2をインストールしていただいて、もし設定できなかった場合はMSYS2をインストールすることで実行できますが、所々WSL2でしか実行できないコマンドが出てくるかもしれません。WSL2とMSYS2のインストール方法は下記の記事を参考にしてください
preinstall
プロンプトでcommand not foundが出たコマンドを以下のコマンドでインストールしてください
WSL2
MSYS2 MINGW64
コマンド
以下のコマンドをプロンプトで実行することで詳細のような文字列が出力されるはずです
WSL2
詳細
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb(prompt)
MSYS2 MINGW64
詳細
file1:aaa
file1:bbbfile2:ccc
file2:ddd
(prompt)
file2:ccc
file2:ddd
file1:aaa
file1:bbb
(prompt)
後書き
file1.txtのファイル最終行の末尾に改行が無い状態で実行すると、出力結果のように後続の文字列がそのままの状態で文字列が連結されます
posix準拠のコマンドは行の末尾は改行で終わることを仕様として設計されているらしいので、なるべくファイル最終行の末尾に改行を追加して保存したいところです