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 文字 · 須藤権限

pasteコマンド - 複数ファイルを横に結合する

pasteコマンドで複数のファイルの行を横方向に結合する方法を説明します

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

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 文字 · 須藤権限

basename

はじめに こんにちは!今回はbasenameコマンドについて解説します。 basenameはファイルパスからファイル名だけを抽出するコマンドです。フルパスが与えられたときに、最後のファイル名部分だけが欲しい時に超便利ですね。 スクリプトを書く時に頻繁に出てくるコマンドなので、これを機にマスターしちゃいましょう! basenameコマンドとは basenameは、フルパスやファイルパスからファイル名の部分だけを取り出す外部コマンドです。 例えば、/home/user/documents/file.txtというパスが与えられたとき、basenameはfile.txtだけを抽出します。シェルスクリプトの中で、ディレクトリパスに関係なくファイル名だけを処理したい時に重宝するコマンドです。 基本構文 1 basename パス [サフィックス] パスはファイルのパス、サフィックス(省略可)は除外したい拡張子です。 主なオプション オプション 説明 -a 複数のパス引数をすべて処理(GNU拡張) -s サフィックスを指定(GNU拡張) -z 出力をNUL文字で区切る(GNU拡張) 使用例 例1: 基本的なパスからファイル名を抽出 1 basename /home/user/documents/file.txt 実行結果: 1 file.txt フルパスからfile.txtというファイル名だけを取り出します。これが基本的な使い方です。 例2: 拡張子を除外する 1 basename /home/user/documents/file.txt .txt 実行結果: 1 file 第2引数に.txtを指定することで、拡張子を除外してfileだけを取り出します。 例3: シンプルなファイル名を処理 1 basename document.pdf 実行結果: 1 document.pdf 既にファイル名だけが与えられた場合は、そのまま返します。 例4: ディレクトリパスも処理 1 basename /var/log/system.log 実行結果: 1 system.log どんなディレクトリ階層からでも、ファイル名だけを取り出します。 例5: サフィックス指定で拡張子削除 1 basename /etc/config/app.conf .conf 実行結果: ...

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

dirname

はじめに こんにちは!今回はdirnameコマンドについて解説します。 dirnameはファイルパスからディレクトリパス部分だけを抽出するコマンドです。先ほど解説したbasenameの逆バージョンって感じですね。 シェルスクリプトでパスを処理する時に、basenameとセットで超よく使われるコマンドです! dirnameコマンドとは dirnameは、フルパスやファイルパスからディレクトリパスの部分だけを取り出す外部コマンドです。 例えば、/home/user/documents/file.txtというパスが与えられたとき、dirnameは/home/user/documentsだけを抽出します。ファイルのディレクトリパスだけが必要な場合に重宝するコマンドです。 基本構文 1 dirname パス パスはファイルやディレクトリのパスです。 主なオプション オプション 説明 -z 出力をNUL文字で区切る(GNU拡張) 使用例 例1: 基本的なパスからディレクトリを抽出 1 dirname /home/user/documents/file.txt 実行結果: 1 /home/user/documents フルパスから/home/user/documentsというディレクトリパスだけを取り出します。これが基本的な使い方です。 例2: 相対パスでの利用 1 dirname ./documents/file.txt 実行結果: 1 ./documents 相対パスでも同じようにディレクトリパスだけを抽出できます。 例3: ファイル名だけが与えられた場合 1 dirname file.txt 実行結果: 1 . ディレクトリ情報がない場合は、カレントディレクトリを意味する.を返します。 例4: ルートディレクトリの場合 1 dirname /etc/passwd 実行結果: 1 /etc ルートに近いパスでも正しくディレクトリを抽出します。 例5: スラッシュで終わるパス 1 dirname /home/user/documents/ 実行結果: ...

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

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 文字 · 須藤権限

ddコマンド

