カテゴリ: Linuxコマンド集 更新日: 2026/03/18

sed -fオプションの使い方を完全ガイド!初心者でもわかるLinuxテキスト置換スクリプト入門

sed -fオプション|スクリプトをファイルから読み込んで実行する
sed -fオプション|スクリプトをファイルから読み込んで実行する

先生と生徒の会話形式で理解しよう

生徒

「Linuxで文字を置き換えるって聞いたんですけど、毎回長いコマンドを書くのは大変そうです…」

先生

「そんなときに便利なのがsed -fです。命令をファイルにまとめて実行できますよ。」

生徒

「えっ、コマンドをファイルに書けるんですか?パソコン初心者でも大丈夫ですか?」

先生

「大丈夫です。ノートに手順を書く感覚で使えます。一つずつ見ていきましょう。」

1. sedコマンドとは?

1. sedコマンドとは?
1. sedコマンドとは?

sedコマンドは、Linuxでテキストを自動で加工・変換するための基本コマンドです。文章の中の文字を置き換えたり、不要な行を削除したりできます。

難しそうに見えますが、役割はとても単純です。「文章を流し台に流して、決められたルールで加工する機械」のようなイメージを持つと理解しやすくなります。

2. -fオプションでできること

2. -fオプションでできること
2. -fオプションでできること

-fオプションは、sedの命令をファイルから読み込んで実行するための指定です。命令が多くなると、1行のコマンドに書くのは大変になります。

そこで、命令だけを別のファイルに保存し、それをまとめて実行できるのがsed -fです。料理で言うと「レシピを見ながら調理する」感覚に近いです。

3. sedスクリプトファイルを作ってみよう

3. sedスクリプトファイルを作ってみよう
3. sedスクリプトファイルを作ってみよう

まずは、sedの命令を書いたファイルを作ります。ここではreplace.sedという名前のファイルを用意します。


nano replace.sed
s/apple/orange/g

この1行は「appleという文字をorangeに全部置き換える」という意味です。sは置換、gは行の中すべてという指定です。

4. sed -fでスクリプトを実行する

4. sed -fでスクリプトを実行する
4. sed -fでスクリプトを実行する

次に、テキストファイルに対してsedスクリプトを実行します。ここではfruit.txtを加工します。


sed -f replace.sed fruit.txt
I like orange pie.
orange juice is tasty.

元のファイルを書き換えず、画面に結果だけ表示されます。安全に試せるのもsedの良いところです。

5. 複数の命令をまとめて書く方法

5. 複数の命令をまとめて書く方法
5. 複数の命令をまとめて書く方法

sed -fの強みは、複数の命令を順番に実行できることです。命令は1行ずつ書くだけです。


cat edit.sed
s/dog/cat/g
s/cat/animal/g

sed -f edit.sed text.txt
animal is cute.

上から順に処理されるため、変化の流れをノートの手順書のように管理できます。

6. -iオプションと組み合わせる

6. -iオプションと組み合わせる
6. -iオプションと組み合わせる

実際の作業では、ファイルを直接書き換えたいこともあります。その場合は-iオプションを組み合わせます。


sed -i -f replace.sed fruit.txt

これは「レシピ通りに実際の料理を作る」イメージです。一度実行すると元に戻せないため、初心者のうちはバックアップを取ってから使いましょう。

7. sed -eとの違い

7. sed -eとの違い
7. sed -eとの違い

-eオプションは、命令をコマンドラインに直接書く方法です。短い処理なら便利ですが、長くなると読みにくくなります。

-fは命令をファイルに分けるため、再利用しやすく、ミスも減らせるのが特徴です。初心者ほど-fを使うメリットは大きいです。

8. 初心者がつまずきやすいポイント

8. 初心者がつまずきやすいポイント
8. 初心者がつまずきやすいポイント

よくある失敗は「スクリプトファイルの中に余計な文字が入っている」ことです。コメントを書く場合は#を使います。

また、ファイル名やパスの指定ミスも多いです。わからなくなったらlsで確認しながら進めると安心です。

関連記事:
カテゴリの一覧へ
新着記事
New1
テキスト・データ処理
sed -fオプションの使い方を完全ガイド!初心者でもわかるLinuxテキスト置換スクリプト入門
New2
ファイル・ディレクトリ操作
mvコマンドとは?Linuxでファイルやディレクトリを移動・名前変更する基本
New3
テキスト・データ処理
sed -eオプションの使い方を完全ガイド!初心者でもわかるLinuxテキスト処理の基本
New4
ファイル・ディレクトリ操作
cp -nオプションの使い方|既存ファイルを上書きしないコピー方法を初心者向けに解説!
人気記事
No.1
Java&Spring記事人気No1
ファイル・ディレクトリ操作
findコマンドの使い方を完全ガイド!初心者でもわかるLinuxのファイル検索の基本
No.2
Java&Spring記事人気No2
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.3
Java&Spring記事人気No3
テキスト・データ処理
grepコマンドとは?Linuxで文字列を検索する基本をやさしく解説!
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
rmコマンドとは?Linuxでファイルやディレクトリを削除する基本