中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]批处理取指定字符串后的数字?
作者:
标题: [求助]批处理取指定字符串后的数字? 上一主题 | 下一主题
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『楼 主』:  [求助]批处理取指定字符串后的数字? 使用 LLM 解释/回答一下

我有一系列txt文件如log_POTANN.txt,log_STE.txt,log_CDE.txt等等
每个log_***.txt文件的格式类似,都含有以下内容:

举例 log_POTANN.txt文件:
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Table POTANN, chargé à partir de chaque enregistrement physique.
xxxxxxxxxxxxxxxx
Table POTANN :
Chargement réussi de 206108 Lignes.
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 206108
Nombre total d'enregistrements logiques rejetés : 0
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Le début de l'exécution a été effectué sur Jeu. Avr. 26 11:38:25 2007
La fin de l'exécution a été effectuée sur Jeu. Avr. 26 11:38:34 2007
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxx处都是若干行不重要的信息

现在我需要编一个批处理,执行之后能成一个rlt1.txt文件只需要如下内容:

POTANN
0
206108
0
Avr. 26 11:38:25 2007
Avr. 26 11:38:25 2007

请教高手怎么编写?
其实目的是生成rlt1.txt文件,读取一系列log文件中的指定数据。即

POTANN
0
206108
0
Avr. 26 11:38:25 2007
Avr. 26 11:38:25 2007
STE
0
55555
0
Avr. 05 11:38:25 2006
Avr. 06 11:38:25 2006
CDE
0
123569
0
Avr. 05 11:38:25 2007
Avr. 16 11:38:25 2007
.........

再生成rlt2.txt文件,它与rlt1.txt内容一样,就是排列顺序不同,如下:
POTANN02061080Avr. 26 11:38:25 2007Avr. 26 11:38:25 2007
STE0555550Avr. 05 11:38:25 2006Avr. 06 11:38:25 2006
CDE01235690Avr. 05 11:38:25 2007Avr. 16 11:38:25 2007
.........

谢谢!


2007-5-23 18:35
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

这些问题还是用 sed & awk 解决吧!


2007-5-23 19:58
查看资料  发送邮件  访问主页  发短消息  网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

打包几个文件上来我测试吧.


2007-5-23 21:08
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 4 楼』:   使用 LLM 解释/回答一下

我不知道如何上传,这里好复杂,好像还要另外注册。我时间紧,就先把4个log的TXT文件内容copy过来。麻烦再copy到写字板。请指教!

Log_POTANN.txt


SQL*Loader: Release 10.2.0.1.0 - Production on Jeu. Avr. 26 11:38:25 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Fichier de contrôle : Z:\Controle\POTANN.ctl
Fichier de données : Z:\Data\POTANN.dat
Fichier BAD : Z:\Bad\Bad_POTANN.txt
Fichier DISCARD : aucune spécification

(Allouer tous les rebuts)

Nombre à charger : ALL
Nombre à sauter: 0
Erreurs permises: 0
Continuation : aucune spécification
Chemin utilisé: Direct

Table POTANN, chargé à partir de chaque enregistrement physique.
Option d'insertion en vigueur pour cette table : TRUNCATE

Nom de colonne Position Long. Séparat. Encadrem. Type de données
------------------------------ ---------- ----- ---- ---- ---------------------
CODCLTETB 1:8 8 CHARACTER
CODRGC 9:11 3 CHARACTER
CODPRO 12:17 6 CHARACTER
CODART 18:26 9 CHARACTER
CODRGPPAY 27:28 2 CHARACTER
CODPAY 29:31 3 CHARACTER
CODDPT 32:33 2 CHARACTER
CODSCTAFF 34:35 2 CHARACTER
CODSCTTCH 36:37 2 CHARACTER
CODPRFSTH 38:40 3 CHARACTER
CODPRFINS 41:45 5 CHARACTER
CODSTE 46:47 2 CHARACTER
CODZONRSPCOM3 48:51 4 CHARACTER
DATANNPOT 52:61 10 CHARACTER
chaîne SQL pour la colonne : "to_date(:DATANNPOT,'mm-dd-yyyy')"
CODCNC 62:67 6 CHARACTER
TGECNC 68:85 18 CHARACTER
CODTYPPROCOM1 86:89 4 CHARACTER
CODTYPPROCOM2 90:93 4 CHARACTER
CODTYPPROCOM3 94:97 4 CHARACTER
CODZONRSPCOM2 98:101 4 CHARACTER
CODZONRSPCOM1 102:105 4 CHARACTER
CODENT 106:109 4 CHARACTER
CODZONRSPGRP3 110:113 4 CHARACTER
CODZONRSPGRP2 114:117 4 CHARACTER
CODZONRSPGRP1 118:121 4 CHARACTER

