Board logo

标题: [求助]FOR + REG 怎样略过空白处 [打印本页]

作者: XZ     时间: 2009-3-4 06:28    标题: [求助]FOR + REG 怎样略过空白处

请问FOR + REG 怎样略过空白处
我主要是把要RESISTER中的环境变量让COMMAND下可以使用
不过转出来的变数会多空白
结果如下
请求各位协助
谢谢


delimes="TAB"
批處理
@echo off
for /f "skip=4 tokens=1,3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"') do (set REG_%%i=%%j)
echo ============================================================================
set REG_
echo ============================================================================
pause
結果
============================================================================
REG_    AppData=%USERPROFILE%\Application Data
REG_    Cache=%USERPROFILE%\Local Settings\Temporary Internet Files
REG_    Cookies=%USERPROFILE%\Cookies
REG_    Desktop=%USERPROFILE%\桌面
REG_    Favorites=%USERPROFILE%\Favorites
REG_    History=%USERPROFILE%\Local Settings\History
REG_    Local AppData=%USERPROFILE%\Local Settings\Application Data
REG_    Local Settings=%USERPROFILE%\Local Settings
REG_    My Pictures=%USERPROFILE%\My Documents\My Pictures
REG_    NetHood=%USERPROFILE%\NetHood
REG_    Personal=%USERPROFILE%\My Documents
REG_    PrintHood=%USERPROFILE%\PrintHood
REG_    Programs=%USERPROFILE%\「開始」功能表\程式集
REG_    Recent=%USERPROFILE%\Recent
REG_    SendTo=%USERPROFILE%\SendTo
REG_    Start Menu=%USERPROFILE%\「開始」功能表
REG_    Startup=%USERPROFILE%\「開始」功能表\程式集\啟動
REG_    Templates=%USERPROFILE%\Templates
============================================================================
請按任意鍵繼續 . . .

作者: dosz     时间: 2009-3-4 12:22
我在学!


@echo off
echo (1)显示=为分隔的dosz文本的全部字符集:
echo for /f "tokens=1,2* delims==" %%a in (dosz.txt) do echo %%a %%b %%c
for /f "tokens=1,2,3 delims==" %%a in (123.txt) do echo %%a %%b %%c
echo\
echo (3)显示=为分隔的第3个字符集:
echo for /f "tokens=3 delims==" %%i in (123.txt) do echo %%i
for /f "tokens=3 delims==" %%i in (123.txt) do echo %%i
echo\

cls
echo\
echo (4)显示=为分隔的特定字符(星期一)的全部字符集
echo for /f "delims== tokens=1,2,3" %%a in ('findstr "星期一" 123.txt') do echo %%a %%b %%c
for /f "delims== tokens=1,2,3" %%a in ('findstr "星期一" 123.txt') do echo %%a %%b %%c
:: tokens=1* 意思是第1个字符串后面的所有内容,tokens=2 是第2个字符串。
echo\
for /f "skip=1 tokens=6 delims= " %%i in (1.txt) do echo 文本第6个字符集%%i [忽略文件开始时的1行数]

[ Last edited by dosz on 2009-3-4 at 12:25 ]
附件 1: FOR + REG 怎样略过空白处.JPG.gif (2009-3-4 12:22, 132.22 K,下载次数: 2)


附件 2: for_reg.bat.rar (2009-3-4 12:24, 1.6 K,下载次数: 6)

作者: XZ     时间: 2009-3-4 23:17


  Quote:
Originally posted by dosz at 2009-3-4 12:22 PM:
我在学!


@echo off
echo (1)显示=为分隔的dosz文本的全部字符集:
echo for /f "tokens=1,2* delims==" %%a in (dosz.txt) do echo %%a %%b %%c
for /f "tokens=1,2, ...

看不懂 =    =

搞不定只會土法煉鋼
@echo off
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "AppData"'       ) do (SET REG_AppData=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Cache"'         ) do (SET REG_Cache=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Cookies"'       ) do (SET REG_Cookies=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Desktop"'       ) do (SET REG_Desktop=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Favorites"'     ) do (SET REG_Favorites=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "History"'       ) do (SET REG_History=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Local AppData"' ) do (SET REG_LocalAppData=%%i)
for /f "skip=4 tokens=3* delims=        " %%i in ('reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Local Settings"') do (SET REG_ALocalSettings=%%i)
echo =============================================================================
set REG_
echo =============================================================================
可以問 上面這段土法煉鋼的方式有沒有辦法說短嗎?