
No.4ベストアンサー
- 回答日時:
@echo off
set N=0
for /f "delims=" %%A in (input.txt) do (
call :CHK
if ERRORLEVEL 1 echo %%A
)
goto :EOF
:CHK
set /a N+=1 , X=N %% 100
if %X%==1 exit /b 1
exit /b 0
ご回答ありがとうございます。ご説明不足もあったかと思うのですが、イメージにとても近い回答をいただきました。
以下に出来上がったものを添付いたします。他の方のお役にも立てばと思います。
@echo off
::<コメント開始>
:: 「テキストファイルからサンプリングファイルを抽出するバッチプログラム」
:: 1.目的
:: テキストファイル(SJISコードで改行ありのみ対応)のうちサンプリングで
:: ***行に1行を抽出する。
:: 100行単位に指定した場合、1行目(ヘッダー行)、101行目、201行目、・・・・・
:: 2.使い方と説明
:: @echo off
:: →画面表示しない
:: del output.txt
:: →アウトプットファイルを作業前に削除
:: set N=0
:: for /f "tokens=1 delims=" %%A in (input.txt) do (
:: →tokens=1は1行を1つの塊として扱うの意味
:: delims=は区切り文字なしの意味
:: input.txtはインプットファイル
:: ネットワーク経由の場合例:\\172.16.***.***\data\input.txtなど
:: (事前にクライアントから相手の該当フォルダにアクセスできている必要がある)
:: call :CHK
:: →サブルーチンをコール(:CHKに飛ぶ)
:: if ERRORLEVEL 1 echo %%A>>output.txt
:: →サブルーチンからの戻り値が1だったらoutput.txtに書き込む
:: )
:: goto :EOF
:: →ファイルを読み終えたらEOFに行く
::
:: 以下はサブルーチン
:: :CHK
:: set /a N+=1 , X=N %% 100
:: →Nに1を足し、100で割った余りをXにセットする
:: if %X%==1 exit /b 1
:: exit /b 0
:: →exitで「/b」が指定されている場合、ERRORLEVEL にその数値を設定し、
:: for文に戻る。
::<コメント終了>
del output.txt
set N=0
for /f "tokens=1 delims=" %%A in (\\172.16.***.***\data\input.txt) do (
call :CHK
if ERRORLEVEL 1 echo %%A>>output.txt
)
goto :EOF
:CHK
set /a N+=1 , X=N %% 100
if %X%==1 exit /b 1
exit /b 0
No.3
- 回答日時:
すみません最初の1行目がなかったですね
for /f "usebackq tokens=1,* delims=:" %a in (`findstr /n /r "^" a.txt ^| findstr /r "^1: ^[0-9]*[0-9]01:"`) do @echo a=[%a] b=[%b]
No.2
- 回答日時:
もうちょっと汎用性あり、
デバック用
for /f "usebackq tokens=1,* delims=:" %a in (`findstr /n /r "^" a.txt ^| findstr /r "^[0-9]*[0-9]01:"`) do @echo a=[%a] b=[%b]
該当行出力
for /f "usebackq tokens=1,* delims=:" %a in (`findstr /n /r "^" a.txt ^| findstr /r "^[0-9]*[0-9]01:"`) do @echo %b
バッチファイル用
for /f "usebackq tokens=1,* delims=:" %%a in (`findstr /n /r "^" a.txt ^| findstr /r "^[0-9]*[0-9]01:"`) do @echo %%b
と言うことで、a.txtを対象となるファイル名にしてください
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- Excel(エクセル) Excelの関数でこんな処理ができますか 1 2023/02/08 13:46
- Excel(エクセル) 特定のデータの抽出方法を教えてください@Excel 4 2023/06/13 18:38
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- C言語・C++・C# C言語初心者 構造体 課題について 1 2023/03/10 19:30
- Excel(エクセル) エクセルで重複データを行ごとに抽出したい 4 2022/12/05 08:18
- その他(お金・保険・資産運用) 事業復活支援金 帳簿書類について 1 2022/04/10 14:15
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチでテキストファイルから...
-
バッチファイルで常に最新の現...
-
VBアプリケーションで終了コー...
-
バッチファイル テキストファイ...
-
子バッチ内のキー入力処理へ自...
-
バッチファイルで昨日の日付を取得
-
絶対パス名からファイル名を取...
-
DOSのバッチで、変数中のファイ...
-
コマンドプロンプトで2ヶ月前3...
-
呼び出し元バッチを知るには?
-
コマンドプロンプト画面の閉じ...
-
コマンドプロンプトでファイル...
-
コマンドプロンプト(バッチファ...
-
Excelで住所録を地域ごとに振り...
-
バッチファイルでDirで取得した...
-
バッチファイル ファイル内で改...
-
大量のフォルダからひとつのフ...
-
コマンドプロンプトの「%1」と...
-
コマンドプロンプトのエラーに...
-
バッチ処理でファイルの中身を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチでテキストファイルから...
-
バッチファイルで昨日の日付を取得
-
バッチファイルでDirで取得した...
-
コマンドプロンプトで2ヶ月前3...
-
コマンドプロンプト標準出力と...
-
コマンドプロンプト(バッチファ...
-
DOSのバッチで、変数中のファイ...
-
バッチファイルで常に最新の現...
-
バッチファイル テキストファイ...
-
子バッチ内のキー入力処理へ自...
-
VBアプリケーションで終了コー...
-
IPアドレスの第3オクテットだ...
-
コマンドプロンプト画面の閉じ...
-
呼び出し元バッチを知るには?
-
絶対パス名からファイル名を取...
-
コマンドプロンプト(バッチ)...
-
DOSのバッチで、テキストファイ...
-
バッチファイルに日付(ミリ秒...
-
コマンドプロンプト 半角スペー...
-
バッチファイル(for文)がうま...
おすすめ情報