Le ou les index suivants, dans la table POTANN, ont été traités :
index ROQUETTE.PK_POTANN rendu inutilisable pour la raison suivante :
ORA-01452: CREATE UNIQUE INDEX impossible ; il existe des doublons

Table POTANN :
Chargement réussi de 206108 Lignes.
0 Lignes chargement impossible dû à des erreurs de données.
0 Lignes chargement impossible car échec de toutes les clauses WHEN.
0 Lignes chargement impossible car tous les champs étaient non renseignés.

Taille du tableau de liens non utilisée dans le chemin direct.
Lignes de tableau de colonnes : 5000
Octets de tampon de flux de données : 256000
Octets de tampon de lecture : 1048576

Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 206108
Nombre total d'enregistrements logiques rejetés : 0
Nombre total d'enregistrements logiques mis au rebut : 0
Nombre total de tampons de flux de données chargés par le thread principal de SQL*Loader : 54
Nombre total de tampons de flux de données chargés par le thread de chargement de SQL*Loader : 81

Le début de l'exécution a été effectué sur Jeu. Avr. 26 11:38:25 2007
La fin de l'exécution a été effectuée sur Jeu. Avr. 26 11:38:34 2007

Temps écoulé (ELAPSED) : 00:00:09.33
Temps processeur (CPU) : 00:00:02.06

——————————————————————————————————————

Log_AGN.txt



SQL*Loader: Release 10.2.0.1.0 - Production on Mer. Avr. 18 10:19:14 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Fichier de contrôle : Z:\Controle\AGN.ctl
Fichier de données : Z:\Data\AGN.dat
Fichier BAD : Z:\Bad\Bad_AGN.txt
Fichier DISCARD : aucune spécification

(Allouer tous les rebuts)

Nombre à charger : ALL
Nombre à sauter: 0
Erreurs permises: 0
Continuation : aucune spécification
Chemin utilisé: Direct

Table AGN, chargé à partir de chaque enregistrement physique.
Option d'insertion en vigueur pour cette table : TRUNCATE

Nom de colonne Position Long. Séparat. Encadrem. Type de données
------------------------------ ---------- ----- ---- ---- ---------------------
CODAGN 1:3 3 CHARACTER
chaîne SQL pour la colonne : "decode(:CODAGN,null,' ',:CODAGN)"
LIBAGN 4:23 20 CHARACTER

Le ou les index suivants, dans la table AGN, ont été traités :
index ROQUETTE.PK_AGN chargé correctement avec 1211 clés

Table AGN :
Chargement réussi de 1211 Lignes.
0 Lignes chargement impossible dû à des erreurs de données.
0 Lignes chargement impossible car échec de toutes les clauses WHEN.
0 Lignes chargement impossible car tous les champs étaient non renseignés.

Taille du tableau de liens non utilisée dans le chemin direct.
Lignes de tableau de colonnes : 5000
Octets de tampon de flux de données : 256000
Octets de tampon de lecture : 1048576

Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 1211
Nombre total d'enregistrements logiques rejetés : 0
Nombre total d'enregistrements logiques mis au rebut : 0
Nombre total de tampons de flux de données chargés par le thread principal de SQL*Loader : 1
Nombre total de tampons de flux de données chargés par le thread de chargement de SQL*Loader : 0

Le début de l'exécution a été effectué sur Mer. Avr. 18 10:19:14 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 10:19:15 2007

Temps écoulé (ELAPSED) : 00:00:00.25
Temps processeur (CPU) : 00:00:00.11

——————————————————————————————————————

Log_ANN.txt



SQL*Loader: Release 10.2.0.1.0 - Production on Mer. Avr. 18 09:53:38 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Fichier de contrôle : Z:\Controle\ANN.ctl
Fichier de données : Z:\Data\ANN.dat
Fichier BAD : Z:\Bad\Bad_ANN.txt
Fichier DISCARD : aucune spécification

(Allouer tous les rebuts)

Nombre à charger : ALL
Nombre à sauter: 0
Erreurs permises: 0
Continuation : aucune spécification
Chemin utilisé: Direct

Table ANN, chargé à partir de chaque enregistrement physique.
Option d'insertion en vigueur pour cette table : TRUNCATE

Nom de colonne Position Long. Séparat. Encadrem. Type de données
------------------------------ ---------- ----- ---- ---- ---------------------
CODANN 1:4 4 CHARACTER

