Mac/Linuxユーザーのためのターミナルでよく使う基本コマンド。〜その2〜編集・コピー・差分・表示 編
どうも、かりんです。
前回の記事、Mac/Linuxユーザーのためのターミナルでよく使う基本コマンド〜その1〜では、MacやLinuxでターミナルを使う際によく登場する基本的なコマンドを紹介しました。
今回はその続きとして、「ファイルの中身を見たい」「コピーしたい」「編集したい」「違いを見比べたい」といった日常操作で使う基本コマンドを紹介していきます。
この記事も初心者の方向けに、「この場面ではこう使う」というシーンと一緒にできるだけシンプルにまとめています。
ファイルの中身を確認する(短いファイル)
・コマンド
cat ファイル名
・用途
テキストファイルなどの中身をそのまま表示します。短い内容の確認に便利です。
※ 長いファイルは見切れてしまうので、次の「less」の方が見やすいです。
ファイルの中身をページ送りで見る(長文ファイル)
・コマンド
less ファイル名
・用途
長いログファイルやドキュメントなどをページ単位で上下に移動しながら閲覧できます。
・1ページ進む:スペース
・1ページ戻る:b
・終了:q
・キーワード検索:/
ファイルをコピーする
・コマンド
cp コピー元 コピー先
・用途
ファイルやフォルダの複製に使います。間違えた時のバックアップにも便利。
cp test.txt test_backup.txt
・バックアップ前
・バックアップ後
上記のようにコピーをバックアップ用途で使う場合は「backup」の部分をコピーした日付(yyyymmdd)にした方がいつのバックアップかわかりやすいです。
コピーはバックアップ用途だけではないので、テンプレートや雛形を作成して、ファイルの使い回しなど、コピーの用途は幅広いため場面に応じて使い分けることができます。
バックアップを作成する場合は-pオプションを使った方が便利です。
-pオプションを使うと、元ファイルのタイムスタンプや権限などそのままコピーすることができます。
フォルダごとコピーしたい場合は -r オプションを使います:
cp -r コピー元 コピー先
・バックアップ前
・バックアップ後
ファイルの中身の違いを確認する
・コマンド
diff ファイルA ファイルB
・用途
2つのファイルの内容の差を比較します。設定ファイルやバックアップの確認に便利です。
違う行があれば、どこがどう異なるかを教えてくれます。
さっき作成したファイルと同じファイル名で差分を確認しました。(ファイルを編集した部分のスクショは割愛します)
上記で確認すると、一番上の「2c2」と「<」と「>」で確認することができます。
「<」が比較元の内容、「>」が比較対象の内容、2c2が2行目が変更(change)されたという意味です。
diffの記号は他にもあるので簡潔に説明します。
・a:(add):追加 例:3a4 --3行目の後に追加--
・c(change):変更 今回の例
・d(delete):削除 例:4d3 --4行目が削除--
・<:比較元のファイル(今回のファイルA)
・>:比較対象のファイル(今回のファイルB)
diff は差分を確認するコマンドとして知られていますが、
出力結果の読み方は意外と知られていないことも多く、どこが違うかはわかるけれど、記号や数字の意味がわからないという方も少なくありません(私自身も最初はそうでした)。
変更箇所だけでなく出力の見方も理解できるように、なるべくわかりやすく解説しています。
テキストファイルを編集する(初心者向け)
・コマンド
nano ファイル名
・用途
ターミナル上で直接編集できるエディタです。初心者にも優しい操作感で、矢印キーで移動、画面下のガイドで保存や終了も簡単です。
・検索: Windows:Ctrl + W, Mac:control(^) + W
・行の切り取り: Windows:Ctrl + K, Mac:control(^) + K
・貼り付け: Windows:Ctrl + U, Mac:control(^) + U
・保存: Windows:Ctrl + O, Mac:control(^) + O
・終了: Windows:Ctrl + X, Mac:control(^) + X
※ショートカットはガイドにも大文字で書いてますが、小文字で入力しても大丈夫です。
よくMacのショートカットとして、WindowsのCtrl=commandキーが当てられますが、
nanoでは control(^)キーなので注意してください(左Shiftの上)
テキストファイルを編集する(中級者向け)
・コマンド
vi ファイル名
・用途
Vimエディタを起動します。慣れると高速に編集できますが、最初は操作に戸惑うことが多いので必要最小限だけ紹介します。
基本操作
・編集モードに入る: i,a
・キーワード検索:/
・直前の操作を取り消す:u
・保存して終了: ESC → :wq
・保存せず終了: ESC → :q
・変更を破棄して終了: ESC → :q!
上記はviコマンドで開いた画面です。最初はコマンドモードというのになっていて入力ができません。
入力するにはiやaを入力してから編集モードにしてから入力できるようにします。
編集モードになると上記のようにINSERTと出ます。
ESCを押すともう一度コマンドモードになり、「:」でコマンドを入力できるようになります。
下の方に入力したコマンドが出てくるのですぐにわかります。
※ちなみに「:q」は一度どこかを編集してたら、エラーで終了できません。
今回は適当に「aa」と入力してますが、途中で修正した箇所がわからなくなったり、間違って修正したかも?と思ったりしたら、一度「:q!」で変更を破棄して終了して、最初から編集をやり直しましょう。
設定ファイルなど、大事なファイルを編集する場合は変に修正してしまうと取り返しがつかなくなって、最初から最初から作成しなおしということが起こります。
自分だけでする場合はいいですが、業務やチームで行う場合はものすごい時間がかかってしまってう場合があります。
不安ならバックアップを取っておくことをおすすめします。
さいごに
今回は前回(その1)の続きとして、「中身を見る・複製する・編集する・差分を見る」などの基本的操作に使うコマンドを紹介しました。
どれも日常でよく使う場面が多く、覚えておくと格段に効率が上がるものばかりです。
エディターの基本操作や各コマンドのオプションについては、最低限必要なものだけを紹介しています。
また、思いついたものを中心にまとめているため、すべてを網羅しているわけではありません。
今後の記事で補足していく予定ですので、続けて読んでいただけたら嬉しいです。
Discussion