Linuxのファイルにテキストを追加する最も簡単な方法は何ですか?ファイルにテキストを追加するにはどうすればよいですか?
私は一見がat this questionでしたが、受け入れられる答えは追加のプログラム(sed
)を使用しています。echo
またはそれに類似した方法で簡単な方法があるはずです。
Linuxのファイルにテキストを追加する最も簡単な方法は何ですか?ファイルにテキストを追加するにはどうすればよいですか?
私は一見がat this questionでしたが、受け入れられる答えは追加のプログラム(sed
)を使用しています。echo
またはそれに類似した方法で簡単な方法があるはずです。
cat >> filename
This is text, perhaps pasted in from some other source.
Or else entered at the keyboard, doesn't matter.
^D
基本的に、あなたはファイルにしたい任意のテキストをダンプすることができます。 CTRL-Dは、ファイルの終わりの信号を送信し、入力を終了してシェルに返します。
方法について:
echo "hello" >> <filename>
既存の場合は、ファイルの内容を上書きします>
を使用しながら、ファイルの末尾にデータを追加します>>
演算子を使用します。
また、同じ方法でprintf
を使用することができます。上記を使用して危険なことができることを
printf "hello" >> <filename>
注意を。たとえば、すでにファイルがあり、ファイルの末尾にデータを追加する必要があり、最後に>
を追加することを忘れた場合、ファイル内のすべてのデータが破棄されます。あなたは.bashrc
でnoclobber
変数を設定することによって、この動作を変更することができます
set -o noclobber
今、あなたはあなたがcannot overwrite existing file
を言って警告が表示されますecho "hello" > file.txt
やるしようとします。あなたは今、特別な構文を使用する必要があり、ファイルへの書き込みを強制的に
:
echo "hello" >| <filename>
あなたはデフォルトecho
で-n
フラグを使用することによって抑制することができる末尾の改行文字を追加することも知っておく必要があります。
echo -n "hello" >> <filename>
参照
一般的に、私は 'cat'を使う答えよりも好きですが、'> 'の代わりに' >> 'を使うように注意してください! – sixty4bit
@ sixty4bit - 完全に同意しますが、シェルを使って作業しているときや、sudo rm -r/'=などのようなことをしている場合は、常にあなたが何をしているのかを知っておく必要があります。 – Cyclonecode
' sudo rm -r/' 'sudo rm -rf /'!^_ ^既存のファイルの内容を '>'で上書きする前に確認を求めるフラグがありますか?そのようなフラグを常に使用することをエイリアスすることは、良い考えであるように思えます。 – sixty4bit
他の可能な方法は次のとおりです。
echo "text" | tee -a filename
-aはファイルの末尾に追加します。
承認済みの回答に従います。
CTRL-D to designate the end if using this in a script以外のものが必要です。代わりにこれを試してください:
これは、指定されたファイルにテキストを追加します(「EOF」は含まれません)。
here document (or heredoc)を利用しています。
ただし、指定されたファイルに追加するにはsudoが必要な場合は、コマンドラインで直接入力する場合はI/Oリダイレクトのためにヘドロッコを利用するのが面倒です。
コマンドラインで直接入力しているときに、この変動は動作します:
sudo sh -c 'cat <<EOF>> filename
This is text entered via the keyboard.
EOF'
それとも猫とヒアドキュメントを使用したときに見られるコマンドラインのsudoの問題を避けるために、代わりにtee
を使用することができます。
tee -a filename << EOF
This is text entered via the keyboard or via a script.
EOF
@JonKiparsky:申し訳ありませんが、あなたの答えに書かれているとは思わなかった... –
ファイルにroot権限が必要な場合はどうすればいいですか? – UselesssCat