
正確にはOS X 10.9.5のbashですが、UNIX一般の質問と思われるのでこのようなタイトルにしました。
catコマンドで、あるテキストファイルのあとに、同じテキストファイルをつくろうと思いましたが、無限ループになってしまい、巨大ファイルができてしまいます。
最初、このようにしてa.txtという1行のファイルを作りました。
[~]$ cat > a.txt
aaa
それで、同じa.txtを
aaa
aaa
という2行のファイルにしたいと思い、以下のようなコマンドを入力しました。
[~]$ cat a.txt >> a.txt
自分の目論見としては、a.txtの内容がa.txtに追加されるので、2行になるかと思いましたが、応答がなくなりました。
Ctrl+Cで停止し、a.txtの内容を見ると
[~]$ cat a.txt
aaa
aaa
aaa
aaa
aaa
aaa
・・・・・・
と何千行も入っています。
ファイルのサイズはこれぐらいでした。
[~]$ ls -al a.txt
-rw-r--r-- 1 TYWalker staff 16898724 9 22 12:57 a.txt
これは、なぜこのような現象になるのでしょうか。
また、私が本来やろうとしたことを、簡単なコマンドで行うにはどうすればいいでしょうか。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
cat a.txt >> a.txt とすると、
まず現在のa.txtの内容を読み出し、a.txtに追記されます。
すると、
aaa\n (←次はここから読み込まれる)(catにより、追加されている→) aaa\n
となります。ファイルには続きがあるので、それが読み込まれてa.txtに追記されます
aaa\naaa\n (←次はここから読み込まれる)(上の続きで追加されている→) aaa\n
まだファイルの続きがあるので読み込まれて追記されます.以下同様
これが延々と続く理由です。
出力を別のファイルにするとか
cat a.txt a.txt > b.txt
別のファイルにコピーしてから追記するとか
cp a.txt c.txt
cat c.txt >> a.txt
No.3
- 回答日時:
sed 2q a.txt >> a.txt
でできちゃったりして.
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【バッチファイル】ホスト名を...
-
動画が緑のモザイクのような画...
-
TextBoxコントロールを引数とし...
-
水に映った月明かりを表す言葉
-
参照設定は2.8と6.0 6.1とどち...
-
Adobe Acrobat と Adobe Reader...
-
VBAで○○:○○と表示させたいのに...
-
韓流好き妻の行動に怒り…私は狭...
-
複数のテキストファイルをエク...
-
韓国ドラマで、切ない、泣ける...
-
imac2012ってまだ使えますか?...
-
Excel・VBA フォーム入力で空...
-
次の問題(本文の下にあります...
-
高卒、専門卒、短大卒の低学歴...
-
日本の音楽市場
-
韓国の曲を"k-pop"といいますよ...
-
韓国の音楽(K-POP)の最...
-
大学祭にて
-
確率の問題です。 10人を4人、4...
-
昔のテレビっておっぱいが出て...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
参照設定は2.8と6.0 6.1とどち...
-
【バッチファイル】ホスト名を...
-
TextBoxコントロールを引数とし...
-
twiceのジヒョの1番エロいおっ...
-
複数のテキストファイルをエク...
-
VBAで○○:○○と表示させたいのに...
-
韓流好き妻の行動に怒り…私は狭...
-
昔のテレビっておっぱいが出て...
-
水に映った月明かりを表す言葉
-
Adobe Acrobat と Adobe Reader...
-
韓流女と別れたい
-
BTS(防弾少年団)の曲を教えてく...
-
全国の最新の金融機関コード・...
-
latestの対義語
-
堀秀政の通称「久太郎」の読み方
-
動画が緑のモザイクのような画...
-
imac2012ってまだ使えますか?...
-
Excel・VBA フォーム入力で空...
-
Accessのレポートで重複データ...
-
プロジェクタに背景しか映らない
おすすめ情報