如何从包含批处理脚本中的分隔符的文本的文件中解析一行

时间:2015-08-11 09:26:06

标签: windows batch-file

以下是我的代码。

SELECT * FROM ABC;DBNAME;TABLENAME
SELECT * FROM XYZ;DBNAME;TABLENAME
SELECT * FROM PQR;DBNAME;TABLENAME

file.txt包含

SELECT
*
FROM

---------------- OUTPUT ---------------

SELECT * FROM ABC
DBNAME
TABLENAME

这是错误的,我希望它为

$(window).scroll(function () {
    var image_url = 'http://7-themes.com/data_images/out/39/6901356-free-background-images.jpg';
    console.log($(window).scrollTop());
    if ($(window).scrollTop() > 800) {
        image_url = 'http://www.designbolts.com/wp-content/uploads/2014/03/Yellow-blur-background1.jpg';
    }
    $('body').css('background-image', 'url(' + image_url + ')');
    //^^^^^^                          ^^^^^^               ^^^   
});

有人可以指出什么是错的。
我是批处理脚本的新手。

1 个答案:

答案 0 :(得分:1)

FOR-loop delim按预期工作,但call会扰乱您的期望 那是因为CALL通过多个分隔符<space>;=,分割参数 为避免这种情况,您可以引用参数并稍后取消引用

for /F "tokens=1,2,3 delims=;" %%i in (file.txt) do call :process "%%i" "%%j" "%%k"
exit /b

:process
echo %~1
echo %~2
echo %~3
exit /b