コマンドの実行結果・標準出力をファイルに保存

当ページのリンクには広告が含まれています。

スポンサーリンク

標準出力をファイルに保存する方法を紹介します。

標準出力をファイルに保存

コマンドの実行結果などの出力(標準出力)をファイルに保存する方法を紹介します。

コマンド > ファイルコマンドの実行結果をファイルに上書き保存します。
コマンド >> ファイルコマンドの実行結果をファイルに追記します。
コマンド >& ファイルコマンドの実行結果とエラー(標準エラー出力)をファイルに上書きします。
コマンド 2> ファイルコマンドのエラー(標準エラー出力)をファイルに上書きします。
コマンド 2>> ファイルコマンドのエラー(標準エラー出力)をファイルに追記します。

それでは実際にやってみましょう。

コマンドの実行結果(標準出力)をファイルに上書き

以下のファイル(file1)に、コマンドの実行結果を上書き保存します。

$ cat file1
ファイルだよー。

まず、「lsコマンド」の実行結果をファイルに保存します。

$ ls -a > file1

file1の中身をみてみると、以前のファイル内容は削除され「lsコマンド」の実行結果が上書き保存されていますね。

$ cat file1
.
..
.bash_history
.bash_logout
.bashrc
.emacs.d
.lesshst
.profile
file1
file2

コマンドの実行結果(標準出力)をファイルに追記

以下のファイル(file2)に、コマンドの実行結果を追記します。

$ cat file2
Hello,

echoコマンド」の実行結果をファイルに追記します。

$ echo World! >> file2

それでは追記されたかどうかを確認してみましょう。このようにコマンドの実行結果が追記されていることがわかります。

$ cat file2
Hello,
World!

標準出力と標準エラー出力をファイルに上書き

以下のファイル(file3)に、コマンドの標準出力と標準エラー出力を上書きします。

$ cat file3 
Linux入門!

空のディレクトリを削除する「rmdirコマンド」を使います。

まずは、比較のために標準出力をファイルに上書きします。標準エラー出力は、そのまま表示されていますね。

$ rmdir dir1 > file3
rmdir: `dir1' を削除できません: ディレクトリは空ではありません

標準出力がなかったので、ファイル内容は空になります。

$ cat file3

次は標準出力と標準エラー出力をファイルに上書きします。

$ rmdir dir1 >& file3

このように標準エラー出力がファイルに保存されます。

$ cat file3
rmdir: `dir1' を削除できません: ディレクトリは空ではありません

使い分けると便利なので、さまざまな場面で利用してみましょう。

基本操作 の人気記事

  1. コマンドの実行結果・標準出力をファイルに保存
  2. パイプ「|」を使って 複数のコマンドを組み合わせる
  3. ワイルドカードの使い方
  4. コマンドラインの操作(カーソル移動・文字削除・補完)

関連記事(一部広告含む)