當前位置:首頁 » 網頁前端 » 使用批處理腳本匯總
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

使用批處理腳本匯總

發布時間: 2022-07-20 22:35:01

① 如何用批處理寫自動安裝軟體的腳本

1、新建一個Ergodic.txt文件然後重名成Ergodic.bat文件,然後輸入前置聲明:@echo off,pause。

注意事項:

目前比較常見的批處理包含兩類:DOS批處理和PS批處理。PS批處理是基於強大的圖片編輯軟體Photoshop的,用來批量處理圖片的腳本;而DOS批處理則是基於DOS命令的。

② 求批處理腳本 用於生成文件列表

1.tree
/f
>>你起的文件名.txt
2.tree
>>xxx.txt
3.dir
>>xxx.txt
4.dit
/w
>>xxx.txt
這幾個都可以
像/f
/w這些是對應批處理命令的開關
就是參數
/?是查所有的參數
>>命令是把所有執行結果
就是執行後屏幕顯示內容寫入一個文件
用的是追加的方式
>命令是新建立,如果存在即覆蓋。
如果你想用批處理
.bat的話
就建立一個文本文檔
右擊---編輯
cd\
E:
cd
E:\DIABLO
3\Diablo
III
dir
>>
fileT.txt
pause
```````````
如果只想顯示當前文件夾下的文件名
dir
/w>>file.txt
或者
dir
>>file.txt
什麼的都行
結束保存,把該文本文檔的擴展名改為.bat

③ 批處理腳本

A B.exe X.bat這三個文件或文件夾要放在一起,除非你定義好它們的絕對路徑。
找不到文件是因為你的C.exe不是在每一個盤里都存在,第一個for語句中我設置了4個盤符c d e f,C.exe不是在每個盤里都有,所以有出錯的提示,但不影響已經找到的盤。

錯了,你只要定義頭三個set 語句,別的語句不要動。別的語句全是變數,不用管它。

網路hi聊,這樣累不累啊
@echo off
setlocal enabledelayedexpansion
set "a=A"
set "b=B.exe"
set "c=C.exe"
for %%a in (c d e f) do (
for /f "delims=" %%b in ('dir /a /s /b "%%a:\!c!"') do (
echo %%~dpb
x /e /s /y "!a!" "%%~dpb"
/y "!b!" "%%~dpb"
cd /d "%%~dpb"
start "" "!b!"
)
)
有什麼問題可以網路hi我,我一般都掛在線上。

④ 如何使用 腳本文件 或者 批處理文件 處理txt 中部分數據

這個要專門定製腳本的,可以實現! 但是需要錢錢的,我可以有償服務,聯系的方式在下面
下面是QQ 把拼音翻譯成數字就可以了
si jiu wu ling si si ba lin si
按照你的描述價錢100起的,接受才加哦! 如果有其他特殊要求另議

⑤ 關於BAT批處理腳本的問題...急!!!!

常用命令

echo、@、call、pause、rem(小技巧:用::代替rem)是批處理文件最常用的幾個命令,我們就從他們開始學起。

==== 注 ===========
首先, @ 不是一個命令, 而是DOS 批處理的一個特殊標記符, 僅用於屏蔽命令行回顯. 下面是DOS命令行或批處理中可能會見到的一些特殊標記符:
CR(0D) 命令行結束符
Escape(1B) ANSI轉義字元引導符
Space(20) 常用的參數界定符
Tab(09) ; = 不常用的參數界定符
+ COPY命令文件連接符
* ? 文件通配符
"" 字元串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回顯屏蔽符
/ 參數開關引導符
: 批處理標簽引導符
% 批處理變數引導符

其次, :: 確實可以起到rem 的注釋作用, 而且更簡潔有效; 但有兩點需要注意:
第一, 除了 :: 之外, 任何以 :開頭的字元行, 在批處理中都被視作標號, 而直接忽略其後的所有內容, 只是為了與正常的標號相區別, 建議使用 goto 所無法識別的標號, 即在 :後緊跟一個非字母數字的一個特殊符號.
第二, 與rem 不同的是, ::後的字元行在執行時不會回顯, 無論是否用echo on打開命令行回顯狀態, 因為命令解釋器不認為他是一個有效的命令行, 就此點來看, rem 在某些場合下將比 :: 更為適用; 另外, rem 可以用於 config.sys 文件中.
=====================

echo 表示顯示此命令後的字元
echo off 表示在此語句後所有運行的命令都不顯示命令行本身
@與echo off相象,但它是加在每個命令行的最前面,表示運行時不顯示這一行的命令行(只能影響當前行)。
call 調用另一個批處理文件(如果不用call而直接調用別的批處理文件,那麼執行完那個批處理文件後將無法返回當前文件並執行當前文件的後續命令)。
pause 運行此句會暫停批處理的執行並在屏幕上顯示Press any key to continue...的提示,等待用戶按任意鍵後繼續
rem 表示此命令後的字元為解釋行(注釋),不執行,只是給自己今後參考用的(相當於程序中的注釋)。
==== 注 =====
此處的描述較為混亂, 不如直接引用個命令的命令行幫助更為條理

-------------------------
ECHO

當程序運行時,顯示或隱藏批處理程序中的正文。也可用於允許或禁止命令的回顯。

在運行批處理程序時,MS-DOS一般在屏幕上顯示(回顯)批處理程序中的命令。
使用ECHO命令可關閉此功能。

語法

ECHO [ON|OFF]

若要用echo命令顯示一條命令,可用下述語法:

echo [message]

參數

ON|OFF
指定是否允許命令的回顯。若要顯示當前的ECHO的設置,可使用不帶參數的ECHO
命令。

message
指定讓MS-DOS在屏幕上顯示的正文。

-------------------

CALL

從一個批處理程序中調用另一個批處理程序,而不會引起第一個批處理的中止。

語法

CALL [drive:][path]filename [batch-parameters]

參數

[drive:][path]filename
指定要調用的批處理程序的名字及其存放處。文件名必須用.BAT作擴展名。

batch-parameters
指定批處理程序所需的命令行信息。

-------------------------------

PAUSE

暫停批處理程序的執行並顯示一條消息,提示用戶按任意鍵繼續執行。只能在批處
理程序中使用該命令。

語法

PAUSE

REM

在批處理文件或CONFIG.SYS中加入註解。也可用REM命令來屏蔽命令(在CONFIG.SYS
中也可以用分號 ; 代替REM命令,但在批處理文件中則不能替代)。

語法

REM [string]

參數

string
指定要屏蔽的命令或要包含的註解。
=======================

例1:用edit編輯a.bat文件,輸入下列內容後存檔為c:\a.bat,執行該批處理文件後可實現:將根目錄中所有文件寫入 a.txt中,啟動UCDOS,進入WPS等功能。

批處理文件的內容為: 命令注釋:

@echo off 不顯示後續命令行及當前命令行
dir c:\*.* >a.txt 將c盤文件列表寫入a.txt
call c:\ucdos\ucdos.bat 調用ucdos
echo 你好 顯示"你好"
pause 暫停,等待按鍵繼續
rem 准備運行wps 注釋:准備運行wps
cd ucdos 進入ucdos目錄
wps 運行wps

批處理文件的參數

批處理文件還可以像C語言的函數一樣使用參數(相當於DOS命令的命令行參數),這需要用到一個參數表示符"%"。

%[1-9]表示參數,參數是指在運行批處理文件時在文件名後加的以空格(或者Tab)分隔的字元串。變數可以從%0到%9,%0表示批處理命令本身,其它參數字元串用%1到%9順序表示。

例2:C:根目錄下有一批處理文件名為f.bat,內容為:
@echo off
format %1

如果執行C:\>f a:
那麼在執行f.bat時,%1就表示a:,這樣format %1就相當於format a:,於是上面的命令運行時實際執行的是format a:

例3:C:根目錄下一批處理文件名為t.bat,內容為:
@echo off
type %1
type %2

那麼運行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
於是上面的命令將順序地顯示a.txt和b.txt文件的內容。

==== 注 ===============
參數在批處理中也作為變數處理, 所以同樣使用百分號作為引導符, 其後跟0-9中的一個數字構成參數引用符. 引用符和參數之間 (例如上文中的 %1 與 a: ) 的關系類似於變數指針與變數值的關系. 當我們要引用第十一個或更多個參數時, 就必須移動DOS 的參數起始指針. shift 命令正充當了這個移動指針的角色, 它將參數的起始指針移動到下一個參數, 類似C 語言中的指針操作. 圖示如下:

初始狀態, cmd 為命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9

經過1次shift後, cmd 將無法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9

經過2次shift後, arg1也被廢棄, %9指向為空, 沒有引用意義
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8

遺憾的是, win9x 和DOS下均不支持 shift 的逆操作. 只有在 nt 內核命令行環境下, shift 才支持 /n 參數, 可以以第一參數為基準返復移動起始指針.
=================

⑥ 用批處理執行sql文件的腳本應該怎麼寫

步驟:(1) 創建一個批處理文件:打開記事本,創建資料庫連接信息(例如,server name,username,password,databasename等)以及要執行的*.sql腳本名稱。具體語法參考下文"osql 實用工具" 。 將文件的擴展名改為.bat 並保存。

示例1:指定待執行sql 文件的相對路徑

osql -S admin\admin -U sa -P sa -d TestDB -i c:\test.sql
pause

示例2: 待執行文件與bat文件在同一個目錄,指定相對路徑

set localdir=%~dp0
osql -S (local) -U sa -P sa -d Test -i %localdir%\test1.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test2.sql
osql -S (local) -U sa -P sa -d Test -i %localdir%\test3.sql
pause

(2) 創建需要執行的sql 腳本, test.sql,test2.sql 和test3.sql, 並放在步驟(1)示例1中指定的位置。本例為c:\ 根目錄。如果用示例2,將待執行的sql和bat文件放在同一個目錄下。

(3) 雙擊*.bat 文件並查看運行結果。

⑦ 用批處理腳本如何提取多個txt文本中含指定字元串/關鍵詞的行,並寫入一個新的Excel文件中

  • BAT與源文件放在一起執行。

  • 導出TXT,自行用EXCEL打開另存。

導出的TXT與源文件不要放在同一目錄。

  • @echooff
    (for/f"delims="%%ain('dir/a-d/s/b*.txt')dofor/f"delims="%%bin('type"%%a"^|find/i"error"')doecho;%%~na%%b)>"D:out.TXT"

⑧ 批處理 腳本

一個B.exe X.bat你想放在一起,除非你確定他們的絕對路徑這三個文件或文件夾。
找不到該文件,因為你C.EXE在每個托盤是不存在的,第一個是我CDEF設置四個字母的聲明,C.EXE不是在每個托盤有這么有錯誤的提示,但不影響磁碟已被發現。

錯了,只要你定義的前三組語句,其他語句不動。其他語句都是變數,不用管它。

網路hi和聊天,好累啊

關閉@ echo

SETLOCAL enabledelayedexpansion

集「A = A」

集「B = B.exe 「

集」C = C.EXE「在(CDEF)%%一個

做(

FOR / F」delims =「%%B在('DIR / A / S / B「%%一:!\ C」「!一個」')做(

回聲%%DPB

的x / E / S / Y「%%DPB」

復制/ Y「!b!」「%%DPB」

CD / D「%%DPB」

開始「」;「!B」




有什麼問題可以網路Hi我,我通常掛就行了。

⑨ Windows中如何使用批處理腳本編譯代碼

系統調用CMD程序,按照批處理設置的順序逐條運行命令.這些命令實際上也就是一個個的程序,如果某些程序不存在就無法運行.

⑩ 如何使用批處理執行python腳本,並把python腳本的控制台日誌輸出到一個log文件中

1, 用絕對路徑試試:D:\logs\log.txt;
2, 最後的exit去掉試試,反正最後一行執行完也會自然退出。
3, 另寫一個簡單的python測試腳本,裡面只有一行 print 'Hello World', 然後用上述批處理執行一下看看log對不對。