scp

はじめに こんにちは!今回はscpコマンドについて解説します。 scpはSSH経由で安全にファイルを転送するコマンド。ローカル↔リモート、さらにはリモート↔リモート間のファイル転送ができます。 cpのSSH版ってイメージですね。セキュアでシンプルだから、ファイル転送の定番です。 scpコマンドとは scpは"Secure Copy"の略で、SSHプロトコルを使用して安全にファイルを転送する外部コマンドです。 昔のrcp(Remote Copy)と違い、通信内容が暗号化されます。リモートサーバーとのファイル転送、バックアップ、設定ファイルの配置など、様々な場面で活躍します。 基本構文 1 scp [オプション] コピー元 コピー先 ローカルファイルは通常のパス、リモートファイルはuser@host:path形式で指定します。 主なオプション オプション 説明 -r ディレクトリを再帰的にコピー -p ファイルの属性(タイムスタンプ・権限)を保持 -P ポート番号を指定(大文字) -C 圧縮を有効にする -v 詳細表示(verbose) -i 秘密鍵ファイルを指定 -o SSHオプション設定 -3 2つのリモートホスト間でコピー(経由ホストを明示) 使用例 例1: ローカルからリモートにファイルをコピー 1 scp file.txt [email protected]:/home/user/ 実行結果: 1 2 [email protected]'s password: file.txt 100% 1024 1.0MB/s 00:00 ローカルのfile.txtをリモートホストの/home/user/にコピーします。進捗バーが表示されます。 例2: リモートからローカルにファイルをコピー 1 scp [email protected]:/var/log/app.log ./ 実行結果: 1 2 [email protected]'s password: app.log 100% 2048 2.0MB/s 00:00 リモートホストの/var/log/app.logをローカルの現在ディレクトリにコピーします。 ...

2026年1月3日 · 2 分 · 361 文字 · 須藤権限

ssh

はじめに こんにちは!今回はsshコマンドについて解説します。 sshはリモートホストに安全に接続するコマンドです。サーバー管理、リモートワーク、開発環境へのアクセスなど、IT業務ではめっちゃ重要なコマンド。 「遠くのコンピュータに安全につながる魔法」くらいの感じですね。これなしでは現代のIT業務は成り立ちません。 sshコマンドとは sshは"Secure Shell"の略で、リモートマシンに暗号化された接続を確立する外部コマンドです。 昔のtelnetと違い、通信内容が暗号化されるので、パスワードやデータが盗聴される心配がありません。サーバーへのログイン、ファイル転送、トンネリングなど、様々な用途で活躍します。 基本構文 1 ssh [オプション] [ユーザー名@]ホスト名 [コマンド] ユーザー名を省略した場合は、現在のシステムのユーザー名が使用されます。 主なオプション オプション 説明 -u ユーザー名を指定 -p ポート番号を指定(デフォルトは22) -i 秘密鍵ファイルを指定 -v 詳細表示(ログイン時のトラブル対応で便利) -N コマンド実行なし(ポートフォワーディング用) -L ローカルポートフォワーディング -R リモートポートフォワーディング -X X11フォワーディング(GUIアプリを遠隔実行) -C 圧縮を有効にする -A SSH認証エージェント転送 -o オプション設定(例:-o StrictHostKeyChecking=no) 使用例 例1: 基本的なリモート接続 1 ssh [email protected] 実行結果: 1 2 3 4 The authenticity of host 'example.com (192.168.1.10)' can't be established. ECDSA key fingerprint is SHA256:xxxxxxxxxx. Are you sure you want to continue connecting (yes/no/[fingerprint])? yes [email protected]'s password: example.comというホストにuserユーザーでログインします。初回接続時はホストキーを確認するメッセージが表示されます。 ...

2026年1月3日 · 2 分 · 388 文字 · 須藤権限

fold

はじめに こんにちは!今回はfoldコマンドについて解説します。 foldは長すぎるテキスト行を指定した幅で折り返すコマンドです。長い1行を複数行に分割する時に超便利! メール本文を80文字幅で表示したり、古いターミナルに対応させたりする時に活躍するコマンドなので、これを機にマスターしちゃいましょう! foldコマンドとは foldは、入力ファイルの行を指定された文字幅で折り返して出力する外部コマンドです。 例えば、1000文字の長い行があった場合、fold -w 80を使えば80文字ごとに行を分割できます。テキストメールやレポートを一定幅で整形したい時に重宝します。 基本構文 1 fold [オプション] [ファイル...] ファイルを指定しない場合は標準入力から読み込みます。 主なオプション オプション 説明 -w 折り返し幅を指定(デフォルトは80) -b バイト単位で折り返す -s 単語の途中では折り返さない(スペースで折り返す) -c マルチバイト文字を1文字として扱う(GNU拡張) 使用例 例1: デフォルト幅(80文字)で折り返し 1 2 echo "This is a very long line that contains so much text \ that it will exceed the eighty character width." | fold 実行結果: 1 2 3 This is a very long line that contains so much text that it will d efinitely exceed the default width of eighty characters when displa yed on a terminal. デフォルトの80文字幅で折り返されます。 ...