はじめに こんにちは!今回はddコマンドについて解説します。 ddは、ファイルやディスク全体をブロック単位でコピー・変換するコマンドです。ディスクイメージのバックアップ、USB起動メディアの作成、ディスク丸ごとのクローンなど、低レベルのデータ操作をする時に使うんですね。 「火力の強い、融通が利くコピーツール」ってイメージです。パワフルですけど、使い方を間違えるとデータ破損のリスクがあるので注意が必要です。 ddコマンドとは ddは、“convert and copy"の略で、ファイルやディスクのデータをブロック単位でコピー・変換する外部コマンドです。 通常のcpコマンドではファイルレベルでしか操作できませんが、ddは低レベルでのディスク操作ができます。ディスク全体のバックアップ、パーティション操作、USB起動メディア作成、ディスククローンなど、システム管理者がよく使う重要なコマンドなんです。 ddの特徴は、細かいオプションでデータ変換(大文字・小文字変換など)ができることと、ブロックサイズを指定してコピーできることです。ただし、パワフルだからこそ、誤った使い方はデータ破損につながるので、慎重に使う必要があります。 基本構文 1 dd [オプション] ddのオプションは、if=(入力ファイル)とof=(出力ファイル)で指定します。 1 dd if=入力ファイル of=出力ファイル bs=ブロックサイズ count=コピーするブロック数 他のコマンドと違う独特の構文なので、最初は戸惑うかもしれませんね。 主なオプション オプション 説明 if= 入力ファイル(input file) of= 出力ファイル(output file) bs= ブロックサイズ(block size) count= コピーするブロック数 skip= 入力ファイルの最初からスキップするブロック数 seek= 出力ファイルの最初からシークするブロック数 conv= データ変換(notrunc, noerror など) status= 進捗表示(progress, none など) ibs= 入力ブロックサイズ obs= 出力ブロックサイズ 使用例 例1: ファイルをコピー 1 dd if=source.img of=destination.img 実行結果: 1 2 3 1024+0 records in 1024+0 records out 524288 bytes (524 kB, 512 KiB) copied, 0.5 s, 1.0 MB/s source.imgをdestination.imgにコピー。出力にはコピーしたブロック数とデータ転送速度が表示されます。 ...

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

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 文字 · 須藤権限

Head - ファイルの先頭行を表示する

はじめに こんにちは!今回はheadコマンドについて解説します。 headはファイルの先頭行を表示するコマンドです。ログファイルの最初の内容を確認したり、大きなファイルの構造を把握したり、毎日使う超基本的なコマンドですね。 「ファイルの最初だけ見る」って感じです。tailと対になるコマンドで、どちらもよく使います。 headコマンドとは headは、ファイルの先頭の行を表示する外部コマンドです。デフォルトでは最初の10行を表示します。 大きなファイル(ログファイルやデータファイル)の中身を確認する時に便利。全部読み込む必要がなく、サッと先頭だけ見られます。複数ファイルにも対応しており、それぞれのファイル名とともに内容が表示されます。 基本構文 1 head [オプション] ファイル名 ファイルの先頭行を表示します。デフォルトでは最初の10行が表示されます。 主なオプション オプション 説明 -n NUM 最初のNUM行を表示(デフォルト: 10) -n +NUM NUM行目以降を全て表示 -c NUM 最初のNUMバイトを表示 -q ファイル名ヘッダを表示しない(quiet) -v 常にファイル名ヘッダを表示(verbose) 使用例 例1: 基本的な使い方(先頭10行) 1 head /etc/passwd 実行結果: 1 2 3 4 5 6 7 8 9 10 root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin sys:x:3:3:sys:/sys:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/usr/sbin/nologin man:x:6:12:man:/usr/share/man:/usr/sbin/nologin lp:x:7:4:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin デフォルトで最初の10行を表示します。 例2: 指定した行数を表示 1 head -n 5 /etc/passwd 実行結果: ...

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