Le ou les index suivants, dans la table ANN, ont été traités :
index ROQUETTE.PK_ANN chargé correctement avec 22 clés

Table ANN :
Chargement réussi de 22 Lignes.
0 Lignes chargement impossible dû à des erreurs de données.
0 Lignes chargement impossible car échec de toutes les clauses WHEN.
0 Lignes chargement impossible car tous les champs étaient non renseignés.

Taille du tableau de liens non utilisée dans le chemin direct.
Lignes de tableau de colonnes : 5000
Octets de tampon de flux de données : 256000
Octets de tampon de lecture : 1048576

Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 22
Nombre total d'enregistrements logiques rejetés : 0
Nombre total d'enregistrements logiques mis au rebut : 0
Nombre total de tampons de flux de données chargés par le thread principal de SQL*Loader : 1
Nombre total de tampons de flux de données chargés par le thread de chargement de SQL*Loader : 0

Le début de l'exécution a été effectué sur Mer. Avr. 18 09:53:38 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 09:53:38 2007

Temps écoulé (ELAPSED) : 00:00:00.23
Temps processeur (CPU) : 00:00:00.16

——————————————————————————————————————

Log_BUDNVDANN.txt



SQL*Loader: Release 10.2.0.1.0 - Production on Mer. Avr. 18 09:54:09 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Fichier de contrôle : Z:\Controle\BUDNVDANN.ctl
Fichier de données : Z:\Data\BUDNVDANN.dat
Fichier BAD : Z:\Bad\Bad_BUDNVDANN.txt
Fichier DISCARD : aucune spécification

(Allouer tous les rebuts)

Nombre à charger : ALL
Nombre à sauter: 0
Erreurs permises: 0
Continuation : aucune spécification
Chemin utilisé: Direct

Table BUDNVDANN, chargé à partir de chaque enregistrement physique.
Option d'insertion en vigueur pour cette table : TRUNCATE

Nom de colonne Position Long. Séparat. Encadrem. Type de données
------------------------------ ---------- ----- ---- ---- ---------------------
CODRGC 1:3 3 CHARACTER
chaîne SQL pour la colonne : "decode(:CODRGC,null,' ',:CODRGC)"
CODPRO 4:9 6 CHARACTER
chaîne SQL pour la colonne : "decode(:CODPRO,null,' ',:CODPRO)"
CODART 10:18 9 CHARACTER
chaîne SQL pour la colonne : "decode(:CODART,null,' ',:CODART)"
CODRGPPAY 19:20 2 CHARACTER
chaîne SQL pour la colonne : "decode(:CODRGPPAY,null,' ',:CODRGPPAY)"
CODPAY 21:23 3 CHARACTER
chaîne SQL pour la colonne : "decode(:CODPAY,null,' ',:CODPAY)"
CODDPT 24:25 2 CHARACTER
chaîne SQL pour la colonne : "decode(:CODDPT,null,' ',:CODDPT)"
CODSCTAFF 26:27 2 CHARACTER
chaîne SQL pour la colonne : "decode(:CODSCTAFF,null,' ',:CODSCTAFF)"
CODSCTTCH 28:29 2 CHARACTER
chaîne SQL pour la colonne : "decode(:CODSCTTCH,null,' ',:CODSCTTCH)"
CODPRFSTH 30:32 3 CHARACTER
chaîne SQL pour la colonne : "decode(:CODPRFSTH,null,' ',:CODPRFSTH)"
CODPRFINS 33:37 5 CHARACTER
chaîne SQL pour la colonne : "decode(:CODPRFINS,null,' ',:CODPRFINS)"
CODSTE 38:39 2 CHARACTER
chaîne SQL pour la colonne : "decode(:CODSTE,null,' ',:CODSTE)"
CODZONRSPCOM3 40:43 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODZONRSPCOM3,null,' ',:CODZONRSPCOM3)"
DATANNBUDNVD 44:53 10 CHARACTER
chaîne SQL pour la colonne : "to_date(:DATANNBUDNVD,'mm-dd-yyyy')"
CODCENPRD 54:54 1 CHARACTER
chaîne SQL pour la colonne : "decode(:CODCENPRD,null,' ',:CODCENPRD)"
TGEBUDNVD 55:72 18 CHARACTER
CODTYPPROCOM1 73:76 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODTYPPROCOM1,null,' ',:CODTYPPROCOM1)"
CODTYPPROCOM2 77:80 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODTYPPROCOM2,null,' ',:CODTYPPROCOM2)"
CODTYPPROCOM3 81:84 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODTYPPROCOM3,null,' ',:CODTYPPROCOM3)"
CODZONRSPCOM2 85:88 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODZONRSPCOM2,null,' ',:CODZONRSPCOM2)"
CODZONRSPCOM1 89:92 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODZONRSPCOM1,null,' ',:CODZONRSPCOM1)"
CODENT 93:96 4 CHARACTER
chaîne SQL pour la colonne : "decode(:CODENT,null,' ',:CODENT)"