2026年1月3日 · 2 分 · 370 文字 · 須藤権限

tee

はじめに こんにちは!今回はteeコマンドについて解説します。 teeは標準入力を受け取って、それをファイルに保存しながら、同時に標準出力に表示するコマンドです。パイプの途中で出力を保存したい時に超便利! 複雑なパイプラインでも途中結果を確認したい時に活躍するコマンドなので、これを機にマスターしちゃいましょう! teeコマンドとは teeは、標準入力からデータを読み込んで、指定したファイルに書き込みながら、同時に標準出力に出力する外部コマンドです。“tee"は配管のTの形から来た命名ですね。 パイプの途中で途中結果をファイルに保存する必要がある時に重宝します。複数ファイルに同時に保存することもできます。 基本構文 1 コマンド | tee [オプション] ファイル [ファイル ...] パイプで標準出力を受け取り、指定したファイルに保存します。 主なオプション オプション 説明 -a ファイルに追記(上書きしない) -i 割り込み信号(SIGINT)を無視 -p 割り込み信号を無視(GNU拡張) -u バッファを使わない(出力を即座に反映) 使用例 例1: パイプの途中結果をファイルに保存 1 cat /etc/passwd | tee users.txt | wc -l 実行結果: 1 42 ファイルは保存されつつ、同時にwc -lの結果も表示されます。 例2: 複数ファイルに保存 1 echo "Hello World" | tee file1.txt file2.txt file3.txt 実行結果: 1 Hello World 3つのファイルに同時に内容を保存できます。 例3: ファイルに追記する 1 echo "New Line" | tee -a existing.txt 実行結果: 1 New Line -aオプションで既存ファイルに追記します。 ...

2026年1月3日 · 2 分 · 380 文字 · 須藤権限

tr

はじめに こんにちは!今回はtrコマンドについて解説します。 trはテキスト内の文字を変換したり削除したりするコマンドです。大文字を小文字に変換したり、特定の文字を別の文字に置き換えたり、超便利なコマンドですね。 テキスト処理をする時にめっちゃ活躍するので、これを機にマスターしちゃいましょう! trコマンドとは trは、標準入力からテキストを受け取って、指定された文字を変換・削除して標準出力に出力する外部コマンドです。“translate"の略ですね。 パイプで他のコマンドと組み合わせて使用することが多く、テキスト処理の強い味方です。正規表現には対応していませんが、シンプルな文字変換であればtrの方が高速です。 基本構文 1 tr [オプション] 変換元 [変換先] 変換元は置き換えたい文字、変換先は置き換え後の文字です。 主なオプション オプション 説明 -d 文字を削除(変換先を指定しない) -s 連続する同じ文字を1つにまとめる -c 変換元の補集合を使用(指定した文字以外を対象) -C -cと同じ(互換性オプション) -t -dと-sが同時に指定された時に変換先をスキップ 使用例 例1: 小文字を大文字に変換 1 echo "hello world" | tr a-z A-Z 実行結果: 1 HELLO WORLD a-zは小文字全体、A-Zは大文字全体を表します。最も基本的な使い方です。 例2: 大文字を小文字に変換 1 echo "HELLO WORLD" | tr A-Z a-z 実行結果: 1 hello world 大文字から小文字への変換も同じやり方です。 例3: 特定の文字を別の文字に置き換え 1 echo "hello world" | tr o 0 実行結果: 1 hell0 w0rld o(オー)を0(ゼロ)に置き換えます。 ...

2026年1月3日 · 2 分 · 358 文字 · 須藤権限

umountコマンド

