• ベストアンサー

ファイルの中身を消したい場合のコマンド(Bシェル)を教えてください

シェルでファイル(textファイル)の中身を削除したいのですが、 Googleで調べても、「ファイル・ディレクトリの削除」のコマンドはあるのですが、「ファイルの中身の削除」の方法がわかりません。 ファイルの中身を空にして、空のファイルだけを残しておく方法は無いのでしょうか? また、空になったファイルが存在できないのなら、ある文字(たとえば'a*.a')をファイルの内容として書いておきたいと思います。 どうぞ宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

/dev/null > textfile.txt か cat /dev/null > textfile.txt とか

yuri_31
質問者

お礼

ありがとうございました。 この方法を使わせていただきました。

その他の回答 (2)

  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.3

定番は : > ファイル名 です。これだと cp /dev/null ファイル名 などとは違って新しいプロセスを作らないので効率的です。 rmで消してtoudhで作ると、iノード番号が変わるしハードリンク関係も保存されません。

yuri_31
質問者

お礼

ありがとうございます。 rmで消してtoudhで作ると・・・とのことで、 この点に関しては、その通りのようで、 一度rmで消してtoudhとしたら、使えないよといわれてしまいました。

  • OsieteG00
  • ベストアンサー率35% (777/2173)
回答No.1

・rmで削除してtouchで空ファイルを作成 http://homepage2.nifty.com/cs/linux_command/command/touch.html 存在確認などは必要であればシェルで。

yuri_31
質問者

お礼

ありがとうございました

関連するQ&A