Le ou les index suivants, dans la table BUDNVDANN, ont été traités :
index ROQUETTE.PK_BUDNVDANN chargé correctement avec 94 clés

Table BUDNVDANN :
Chargement réussi de 94 Lignes.
0 Lignes chargement impossible dû à des erreurs de données.
0 Lignes chargement impossible car échec de toutes les clauses WHEN.
0 Lignes chargement impossible car tous les champs étaient non renseignés.

Taille du tableau de liens non utilisée dans le chemin direct.
Lignes de tableau de colonnes : 5000
Octets de tampon de flux de données : 256000
Octets de tampon de lecture : 1048576

Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 94
Nombre total d'enregistrements logiques rejetés : 0
Nombre total d'enregistrements logiques mis au rebut : 0
Nombre total de tampons de flux de données chargés par le thread principal de SQL*Loader : 1
Nombre total de tampons de flux de données chargés par le thread de chargement de SQL*Loader : 0

Le début de l'exécution a été effectué sur Mer. Avr. 18 09:54:09 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 09:54:09 2007

Temps écoulé (ELAPSED) : 00:00:00.59
Temps processeur (CPU) : 00:00:00.13

Last edited by elsiezhou on 2007-5-24 at 03:34 PM ]


2007-5-24 15:27
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 5 楼』:   使用 LLM 解释/回答一下

这4个log批处理以后生成rlt1.txt文件内容格式如下:

POTANN
206108
0
206108
0
26/04/200711:38:25
26/04/200711:38:34
AGN
1211
0
1211
0
18/04/200710:19:14
18/04/200710:19:15
ANN
22
0
22
0
18/04/200718 09:53:38
18/04/200718 09:53:38
BUDNVDANN
94
0
94
0
18/04/200709:54:09
18/04/200709:54:09

生成rlt2.txt文件内容同rlt1.txt而格式如下:

POTANN2061080206108026/04/200711:38:2526/04/200711:38:34
AGN121101211018/04/200710:19:1418/04/200710:19:15
ANN22022018/04/200718 09:53:3818/04/200718 09:53:38
BUDNVDANN94094018/04/200709:54:0918/04/200709:54:09


2007-5-24 15:58
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 6 楼』:   使用 LLM 解释/回答一下

其实我用了批命令提取log中相关重要的行

for %%A in (POTANN AGN ANN BUDNVDANN) do (
findstr /C:"Table" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"Chargement réussi" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"Nombre total d'enregistrements logiques ignorés" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"Nombre total d'enregistrements logiques lus" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"Nombre total d'enregistrements logiques rejetés" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"Le début de l'exécution" c:\Log_%%A.txt >>c:\rlt_log.txt
findstr /C:"La fin de l'exécution" c:\Log_%%A.txt >>c:\rlt_log.txt
)


生成的rlt_log.txt内容如下:

Table POTANN, chargé à partir de chaque enregistrement physique.
Table POTANN :
Chargement réussi de 206108 Lignes.
Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 206108
Nombre total d'enregistrements logiques rejetés : 0
Le début de l'exécution a été effectué sur Jeu. Avr. 26 11:38:25 2007
La fin de l'exécution a été effectuée sur Jeu. Avr. 26 11:38:34 2007
Table AGN, chargé à partir de chaque enregistrement physique.
Table AGN :
Chargement réussi de 1211 Lignes.
Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 1211
Nombre total d'enregistrements logiques rejetés : 0
Le début de l'exécution a été effectué sur Mer. Avr. 18 10:19:14 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 10:19:15 2007
Table ANN, chargé à partir de chaque enregistrement physique.
Table ANN :
Chargement réussi de 22 Lignes.
Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 22
Nombre total d'enregistrements logiques rejetés : 0
Le début de l'exécution a été effectué sur Mer. Avr. 18 09:53:38 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 09:53:38 2007
Table BUDNVDANN, chargé à partir de chaque enregistrement physique.
Table BUDNVDANN :
Chargement réussi de 94 Lignes.
Nombre total d'enregistrements logiques ignorés : 0
Nombre total d'enregistrements logiques lus : 94
Nombre total d'enregistrements logiques rejetés : 0
Le début de l'exécution a été effectué sur Mer. Avr. 18 09:54:09 2007
La fin de l'exécution a été effectuée sur Mer. Avr. 18 09:54:09 2007