はじめに こんにちは!今回はumountコマンドについて解説します。 umountは、マウント済みのファイルシステムをアンマウント(切断)するコマンドです。mountコマンドの逆の操作ですね。USBドライブを取り外す前とか、ストレージの接続を終了したい時に使うんです。 「パソコンからUSBを安全に取り外す」をコマンドでやるってイメージです。これもめっちゃ重要ですよ。 umountコマンドとは umountは、マウント済みのファイルシステムをアンマウント(切断)する外部コマンドです。 Linuxでは、マウント中のファイルシステムに対するI/O操作は即座に実行されるわけではなく、バッファリングされています。そのため、デバイスを物理的に取り外す前にumountできちんとアンマウントする必要があります。データの破損を防ぐためにも重要なコマンドなんです。 umountを実行すると、キャッシュがディスクにフラッシュされ、ファイルシステムが切断されます。その後初めて、安全にデバイスを取り外したり、別の場所に再マウントできるわけです。 基本構文 1 umount [オプション] マウントポイント または 1 umount [オプション] デバイス マウントポイント(ディレクトリパス)またはデバイス名を指定してアンマウントします。 主なオプション オプション 説明 -l lazy unmount(すぐにアンマウント表示するが、後で切断) -f force unmount(強制的にアンマウント) -r アンマウント失敗時に読み取り専用にする -n /etc/mtabを更新しない -v 詳細表示(verbose) -a /etc/mtabのすべてをアンマウント -t 指定されたファイルシステムタイプのみアンマウント 使用例 例1: 基本的なアンマウント 1 sudo umount /mnt/usb 実行結果: 1 (成功時は何も表示されない) /mnt/usbにマウントされているファイルシステムをアンマウントします。これが最もシンプルな使い方です。 例2: デバイス名でアンマウント 1 sudo umount /dev/sdb1 実行結果: 1 (成功時は何も表示されない) マウントポイントの代わりに、デバイス名を指定してアンマウント。結果は同じです。 例3: 詳細表示でアンマウント 1 sudo umount -v /mnt/usb 実行結果: ...

2026年1月3日 · 2 分 · 355 文字 · 須藤権限

mountコマンド

はじめに こんにちは!今回はmountコマンドについて解説します。 mountは、ファイルシステムをマウント(接続)するコマンドです。USBドライブやハードディスク、ネットワークストレージなど、様々なストレージをLinuxシステムに接続する時に使うんですね。 「パソコンにUSBをつなぐ」的な操作をコマンドでやるってイメージです。めっちゃ重要なコマンドですよ。 mountコマンドとは mountは、ファイルシステムをマウント(接続)する外部コマンドです。 Linuxでは、ハードディスク、USB、ネットワークストレージなど、あらゆるストレージをファイルシステムとしてツリーに接続することで、ユーザーが統一的にアクセスできるようになっています。mountはその接続作業を行うコマンドなんです。 マウントをすることで、デバイスの内容がディレクトリツリーの特定の場所から見えるようになります。例えば/mntや/mediaといったディレクトリにマウントすると、そこからそのデバイスのファイルにアクセスできるわけです。 基本構文 1 mount [オプション] デバイス マウントポイント mount単体で実行すると、現在マウント済みのファイルシステムを表示します。デバイスとマウントポイントを指定することで、新しくマウントができます。 主なオプション オプション 説明 -t ファイルシステムの種類を指定(ext4, ntfs, vfat など) -o マウントオプションを指定(comma区切りで複数可) -r 読み取り専用でマウント(read-only) -w 読み書き可能でマウント(read-write、デフォルト) -a fstabに記載されているすべてのファイルシステムをマウント -n fstabを読まずにマウント -v 詳細表示(verbose) -l ラベル別にマウント -U UUID別にマウント --bind ディレクトリを別の場所にマウント 使用例 例1: 現在マウント済みのファイルシステムを表示 1 mount 実行結果: 1 2 3 4 5 /dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro,stripe=4) devtmpfs on /dev type devtmpfs (rw,relatime,size=1234567k,...) tmpfs on /run type tmpfs (rw,nosuid,nodev,...) /dev/sda2 on /home type ext4 (rw,relatime) ... システムに接続されているすべてのファイルシステムと、その詳細情報が表示されます。 ...

2026年1月3日 · 2 分 · 316 文字 · 須藤権限

Xargs - 標準入力から引数を構築するコマンド

はじめに こんにちは!今回はxargsコマンドについて解説します。 xargsは標準入力から引数を構築して、別のコマンドに渡すコマンドです。findやgrepの結果を他のコマンドで処理したり、大量のファイルを一括操作したり、日々の運用を効率化する強力なコマンドですね。 「パイプの後ろでファイル名を受け取る」って感じです。実は複雑に見えますが、慣れると超便利ですよ。 xargsコマンドとは xargsは、標準入力から読み込んだ行をコマンドの引数に変換して実行する外部コマンドです。 通常のパイプ(|)は標準入力としてテキストを受け渡しますが、xargsはそれをコマンドの引数に変換します。find、grep、echoなどの結果をファイル名として他のコマンドに渡したい場合に非常に便利。大量のファイル操作を効率的に行えます。 基本構文 1 xargs [オプション] コマンド 標準入力から引数を読み込んで、指定したコマンドに渡します。デフォルトでは標準入力の各行が引数になります。 主なオプション オプション 説明 -I {} 占有文字列(デフォルト: スペース区切り) -n NUM 1回に渡す引数の最大個数 -d DELIM 区切り文字を指定(デフォルト: スペース/改行) -0 NUL文字で区切られた入力を処理 -p 実行前に確認を取る(prompt) -r 標準入力が空の場合は実行しない -t 実行するコマンドを表示 --no-run-if-empty 入力がない場合は実行しない 使用例 例1: findの結果をrmで削除 1 find . -name "*.tmp" | xargs rm 実行結果: 1 (マッチしたすべての.tmpファイルが削除される) 最も一般的な使い方。findで見つけたファイルをrmで一括削除。 例2: 確認付きで削除(-p オプション) 1 find . -name "*.tmp" | xargs -p rm 実行結果: 1 rm file1.tmp file2.tmp ? -pで実行前に確認。危険な操作の時に便利。 ...

