No.4ベストアンサー
- 回答日時:
$. が「現在の行番号」を表します. で, $_ が「読み込んだ行」なので "$.: $_" で「読み込んだ行の前に行番号を追加する」ということになります.
あと, 書式が必要なら指定できる printf もちゃんと用意されてます. 使える書式はだいたい C と同じです.
ということで Leopard なら
perl -ne 'printf "%06d: %s", $., $_' ファイル名
でいいし, Windows でも
printf "%06d: $s", $., $_ while <>;
というスクリプトを書いて
perl スクリプト ファイル名
で OK.
ただし複数のファイルを一度に処理しようとすると行番号が「前のファイルの続き」になるのは同じ.
望みが100%かないました。
ありがとうございました。感謝感激です。
今はコピペしているだけですが、解説文の意味を理解できるように
精進します。
No.3
- 回答日時:
1つのファイルの各行に行番号を付けるということだと:
使ってる OS によるけど Unix なら
cat -n ファイル名
が最も簡単. ど~しても Perl を使いたいのなら
perl -ne 'print "$.: $_"' ファイル名
でいける (出力は適宜リダイレクトする). Windows はクオートまわりが弱いのでワンライナーにならないけど
print "$.: $_" while <>;
とだけ書かれたスクリプトを使う (こちらも出力は適宜リダイレクト) のがきっと楽だと思う.
複数のファイルに対しそれぞれ個別に行番号を付けるなら #2 に近い方法です.
期待していた以上に(初心者にも十分に)簡単な方法を教えて
いただきまして、感激です。perlに固執してはいませんので、catでも
(しかも簡単に)実現できることに非常に驚きましたし、また、
為になりました。
更に欲張って、質問しますが、行番号の桁数を指定する方法は
有りますか。例えば、6桁指定の場合は、
000001
000002
000003
となるような方法です。ちなみに、自分が利用できる環境は、
Windows Vista, Mac OS X 10.5 (Leopard)です。テキストファイルを
扱える限り、手段を問いません(始めから明言しておけば良かったですね)。
No.2
- 回答日時:
こんなんでどうでしょうか。
#!/usr/bin/perl
use strict;
use warnings;
my $filename = 'text.txt'; #行番号を挿入したいファイル
my $tmpfile = 'text.tmp';
my $count = 1;
open my $fh, '<', $filename or die "can`t open $filename : $!\n";
open my $tmp, '>', $tmpfile or die "can`t write $tmpfile : $!\n";
while(<$fh>){
print $tmp "$count : $_";
$count++;
}
close $fh;
close $tmp;
unlink($filename) or die "can`t delete $filename : $!\n";
rename($tmpfile, $filename);
No.1
- 回答日時:
ここで解説しているスクリプトでできないでしょうか?
http://www.geocities.jp/m_hiroi/perl_tk/perltk07 …
ダウンロードはできませんが、最後にソースがあります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux テキストファイルをページ番号付きでコマンドラインから印刷したい 1 2023/02/22 12:47
- Excel(エクセル) 余計なお世話的な「入力規則」?対策は? 2 2023/01/14 12:39
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- ノートパソコン ページ番号の入れ方について 3 2023/02/16 17:11
- USBメモリー・SDカード・フラッシュメモリー 銀行が振込データの受け渡しに未だにFDを使っている理由は「FDDがAドライブ固定だから」って本当? 11 2022/06/02 03:53
- Excel(エクセル) エクセルについて 6 2022/11/29 14:07
- その他(プログラミング・Web制作) linuxで列の挿入 1 2023/08/08 22:11
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- Visual Basic(VBA) セルに抜けた番号の代わりに空白を挿入する 4 2023/04/10 20:29
- Word(ワード) word縦書き文書の分数が縦にならない 2 2023/01/07 13:27
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・【選手権お題その3】この画像で一言【大喜利】
- ・【お題】逆襲の桃太郎
- ・自分独自の健康法はある?
- ・最強の防寒、あったか術を教えてください!
- ・【大喜利】【投稿~1/9】 忍者がやってるYouTubeが炎上してしまった理由
- ・歳とったな〜〜と思ったことは?
- ・ちょっと先の未来クイズ第6問
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Wallpaper Engineでおすすめの...
-
perl このテキストファイルを簡...
-
テキストファイルで提出とは?
-
perlの構文でカンマの意味が分...
-
arduino の割り込み処理について
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
Perlのエラーについてご教授く...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
close()で例外が投げられる理由
-
改行コードが勝手に
-
perlを用いた特定文字列間の抽...
-
perlのflock関数でロックをかけ...
-
AutoCADのスクリプト
-
die関数のエラー出力先について
-
パイプをopenして/usr/bin/grep...
-
nearbyとclose to の違いを教え...
-
オープンしたファイルで行の連結
-
ファイルから読み込んだ文字を
-
perlで大容量CSVのsort方法につ...
-
PICでFatFsでオープンした内容...
-
ログファイルを編集する方法は...
-
Perl openの戻り値
-
open中のファイルをrename
-
Perlでファイル出力時にデッド...
-
Perl 指定行への書き込み
-
Perl で syntax error
-
テキストファイルの本文中に行...
-
巨大ファイルの行をを逆順に並...
おすすめ情報