「Tee」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(文言修正)
(→‎参照: update TranslationStatus.)
 
(同じ利用者による、間の1版が非表示)
26行目: 26行目:
 
tee は保護されたファイルへの書き込みに非常に便利です。
 
tee は保護されたファイルへの書き込みに非常に便利です。
   
$ ''input stream'' | sudo tee ''--option'' ''protected file1 protected file2...''
+
$ ''input stream'' | sudo tee ''--option'' ''protected_file1 protected_file2...''
   
 
パーミッションの関係で、単純な {{ic|>}}/{{ic|>>}} ではうまくいかなかった場合に。
 
パーミッションの関係で、単純な {{ic|>}}/{{ic|>>}} ではうまくいかなかった場合に。
51行目: 51行目:
 
* [https://www.gnu.org/software/coreutils/manual/html_node/tee-invocation.html tee info]
 
* [https://www.gnu.org/software/coreutils/manual/html_node/tee-invocation.html tee info]
   
{{TranslationStatus|tee|2022-7-5|736274}}
+
{{TranslationStatus|tee|2024-7-17|809939}}

2024年7月17日 (水) 18:00時点における最新版

Wikipedia より:

コンピューティングでは、tee は標準ストリームを使用するコマンドラインインタプリタ(シェル)のコマンドで、標準入力を読み込んで標準出力と 1 つ以上のファイルの両方に書き込み、入力を効果的に複製するものです。主にパイプやフィルタと組み合わせて使用される。コマンド名は、配管工事で使用される T 字分岐にちなんで付けられています。

インストール

tee(1)coreutils パッケージの一部です。

使い方

ファイルにコンテンツを書き込むには

$ input stream | tee file1 file2...

デフォルトでは、tee は再度使用されると、ファイル内のコンテンツを上書きします。 ただし、必要に応じて、-a/--append 引数を使用してファイルにコンテンツを追加できます。

詳細は、tee(1) を参照してください。

ヒントとテクニック

保護されたファイルに書き込む

tee は保護されたファイルへの書き込みに非常に便利です。

$ input stream | sudo tee --option protected_file1 protected_file2...

パーミッションの関係で、単純な >/>> ではうまくいかなかった場合に。

Vim

同様のコンセプトは、root が所有する設定ファイルを編集する際に、sudoVim を起動するのを忘れた場合に便利です。この場合、Vim 内部で以下のようにしてファイルを保存することができます。

:w !sudo tee %

これを ~/.vimrc に追加すると、コマンドモードでの :w!!! マッピングでこのトリックを簡単に使えるようになります。

~/.vimrc
" Allow saving of files as sudo when I forgot to start vim using sudo
 cmap w!! w !sudo tee > /dev/null %

> /dev/null の部分は、他のパイプコマンドに何も渡す必要がないため、標準出力を明示的に捨てています。

この仕組みの詳細については、How does the vim “write with sudo” trick work? の記事を参照してください。

参照

翻訳ステータス: このページは en:tee の翻訳バージョンです。最後の翻訳日は 2024-7-17 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。