现在就是如何从中提取数字和日期如上楼所示?


2007-5-24 16:32
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 7 楼』:   使用 LLM 解释/回答一下

sed & awk 这2个命令好像都是在UNIX下的,我在WINDOWS下也能用吗?


2007-5-25 15:23
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 8 楼』:   使用 LLM 解释/回答一下

Re elsiezhou:

由于某些原因,两天没有登录论坛,没有即时回复你的帖子,抱歉。

sed & awk 在Windows下面也可以用的。呆会把我处理的结果发出来。


2007-5-25 16:55
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 9 楼』:   使用 LLM 解释/回答一下

Re elsiezhou:

我主要是用的gawk来完成的,为了处理方便,直接用rlt_log.txt文件的内容了。

首先看awk1.awk脚本的内容:

{
if($0~/Table .* :/)print $2
if($0~/Chargement.**/)print $(NF-1)
if($0~/^Nombre.*/)print $NF
if($0~/^L.*:.*:.**/)printf("%s/04/%s%s\n",$(NF-2),$NF,$(NF-1))
}


然后在命令行执行
gawk -f awk1.awk rlt_log.txt>rlt1.txt

生成rlt1.txt文件,再来根据rlt1.txt文件得到rlt2.txt文件。

命令行执行
gawk "{if(NR%7!=0)printf $0;else printf(\"%s\n\",$0)}" rlt1.txt>rlt2.txt
就得到了rlt2.txt了。


2007-5-25 17:47
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 10 楼』:   使用 LLM 解释/回答一下

先谢谢了!
我试验了一下。
我把
{
if($0~/Table .* :/)print $2
if($0~/Chargement.*[0-9]*/)print $(NF-1)
if($0~/^Nombre.*/)print $NF
if($0~/^L.*:.*:.*[0-9]*/)printf("%s/04/%s%s\n",$(NF-2),$NF,$(NF-1))
}
保存为awk1.awk
之后我把
gawk -f awk1.awk rlt_log.txt>rlt1.txt
保存为cmd1.bat
运行之后,rlt1.txt是空的文件。我不知道为什么?哪里有错指教。


2007-5-25 20:04
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
elsiezhou
初级用户





积分 32
发帖 13
注册 2007-5-7
状态 离线
『第 11 楼』:   使用 LLM 解释/回答一下

gawk命令在windows下能用妈?不用装什么东西吧?
我原是想想测试成功,之后好好研究gawk命令的使用,以期看懂上述批命令。
不论如何,非常感谢帮忙!


2007-5-25 20:48
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 12 楼』:   使用 LLM 解释/回答一下

Re elsiezhou:

按照我的步骤来吧,在命令行执行。在批处理里面执行有时会出现一些异常的情况,原因未知。


2007-5-25 20:50
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 13 楼』:   使用 LLM 解释/回答一下

我说过,在windows下是可以用的。


2007-5-25 20:51
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yiflying
社区乞丐





积分 -18
发帖 4
注册 2009-1-9
状态 离线
『第 14 楼』:   使用 LLM 解释/回答一下

很期待啊,我也经常需要这个功能的哦


2009-1-21 18:00
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
netbenton
银牌会员

批处理编程迷


积分 1916
发帖 752
注册 2008-12-28
来自 广西
状态 离线
『第 15 楼』:  纯批的完成了 使用 LLM 解释/回答一下

@echo off
for /r %%a in (log_*.txt) do (
set n=0
echo.%%~fa
setlocal enabledelayedexpansion
for /f "tokens=* delims=," %%c in ('findstr ".*" %%~fa') do (
set str=%%c
set str=!str:"=!
call :sub !str!
)
for /f "tokens=2 delims=#" %%h in ('set _var') do set/p=%%h<nul
echo.
endlocal
)

pause

goto :eof

:sub
:loop
set /a n+=1
if "%1%3"=="Table:" set _var!n!=#%2
if "%1%2"=="ignorés:" set _var!n!=#%3
if "%1%2"=="rejetés:" set _var!n!=#%3
if "%1%2"=="lus:" set _var!n!=#%3
if "%1%3"=="surAvr." set _var!n!=#%3 %4 %5 %6
shift
if defined _var%n% goto :eof
if not "%3"=="" goto :loop

goto :eof




精简
=> 个人网志
2009-1-22 11:03
查看资料  发送邮件  发短消息  网志  OICQ (37659560)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: