「これはヤバかったな」という遅刻エピソード

ちょっとわかりにくいかもしれません。
あるフォルダの中に、約6000のファイルがあり、ファイルの一覧表を作成したいと思います。
DIRコマンドでファイル名は取得できるのですが、そのまま印刷してしまうと、百ページ以上になってしまいます。ファイル名はアルファベッド+数字でせいぜい15文字なので、50行5列に並べ替えて20~25ページにしたいと思います。
地道にエクセルへコピペするしかないのでしょうか?
何か良い手があれば教えてください。

A 回答 (7件)

DIRコマンドの結果をファイルにリダイレクトしたらどうでしょうか


そのファイルをExcelにコピペすれは地道な作業はなくなりそうです

(例)
dir フォルダパス /B > kekka.txt
    • good
    • 0
この回答へのお礼

皆様、ご回答ありがとうございます。
No7さんの回答、dirコマンドで取得したテキストファイルを、どうにか簡単に加工できないか?という質問だったのです・・・
エクセルにデーターとして展開して、ファイル名だけを、50行(キリの良いところ)ずつ切り取り、別シートにペーストしていくのが、少し手間ですが簡単確実なのかな、という結論に至りました。
それぞれにお礼が出来ずすみません。

お礼日時:2024/08/08 16:18

書かれていますが、wordの段組が適当でしょう。

    • good
    • 0

https://support.brother.co.jp/j/s/support/html/h …
こんな感じで1枚に4ページとか16ページとかまとめて印刷するとか?ただ余白ができそうですね。

また、やりたいことは6000行あるテキストデータについて、とりあえず、
全ての改行を取り除き、タブ区切りで5列にして、改行を入れてほしわけですよね。

私ならPerlが使える環境なのでGPTに書かせるかな。GPTに聞いたらそのくらいのスクリプトは一発(出力だけ一部改変)で作ってくれました。文字列操作が多いならPerl入れていれば色々はかどりますよ。
まぁ最近だとPythonの方がいいかもですが、どちらも同じようなことが簡単にできます。
何かしらのプログラミング言語を入れておくと便利かもです。



#Perl
use strict;
use warnings;
my @lines;
while (<DATA>) {
chomp;
push @lines, $_;
}
open(F,">tes.txt");
my $cols = 5;
for my $i (0 .. int($#lines / $cols)) {
for my $j (0 .. $cols-1) {
my $index = $i * $cols + $j;
last if $index > $#lines;
print $lines[$index], "\t";
print F $lines[$index], "\t";
}
print "\n";
print F "\n";
}
close F;

__DATA__
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
「6000行のテキストファイルを印刷する。」の回答画像5
    • good
    • 0

自分もWordで段組みしたうえで印刷することを勧めます。


1ページに4段なら、枚数は30~40枚ほどで済みますよ。
    • good
    • 0

フォルダー/ファイル管理ソフト(フリーで沢山ある)を使えば、


ファイル名一覧をEXCELファイルで取り出すことができます。
それをEXCEL上で並び替えなどの編集を行い、縮小印刷すれば、
お好み通りになるはずです。

> 地道にエクセルへコピペ
休み時間を含んで1件10秒平均でも、6万秒かかります。
6万秒と言えば、17時間かかります。
確認作業も、1件2秒のペースで、3時間超です。
やってられませんよ。
    • good
    • 0

dir /w で、どうにかなりませんか?

    • good
    • 0

ワードで開いて段組にして印刷してみてはいかが?

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A