コマンドプロンプトの/ dir出力でファイル拡張子を非表示にするにはどうすればよいですか?


9

私は何をしたい、非常に単純なようだ:
私は、PDFファイル、TXTファイル、およびサブディレクトリを含む様々な種類のアイテムを含む、Windowsのフォルダを持っています。1行の.batファイルを作成して、PDFファイル名のみを新しいテキストファイルにプルしています。

これまでのところ、これは.batにあります:

dir *.pdf /b > PDF_LIST.txt

これにより、PDF_LIST.txtファイルで次の出力が得られます。

A.pdf
B.pdf
C.pdf

dirステートメントの* .pdfパラメータによって各ファイルがPDF形式であることはすでにわかっているので、txtファイルの各行の ".pdf"部分を削除します。

これにより、すべてのファイル名をテキストファイルから直接ワードドキュメントにコピー/貼り付けして、顧客に送信する送付状を簡単に作成できるようになります。バッチファイルを使用せずにファイルリストを取得するためのより良い方法または簡単な方法を提案できる場合は、これも役立ちます。

回答:


18

スクリプトで:

for %%i in (*.pdf) do @echo %%~ni >> PDF_LIST.txt

私の心を吹き飛ばすおっと(実際にコマンドラインで動作したことはありません)。わかりました。試してみましょう。ありがとう!
NoCatharsis

1
help for追加の頭蓋刺激があることを確認してください。
追って通知があるまで一時停止。

コードのタイプミスを修正(私はそう思っていました)して、このコマンドを実行しました:%% i in(* .pdf)do @echo %%〜ni >> PDF_LIST.txt応答 "%% i現時点では予想外でした」と他の出力はありません。
NoCatharsis

2
@NoCatharsis:タイプミスについて申し訳ありません。コマンドラインでは、単一を使用します%%%バッチファイルで使用します。
追って通知があるまで一時停止。

かっこいい、魅力のように機能します。迅速なサポートに感謝
NoCatharsis

0

ほとんどのテキストエディタ(メモ帳を含む)には検索と置換機能があります。それを使用してすべての「.pdf」を検索し、「」に置き換えます。完了:)

これを単語のマクロとして設定することもできます。


はい、今はNotepad ++を使用してこれを行っていますが、スクリプトに書き込むことでもう1つのステップを切り捨てる方法があるかどうか疑問に思っていました。
NoCatharsis
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.