view raw

標準出力でファイルを上書きしようとしたら file exists: と出るときの解決法

上書きしたいのにエラーになる

[標準出力 上書き] とかで調べても

echo "hoge" > fuga.txt 

>
これで上書きできると書かれているサイトが多いですが

# 一回目
echo "hoge" > fuga.txt 
hoge
# 二回目
echo "hoge" > fuga.txt 
zsh: file exists: fuga.txt

調べても > これで上書きできると書かれている

この時の解決法のメモ

これで解決

echo "fuga" >| fuga.txt 

>| 標準出力記号にパイプをつけるだけ

cat fuga.txt
fuga

これで解決しました

あと筆者の環境ではteeコマンドだと file exists: と表示されずに上書きできました

echo "fuga" | tee fuga.txt

詳しいことはこちらに書かれています

qiita.com

hogem.hatenablog.com