- PR -

ファイルを空にしたいのです

1
投稿者投稿内容
森蔵
大ベテラン
会議室デビュー日: 2001/08/10
投稿数: 158
お住まい・勤務地: 大阪
投稿日時: 2002-05-09 11:36
u2です。

メールスプールにあるファイルを空にしようと思い次のコマンドを発行しました。
--
cp /dev/null /var/mail/u2
--
すると、ファイルのサイズが半分になったり、事もあろうに増えたりするのです。

そこで次のようなコマンドを発行しました。
--
cat /dev/null > /var/mail/u2
--
これでやると無事ファイルサイズが'0'になったのですが、どちらが正しい方法
なのでしょうか?それとももっと別の方法があるのでしょうか?
がるがる
ぬし
会議室デビュー日: 2002/04/12
投稿数: 873
投稿日時: 2002-05-09 13:27
どもです。
通常、という単語を使うのもあまり好みではないのですが。

cat /dev/null > foo.file

というパターンは、昔から使われる割と便利な手法です。
ちなみにcpコマンドで/dev配下をコピーするのはいろいろな意味で好ましくないんで、止めておいたほうがいいと思います。
ふじい
大ベテラン
会議室デビュー日: 2002/05/07
投稿数: 123
お住まい・勤務地: 東京
投稿日時: 2002-05-10 12:02
こんにちは、藤井と申します。

引用:

u2さんの書き込み (2002-05-09 11:36) より:

これでやると無事ファイルサイズが'0'になったのですが、どちらが正しい方法
なのでしょうか?それとももっと別の方法があるのでしょうか?



ゼロでなくてよければ(改行入っちゃいますが)

echo '' > foo.file

今回の目的では、これもお手軽でよいのでは?
森蔵
大ベテラン
会議室デビュー日: 2001/08/10
投稿数: 158
お住まい・勤務地: 大阪
投稿日時: 2002-05-10 14:49
がるがるさん・ふじいさん
返信ありがとうございます。

cat /dev/null > foo.file

を使うことにします。
通常という言葉はよくなかったです。定番って言葉が適切でしょうか...。
Uchikoshi
@ITエディタ
会議室デビュー日: 2001/07/27
投稿数: 197
投稿日時: 2002-05-11 02:49
こういう場合の一番手っ取り早い方法は、単に

> filename

じゃなかったっけ?

cshなら

:> filename

だったかな……

[ メッセージ編集済み 編集者: Uchiko 編集日時 2002-05-11 02:49 ]
1

スキルアップ/キャリアアップ(JOB@IT)