katsu-coach1215

Shell Script

【Shell Script】コマンドライン引数の受け取り方(1・@・$#)

こんにちは、かつコーチです。「スクリプトの中身を毎回書き換えて実行している」。それでは自動化のメリットが半減してしまいます。この記事では、実行時に外から値を渡せるコマンドライン引数の受け取り方を、$1・$@・$#を中心に初心者向けに解説しま...
Shell Script

【Shell Script】case文で複数条件をすっきり書く

こんにちは、かつコーチです。「if・elifが何段も連なって、どこで何を判定しているのか読みにくい」。1つの変数の値によって処理を分けるスクリプトを書いていると、そんな悩みにぶつかります。この記事では、複数の条件分岐をすっきり書けるcase...
Shell Script

【Shell Script】for文・whileループで繰り返し処理をする

こんにちは、かつコーチです。「同じコマンドを10回コピペして実行している」「ファイルを1つずつ手作業で処理している」。そんな作業に心当たりがあるなら、ループを覚えるタイミングです。この記事では、シェルスクリプトの繰り返し処理の基本であるfo...
Shell Script

【Shell Script】test・[ ]・の違いと比較演算子

こんにちは、かつコーチです。前回は、if文の基本形と、数値比較・文字列比較の演算子の違いを解説しました。条件式の中でさらっと使っていたですが、実はtestコマンドや]という仲間があり、それぞれ挙動が微妙に異なります。「なぜ現場のスクリプトに...
Shell Script

【Shell Script】if文で条件分岐する基本

こんにちは、かつコーチです。前回は、値を保存しておく変数の使い方と、クォーティングの落とし穴を解説しました。今回からは制御構文編に入り、まずは条件によって処理を分けるif文を扱います。「ファイルがあれば処理する、なければスキップする」といっ...
Shell Script

【Shell Script】変数の使い方:宣言・展開・クォーティング

こんにちは、かつコーチです。前回は、シェバンと実行権限というスクリプトを「動かす」ための土台を解説しました。今回からは、スクリプトの中身をより実用的にしていく回として、変数の使い方を扱います。変数を使いこなせるようになると、同じスクリプトで...
Shell Script

【Shell Script】シェバン(#!/bin/bash)と実行権限の付け方

こんにちは、かつコーチです。前回は、シェルスクリプトがコマンドをまとめて自動実行する仕組みであることを解説しました。サンプルの中で、1行目にさらっと書いた#!/bin/bashが気になった方も多いと思います。今回は、この記述の正体と、実行に...
Shell Script

【Shell Script】シェルスクリプトとは?コマンドをまとめて自動実行する仕組み

こんにちは、かつコーチです。Linux基礎編では、ターミナルでコマンドを1つずつ打つ操作を解説してきました。今回からは新シリーズとして、そのコマンドを「まとめて自動実行する」ためのシェルスクリプトを扱っていきます。毎日同じコマンドを何行も打...
ネットワーク

【ネットワーク】ネットワークトラブルシューティングの基本の流れ

こんにちは、かつコーチです。ネットワーク基礎編の最終回です。IPアドレス、DNS、HTTP、TCP/UDP、OSI参照モデル、そしてping・tracerouteと積み上げてきた知識を、実際の障害対応の流れに落とし込みます。上級者向けの内容...
ネットワーク

【ネットワーク】pingとtracerouteでネットワークの疎通を調べる

こんにちは、かつコーチです。ここまでIPアドレス、DNS、HTTP、TCP/UDPと通信の仕組みを学んできました。今回はいよいよ実践編として、「相手先に通信できているか」を実際に手を動かして確認するpingとtracerouteコマンドを解...
ネットワーク

【ネットワーク】TCPとUDPの違い:確実さとスピードのトレードオフ

こんにちは、かつコーチです。前回はOSI参照モデルで通信全体の地図を確認し、トランスポート層(第4層)にTCPとUDPが登場することを紹介しました。今回はそのトランスポート層の主役であるTCPとUDPを掘り下げ、何が違い、どう使い分けられて...
ネットワーク

【ネットワーク】OSI参照モデルとは?通信を7つの階層で理解する

こんにちは、かつコーチです。ここまでTCP/IP、IPアドレス、ポート番号、DNS、HTTP/HTTPSと、通信の要素を一つずつ見てきました。今回はそれらを一度整理して、通信全体を俯瞰する「地図」にあたるOSI参照モデルを解説します。「レイ...
ネットワーク

【ネットワーク】HTTPSとは?SSL/TLSで通信を暗号化する仕組み

こんにちは、かつコーチです。前回はHTTPメソッド(GET・POST・PUT・DELETE)の使い分けを解説しました。今回は、URLの先頭が「http://」ではなく「https://」になっている、あの「s」の正体を掘り下げます。ブラウザ...
ネットワーク

【ネットワーク】 HTTPメソッド(GET・POST・PUT・DELETE)の使い分け

こんにちは、かつコーチです。前回の記事で、HTTPは「依頼状(リクエスト)と返信(レスポンス)のやり取り」だと解説しました。では、その依頼状には具体的にどんな「依頼の種類」があるのでしょうか。この記事では、代表的なHTTPメソッドであるGE...
ネットワーク

【ネットワーク】HTTPとは?Webの通信ルールを理解する

こんにちは、かつコーチです。「ブラウザにURLを入力すると、なぜかWebページが表示される。この裏側でブラウザとサーバーはどんな会話をしているんだろう」。そんな疑問に答えるのがHTTPです。この記事では、HTTPの役割やリクエスト・レスポン...
ネットワーク

【ネットワーク】名前解決の流れをたどってみる(ブラウザ→DNSサーバー)

こんにちは、かつコーチです。前回の記事で、DNSは「ドメイン名とIPアドレスを紐付ける電話帳のような仕組み」だと解説しました。では実際にブラウザにURLを入力してから、IPアドレスが返ってくるまでの間、裏側では何が起きているのでしょうか。こ...
ネットワーク

【ネットワーク】DNSとは?ドメイン名をIPアドレスに変換する仕組み

こんにちは、かつコーチです。「example.comのようなドメイン名を入力するだけでサイトが表示されるけど、実際の通信にはIPアドレスが必要なはず。この変換って誰がやっているんだろう」。そんな疑問に答えるのがDNSです。この記事では、DN...
ネットワーク

【ネットワーク】ポート番号とは?1台の機器で複数の通信を扱う仕組み

こんにちは、かつコーチです。「IPアドレスで通信相手の場所はわかった。でも、1台のサーバーでWebもメールも動いているのに、どうやって通信を仕分けているんだろう」。そんな疑問に答えるのがポート番号です。この記事では、ポート番号の役割や範囲、...
ネットワーク

【ネットワーク中級】サブネットマスクとCIDR表記の考え方

こんにちは、かつコーチです。IPアドレスの仕組みがわかってくると、次にぶつかる壁が「サブネットマスク」と「CIDR表記」です。255.255.255.0や/24といった表記を見て、何を意味しているのかわからず戸惑った経験はないでしょうか。こ...
ネットワーク

【ネットワーク入門】IPアドレスとは?機器の住所を理解する

こんにちは、かつコーチです。「IPアドレス」という言葉は聞いたことがあっても、実際に何を表しているのか、自信を持って説明できる人は少ないのではないでしょうか。前回の記事で、IPは「住所を管理する係」だとお伝えしました。この記事では、その「住...