2026年1月3日 · 3 分 · 529 文字 · 須藤権限

readlinkコマンド

はじめに こんにちは!今回はreadlinkコマンドについて解説します。 readlinkはシンボリックリンクがどのファイルを指しているか確認するコマンドです。リンクの実態を追いかけるときに便利ですね。 「このショートカット、実際にはどこのファイル?」みたいなときに使うコマンドです。 readlinkコマンドとは readlinkは、シンボリックリンクが指し示す実体ファイルのパスを表示する外部コマンドです。 Linuxではシンボリックリンク(ショートカットのようなもの)がよく使われます。readlinkでそのリンクの実体を確認できます。絶対パスに変換する-fオプションも便利ですね。 基本構文 1 readlink [オプション] ファイルまたはディレクトリ リンクの実体パスを表示します。 主なオプション オプション 説明 -f すべてのシンボリックリンクを解決して絶対パスを表示 -e -fと同様(リンク先が存在する必要あり) -m リンク先が存在しなくても絶対パスを表示 -n 改行を出力しない -v 詳細表示 使用例 例1: 基本的なreadlink 1 readlink /usr/bin/python 実行結果: 1 python3 /usr/bin/pythonというリンクがpython3を指していることが分かります。 例2: 絶対パスで表示 1 readlink -f /usr/bin/python 実行結果: 1 /usr/bin/python3.9 -fオプションで、すべてのリンクを解決して絶対パスを表示。実際のバイナリファイルのパスが分かります。 例3: リンク先の確認 1 readlink /etc/localtime 実行結果: 1 ../usr/share/zoneinfo/Asia/Tokyo タイムゾーン設定へのリンク。どのタイムゾーンに設定されているか分かります。 例4: 存在しないリンク先も表示 1 readlink -m /tmp/mylink 実行結果: 1 /tmp/mylink リンク先が存在しない場合でも、絶対パスを構築して表示します。 ...

2026年1月3日 · 2 分 · 216 文字 · 須藤権限

lzcatコマンド

はじめに こんにちは!今回はlzcatコマンドについて解説します。 lzcatは.xz形式の圧縮ファイルを解凍して表示するコマンドです。gzipやbzip2より高い圧縮率で圧縮された大きなファイルを扱うときに活躍します。 圧縮ファイルをそのまま表示できるので、一時的なファイル作成が不要。サーバーの容量が限られた環境で便利です。 lzcatコマンドとは lzcatは、.xz形式(LZMA2圧縮)のファイルを解凍しながら表示する外部コマンドです。標準出力に解凍内容を出力するため、パイプと組み合わせやすいですね。 .xz形式はgzipやbzip2より高い圧縮率を実現。特に大規模データの配布やアーカイブに使われています。 基本構文 1 lzcat [ファイル名...] 標準入力からのデータも受け取れます。 主なオプション オプション 説明 -v 詳細表示 -q 警告メッセージを抑制 -k 元ファイルを保持 -t ファイルをテスト 使用例 例1: 圧縮ファイルを表示 1 lzcat archive.tar.xz 実行結果: 1 (tar圧縮ファイルの内容が表示される) 圧縮ファイルを自動的に解凍して表示。 例2: ファイルの内容を確認 1 lzcat logfile.xz | head -20 実行結果: 1 最初の20行が表示される 大きなログを解凍して先頭だけ確認。 例3: 圧縮されたテキストを検索 1 lzcat document.xz | grep "keyword" 実行結果: 1 keywordを含む行が表示される 解凍せずにファイル内を検索。 例4: 圧縮ファイルを別ファイルに解凍 1 lzcat archive.tar.xz > archive.tar 実行結果: 1 (archive.tarが作成される) 標準出力をリダイレクトして解凍。 ...

2026年1月3日 · 2 分 · 258 文字 · 須藤権限