コース一覧
Linux入門:コマンド操作のきほん
scp でファイル転送

Linux入門:コマンド操作のきほん

ターミナル操作、ファイル管理、パーミッション、プロセス、シェル変数、リダイレクトなど Linux コマンド操作の基礎を、ブラウザ上のサンドボックスで実行しながら学べる無料コースです。サーバー運用やインフラに関わるエンジニアや学生を対象としています。約 17 時間 (1 日 30 分 × 34 日) で 68 レッスンを修了でき、修了後はサーバー作業、デプロイ作業、ログ調査など実務の Linux 操作を自力で進められるようになります。

1
Linuxとコマンドラインの基礎
0. Linuxとは?OSの基礎を理解する5分
1. エンジニアにLinuxが必要な理由5分
2. シェルとターミナルの違いを理解する5分
3. 最初のコマンドを打ってみよう5分
2
ファイル操作の基本コマンド
0. Linuxの「すべてはファイル」という考え方5分
1. ディレクトリの移動と確認5分
2. 絶対パスと相対パス5分
3. ファイルの中身を見る5分
4. ファイルとディレクトリの作成5分
5. cpでファイルをコピーする5分
6. mvでファイルを移動する5分
7. rmでファイルを削除する5分
8. ファイルシステムチェック5分
9. Linux 基礎チェック5分
3
テキスト処理とパイプ活用
0. パイプとリダイレクト5分
1. 文字列検索 grep5分
2. 正規表現入門5分
3. grep 応用:正規表現5分
4. テキスト加工 sed5分
5. 列処理 awk5分
6. パイプ活用:実践的なコマンド連携5分
7. テキスト処理チェック5分
4
ファイル検索と圧縮・解凍
0. find でファイルを検索する5分
1. ワイルドカードとグロブパターン5分
2. ファイルの圧縮と解凍5分
3. stat でファイル情報を確認する5分
4. ファイル管理チェック5分
5
パーミッションと権限管理
0. ユーザーとグループの概念5分
1. パーミッションの読み方5分
2. 権限の変更 chmod5分
3. 所有者の変更 chown5分
4. sudo - スーパーユーザーの力5分
5. 実行権限とスクリプト5分
6. パーミッションチェック5分
6
プロセス管理とジョブ制御
0. プロセスとは何か5分
1. psでプロセス一覧を確認する5分
2. topでリアルタイム監視する5分
3. プロセスの終了 kill5分
4. フォアグラウンドとバックグラウンド5分
5. nohupでログアウト後も実行する5分
6. プロセス管理チェック5分
7
ネットワークとSSH接続
0. ネットワークの基礎知識5分
1. ping で接続確認5分
2. curl で HTTP リクエスト5分
3. ネットワーク情報の確認5分
4. リモート接続 SSH5分
5. scp でファイル転送5分
6. rsync で効率的に同期5分
7. ネットワークチェック5分
8
環境変数とシェルのカスタマイズ
0. 環境変数とは5分
1. 環境変数の確認と設定5分
2. シェル設定ファイル5分
3. エイリアスで効率化5分
4. PATH を理解する5分
5. 環境設定チェック5分
9
シェルスクリプト入門
0. シェルスクリプトとは5分
1. 変数と引数5分
2. 条件分岐 if5分
3. ループ処理 for, while5分
4. 関数を定義する5分
5. 実践スクリプト作成5分
6. シェルスクリプトチェック5分
10
実践:ログ解析とシステム管理
0. ログファイルの解析5分
1. システム情報の取得5分
2. パッケージ管理5分
3. cron で定期実行5分
4. 開発環境での Linux 活用例5分
5. 総合チェック5分

Linux入門:コマンド操作のきほん

