标题: [文本处理] 批处理怎样把最后列的数子不等于0 所在的行抽出? [打印本页]
作者: freddy_fu 时间: 2023-10-31 11:31 标题: 批处理怎样把最后列的数子不等于0 所在的行抽出?
最后列的数子不等于0 所在的行抽出
OBJECTID land_type local_gove update_inf common_id image_name Shape_Length Shape_Area UPDATETYPE_C
3879 200 313718 0 19912553 23FEB28015110-S3XS_R8C1-016028463460_01_P001.TIF 0.001353034 4.72202E-08 3
3885 100 313718 0 19912559 23FEB28015016-S3XS_R08C2-016028463410_01_P001.TIF 0.001190672 4.72647E-08 0
3886 200 313718 0 19912561 23FEB28015016-S3XS_R07C3-016028463410_01_P001.TIF 0.001025997 4.72988E-08 3
3887 200 313718 0 19912562 23FEB28015016-S3XS_R08C3-016028463410_01_P001.TIF 0.000923522 4.72942E-08 0
3888 200 313718 0 19912564 23FEB28015016-S3XS_R07C3-016028463410_01_P001.TIF 0.000884924 4.73243E-08 0
3890 200 313718 0 19912566 23FEB28015016-S3XS_R08C3-016028463410_01_P001.TIF 0.001543841 4.73363E-08 3
3891 200 313718 0 19912572 23FEB28015110-S3XS_R8C1-016028463460_01_P001.TIF 0.001262402 4.74156E-08 0
3918 200 313718 0 19912604 23FEB28015110-S3XS_R8C1-016028463460_01_P001.TIF 0.001030268 4.76912E-08 0
3919 200 313718 2 19912605 23FEB28015016-S3XS_R08C3-016028463410_01_P001.TIF 0.001479133 1.12335E-07 4
3920 200 313718 0 19912606 23FEB28015110-S3XS_R8C1-016028463460_01_P001.TIF 0.001183872 4.77112E-08 0
3921 200 313718 0 19912607 23FEB28015110-S3XS_R8C1-016028463460_01_P001.TIF 0.001557441 4.77183E-08 0
作者: Batcher 时间: 2023-10-31 11:54
回复 1# freddy_fu
请把需要处理的原始文件上传到网盘,以便测试代码。
作者: terse 时间: 2023-10-31 12:48
- @echo off&setlocal enabledelayedexpansion
- for /f "delims=" %%i in (1.txt) do (
- if defined str (
- for %%a in (%%i) do set n=%%a
- if !n! neq 0 echo %%i
- ) else echo %%i&set str=1
- )
- pause
复制代码
作者: qixiaobin0715 时间: 2023-10-31 12:53
如果列的分隔符是空格,则下面代码引号中的字符就是“空格+0”;如果分隔符是水平制表符,则是“水平制表符+0”:- findstr /v /e /c:" 0" 1.txt>2.txt
复制代码
作者: hfxiang 时间: 2023-10-31 15:26
回复 1# freddy_fu
如不介意第3方工具,则
gawk( http://bcn.bathome.net/tool/4.1.0/gawk.exe )方法如下复制代码
sed( http://bcn.bathome.net/tool/4.9/sed.exe )方法如下复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |