需求如下:
ipmask数据库中保存了一些省份和ip的信息,想通过批处理查询sql,并按照搜索的预定信息输出到特定文件中,ISPID保存了ISP以及对应的ID,ProvinceID包含了省份和对应的ID。
ISPID文件内容:
DIANXIN 2
TIETONG 3
ProvinceID.txt文件内容:
anhui 1
beijing 2
我想实现比如说执行一次对安徽电信的查询(即SELECT where isp=2 and province=1),把结果输出到以anhui_dianxin命名文件下。注意文件中拼音与数字的对应关系。每执行一次就把结果输出到对应的命名文件下
如下是我写的一个查询,但是查询下来不是按照预想的输出的,那个select语句在for中执行写入到文件的内容都一样,如何解决这个问题?
谢谢!
@echo off&setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1 delims= " %%j in (ISPID.txt) do (
for /f "tokens=1 delims= " %%k in (ProvinceID.txt) do (
echo.>acl_%%j_%%k_1.txt
for /f "tokens=2 delims= " %%a in (ISPID.txt) do (
for /f "tokens=2 delims= " %%b in (ProvinceID.txt) do (
sqlcmd -U XX -P XX -d ipmask -Q "SELECT [net],[net mask] FROM [ipmask].[dbo].[result] where isp=%%a and province=%%b" -o acl_%%j_%%k_1.txt
)
)
)
)
ipmask数据库中保存了一些省份和ip的信息,想通过批处理查询sql,并按照搜索的预定信息输出到特定文件中,ISPID保存了ISP以及对应的ID,ProvinceID包含了省份和对应的ID。
ISPID文件内容:
DIANXIN 2
TIETONG 3
ProvinceID.txt文件内容:
anhui 1
beijing 2
我想实现比如说执行一次对安徽电信的查询(即SELECT where isp=2 and province=1),把结果输出到以anhui_dianxin命名文件下。注意文件中拼音与数字的对应关系。每执行一次就把结果输出到对应的命名文件下
如下是我写的一个查询,但是查询下来不是按照预想的输出的,那个select语句在for中执行写入到文件的内容都一样,如何解决这个问题?
谢谢!
@echo off&setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1 delims= " %%j in (ISPID.txt) do (
for /f "tokens=1 delims= " %%k in (ProvinceID.txt) do (
echo.>acl_%%j_%%k_1.txt
for /f "tokens=2 delims= " %%a in (ISPID.txt) do (
for /f "tokens=2 delims= " %%b in (ProvinceID.txt) do (
sqlcmd -U XX -P XX -d ipmask -Q "SELECT [net],[net mask] FROM [ipmask].[dbo].[result] where isp=%%a and province=%%b" -o acl_%%j_%%k_1.txt
)
)
)
)