01Linuxとは?OSの基礎を理解する
02エンジニアにLinuxが必要な理由
03シェルとターミナルの違いを理解する
04最初のコマンドを打ってみよう
05Linuxの「すべてはファイル」という考え方
06ディレクトリの移動と確認
07絶対パスと相対パス
08ファイルの中身を見る
09ファイルとディレクトリの作成
10cpでファイルをコピーする
11mvでファイルを移動する
12rmでファイルを削除する
13ファイルシステムチェック
14Linux 基礎チェック
15パイプとリダイレクト
16文字列検索 grep
17正規表現入門
18grep 応用:正規表現
19テキスト加工 sed
20列処理 awk
21パイプ活用:実践的なコマンド連携
22テキスト処理チェック
23find でファイルを検索する
24ワイルドカードとグロブパターン
25ファイルの圧縮と解凍
26stat でファイル情報を確認する
27ファイル管理チェック
28ユーザーとグループの概念
29パーミッションの読み方
30権限の変更 chmod
31所有者の変更 chown
32sudo - スーパーユーザーの力
33実行権限とスクリプト
34パーミッションチェック
35プロセスとは何か
36psでプロセス一覧を確認する
37topでリアルタイム監視する
38プロセスの終了 kill
39フォアグラウンドとバックグラウンド
40nohupでログアウト後も実行する
41プロセス管理チェック
42ネットワークの基礎知識
43ping で接続確認
44curl で HTTP リクエスト
45ネットワーク情報の確認
46リモート接続 SSH
47scp でファイル転送
48rsync で効率的に同期
49ネットワークチェック
50環境変数とは
51環境変数の確認と設定
52シェル設定ファイル
53エイリアスで効率化
54PATH を理解する
55環境設定チェック
56シェルスクリプトとは
57変数と引数
58条件分岐 if
59ループ処理 for, while
60関数を定義する
61実践スクリプト作成
62シェルスクリプトチェック
63ログファイルの解析
64システム情報の取得
65パッケージ管理
66cron で定期実行
67開発環境での Linux 活用例
68総合チェック

Linux入門:コマンド操作のきほん

scp でファイル転送

毎回 4 つ思い出さないと繋がらない

本番のサーバーは、22 番以外のポートで待ち受けていたり、ログイン名が手元の名前と違っていたり、鍵を複数使い分けていたりします。その結果、接続のたびにこういう行を書くことになります。

ターミナル

ssh -p 2222 -i ~/.ssh/id_ed25519 deploy@app-01.example.com

覚えていられません。履歴をさかのぼって探すことになり、探し当てるまでの 30 秒が毎回積み上がります。しかも、あとで届け先が増えたとき、どこを直せばいいのか分からなくなります。

別名を 1 回書いておく

~/.ssh/config に 1 件分の設定を書いておくと、以降は短い別名で呼べます。

プレーンテキスト

Host prod HostName app-01.example.com User deploy Port 2222

これだけで ssh prod が通ります。ポートを変更したときも、直すのはこの 1 か所です。同じ書き方で stg や db を並べれば、届け先の一覧が設定ファイルとして残ります。

大事なのは、この別名が SSH を土台に使う他のコマンドでもそのまま効くことです。ファイルを送るときも、覚え直す必要はありません。

送る向きは、書いた順で決まる

scp は SSH の上でファイルをやり取りするコマンドです。cp と同じく、先に書いた方から後に書いた方へ流れます。相手側を指すときは、別名のうしろにコロンとパスを続けます。

ターミナル

# 手元のビルド成果物をサーバーへ置く scp -r dist/ prod:/var/www/app/ # サーバーのログを手元へ引き取る scp prod:/var/log/app/error.log ~/work/

上と下の違いは、コロンの付いた側が左にあるか右にあるかだけです。ここを逆にすると、手元の新しいファイルが古いもので上書きされます。実行する前に、コロンがどちら側にあるかを一度目で確かめる癖をつけてください。

ディレクトリを丸ごと運ぶときは -r が要ります。付け忘れると、そのディレクトリは黙って無視されます。エラーらしいエラーが出ないまま何も届かないので、送ったつもりで先へ進んでしまいがちです。

送り先のディレクトリは、先に存在している必要があります。無い場合は新しいファイルとして作られてしまい、/var/www/app という名前のファイルの中に中身が書き込まれる、という妙な結果になります。届け先が新しいときは、一度ログインして作ってから送ってください。

小さいファイルが大量にあるときは、そのまま送ると 1 個ごとに手続きが走って遅くなります。先にひとまとめの書庫にしてから送ると、体感で桁が変わります。

ターミナル

tar czf logs.tar.gz logs/ scp logs.tar.gz prod:/tmp/
解説

Permission denied が出たら鍵の登録、Is a directory が出たら -r の付け忘れ、No such file or directory が出たら相手側のパスか書き込み権限を疑います。この 3 つでほとんど片付きます。

生田 陸人
監修生田 陸人
ゆめさくエンジニア / 現役ソフトウェアエンジニア監修者プロフィールを見る →
編集 ゆめさく編集部·公開 2025/12/19·更新 2026/08/26

関連レッスン

  • rsync で効率的に同期

    rsyncコマンドで、効率的にファイルやディレクトリを同期する方法を体験します。

  • ネットワークチェック

    ネットワークの基本コマンドに関する知識をクイズ形式でチェックしましょう。

  • 環境変数とは

    環境変数の意味と使い方を学びます。パスの設定などを理解しましょう。

  • シェルスクリプトとは

    シェルスクリプトの基本と、作成・実行するための概念について解説します。

分からないところは Tap (AI先生) に質問できます

24 時間いつでも、あなたのレベルに合わせて日本語で答えます。