Linux入門③|基本コマンド10選をWindowsと比べて覚える

Linux入門③|基本コマンド10選をWindowsと比べて覚える Linux

コマンドは、10個だけ覚えれば、ファイル操作は一通りできます。「黒い画面を開いたんですが、最初に、何を打てばいいですか?」

Linux入門③|基本コマンド10選をWindowsと比べて覚える

その質問への答えは、いつも同じです。まず、「今、どこにいるのか」を聞いてください。迷子になったら、地図を見る前に、現在地を確認する。Linux も同じです。

シリーズ「Windows ユーザーのための、やさしい Linux 入門」の第3回です。前回(第2回:Windows PC に Linux 環境を作る)で、練習場所ができました。今回は、基本コマンド10個です。Windows の操作と、1つずつ対応させながら、進めます。

結論:まずは、この10個のコマンドで、ファイル操作は一通りできる

コマンド 意味 Windows で、やっていること
pwd 今いる場所を表示 エクスプローラーのアドレス欄を見る
ls ファイルの一覧 フォルダーを開いて、中を見る
cd 場所を移動 フォルダーを開く(ダブルクリック)
mkdir フォルダーを作る 新しいフォルダーを作成
touch 空のファイルを作る(既存なら、日時を更新) 新しいテキストファイルを作成
cp コピー コピー & 貼り付け
mv 移動・名前変更 切り取り & 貼り付け、名前の変更
rm 削除 削除(ただし、ごみ箱には行きません)
cat ファイルの中身を表示 メモ帳で開く
clear 画面をきれいにする (画面の文字を消す)

ポイントは、rm だけ、Windows と、決定的に違うことです。あとで、詳しく説明します。

① pwd:今、どこにいる?

pwd

実行結果(例):

/home/taro
  • pwd は、今いる場所(現在のディレクトリ)を表示します。
  • /home/taro は、ユーザー taro の、ホームディレクトリです。Windows でいえば、C: ドライブの Users の下にある、自分のユーザー名のフォルダーに、近い場所です。
  • Linux では、フォルダーを「ディレクトリ」と呼びます。同じものと考えて大丈夫です。

② ls:中に、何がある?

ls
ls -l
ls -a

実行結果(例):

$ ls
Documents  Downloads  memo.txt

$ ls -l
drwxr-xr-x 2 taro taro 4096 Dec  4 10:00 Documents
drwxr-xr-x 2 taro taro 4096 Dec  4 10:00 Downloads
-rw-r--r-- 1 taro taro   12 Dec  4 10:05 memo.txt
  • ls:名前だけの、一覧。
  • ls -l:詳細表示(種類、権限、持ち主、サイズ、更新日時)。この -rw-r--r-- の読み方は、第5回で説明します。
  • ls -a:隠しファイルも表示(. で始まるファイル。第4回で扱います)。

コマンドの後ろに付ける -l のようなものを、オプションと呼びます。「同じコマンドの、動かし方の指定」です。

③ cd:移動する

cd Documents
pwd
cd ..
cd ~

実行結果(例):

$ cd Documents
$ pwd
/home/taro/Documents
$ cd ..
$ pwd
/home/taro
書き方 意味
cd Documents 今いる場所の中の、Documents に移動
cd .. 1つ上に移動
cd ~ ホームディレクトリに移動(どこにいても)
cd / 一番上(ルート)に移動

cd の成功は、何も表示されません。エラーがなければ、成功です。Windows のように、「開きました」とは、教えてくれません。

④ mkdir:フォルダーを作る

mkdir work
ls

実行結果(例):

Documents  Downloads  memo.txt  work
  • mkdir は、ディレクトリを作成します。
  • 深い階層を、一度に作りたいときは、mkdir -p a/b/c のように、-p を付けます。

⑤ touch:空のファイルを作る

touch hello.txt
ls -l hello.txt

実行結果(例):

-rw-r--r-- 1 taro taro 0 Dec  4 10:10 hello.txt
  • touch は、空のファイルを作ります。すでにあるファイルなら、更新日時だけを、今にします。
  • サイズが 0 なのは、中身が空だからです。

⑥ cp と ⑦ mv:コピーと、移動・名前変更

cp hello.txt hello-copy.txt
mv hello-copy.txt work/
mv hello.txt greeting.txt
コマンド 意味 Windows
cp A B A を B としてコピー コピー & 貼り付け
mv A B/(B がディレクトリ) A を B の中へ移動 切り取り & 貼り付け
mv A B(B が存在しない名前) A を、B という名前に変更 名前の変更

mv が「移動」と「名前変更」の、両方を担うのが、Linux の特徴です。Windows では別の操作ですが、Linux では同じコマンドで、「場所」と「名前」を、変えているだけ、と考えます。

ディレクトリごとコピーするときは、cp -r(-r は recursive、中身ごと)を使います。

⑧ rm:削除。ここだけ、本当に注意

rm greeting.txt

rm は、ファイルを削除します。ディレクトリは、既定では削除できません(-r を付けると、中身ごと削除)。

⚠ Windows との、決定的な違い:ごみ箱が、ありません Windows の削除は、ごみ箱に入るので、戻せます。Linux の rm には、ごみ箱がありません。削除したファイルは、通常、簡単には、元に戻せません。GNU の rm の man ページでも、削除したファイルの内容を回復できる可能性は、あるが、通常は簡単に戻せない、と書かれています。

オプション 意味 注意
-r ディレクトリと、その中身をすべて削除 範囲を間違えると、取り返しがつかない
-f 確認せず、存在しないファイルも無視 「本当に消しますか?」が出なくなる
-i 1つずつ確認する 慣れるまで、-i を付けると安心
-I 3つ以上、または再帰削除のときに、1回だけ確認 -i より、うるさくない

最初のうちは、rm -i ファイル名 が、安全です。rm -rf は、慣れても、慎重に使うものです。

避けたい習慣 rm -rf の後ろの、パスを、確認せずに、実行すること。rm -rf / のような、一番上を消す指定は、GNU の rm では、既定で拒否されるようになっています(--preserve-root)。ですが、それ以外の場所は、守られていません。

⑨ cat:中身を見る

echo "hello linux" > memo.txt
cat memo.txt

実行結果(例):

hello linux
  • echo "..." > ファイル名 は、ファイルに、文字を書き込みます(> は、第6回で説明します)。
  • cat は、ファイルの中身を、そのまま表示します。
  • 長いファイルは、less ファイル名 で、ページ送りしながら見られます(q で終了)。

⑩ clear:画面をきれいに

clear

画面の文字が消えて、見やすくなります。ファイルや履歴は、消えません。

コマンド入力が楽になる便利な技:Tab と ↑

操作 効果
Tab キー コマンドやファイル名を、自動補完。入力ミスが、減ります
↑ キー 前に打ったコマンドを呼び出す
Ctrl + C 実行中のコマンドを、中断

Tab は、Linux の命綱です。ファイル名を、最後まで打たなくても、途中まで打って Tab を押せば、続きが出ます。打ち間違いが、激減します。

Windows ↔ Linux:対応表(今回)

やりたいこと PowerShell Linux
今の場所 Get-Location(pwd) pwd
一覧 Get-ChildItem(ls、dir) ls
移動 Set-Location(cd) cd
フォルダー作成 New-Item -ItemType Directory(mkdir) mkdir
空ファイル作成 New-Item touch
コピー Copy-Item(cp) cp
移動・名前変更 Move-Item(mv)、Rename-Item mv
削除 Remove-Item(rm) rm
中身を見る Get-Content(cat) cat
画面を消す Clear-Host(cls、clear) clear

PowerShell には、ls・cd・cp・mv・rm・cat などの、Linux と同じ名前の「エイリアス(別名)」があります。ただし、中身は別物で、使えるオプションも違います。「同じ名前だから、同じ動き」とは、思わないでください。

僕のやらかし:rm に、ごみ箱を期待した

Windows の感覚で、「消しても、ごみ箱から戻せる」と、思い込んでいました。練習中、間違えて、大事なスクリプトを、rm しました。

ごみ箱を開いて、探しました。ありません。そもそも、ごみ箱が、ないのです。

レストランの、食べ終わった皿を、そのまま、洗い場の「排水口」に流してしまったようなものです。戻ってきません。それ以来、重要なファイルの削除前は、先に cp で、バックアップを取ります。

今回覚えたコマンド

コマンド 意味
pwd 現在地
ls/ls -l/ls -a 一覧/詳細/隠しファイルも
cd 移動(cd ..、cd ~)
mkdir ディレクトリ作成
touch 空ファイル作成
cp/mv コピー/移動・名前変更
rm 削除(ごみ箱なし)
cat 中身を表示
clear 画面を消す

次回予告

次回は、「C ドライブは、どこ?」。Linux のファイル構造を、Windows と比べながら、整理します。/etc、/var、/home といった、よく見る場所の意味も、覚えましょう。

→ 第4回:Cドライブはどこ?Linux のファイル構造

参考

ITもごはんも、腹八分目が長続きのコツ!

コメント