DOS批處理中%~dp0表示什麼意思
如果一個install.bat檔案位於D:\jeesite\bin
檔案內容如下:
@echo off
echo [INFO] This is a demo.
echo [INFO] %~dp0
pause
執行install.bat,命令列輸出如下
[INFO] This is a demo.
[INFO] D:\jeesite\bin\
即:
- %0代表檔案本身
- d代表碟符
- p代表路徑
擴充套件的選項還包括:
- %~f0 - 完整的路徑+檔名
[INFO] D:\jeesite\bin\install.bat
-
%~n0 - 檔名(無副檔名)
[INFO] install
-
%~x0 - 副檔名
[INFO] .bat
%~s0 - 擴充的路徑只含有短名(“s”為Short,短的)
%~a0 - 將 %0 擴充到檔案的檔案屬性(“a”為attribute,即屬性)
%~t0 - 將 %0 擴充到檔案的日期/時間(“t”time)
%~z0 - 將 %0 擴充到檔案的大小(Size 大小)
等等
轉載:http://www.jianshu.com/p/5a1a882ead95
相關推薦
DOS批處理中%~dp0表示什麼意思
如果一個install.bat檔案位於D:\jeesite\bin 檔案內容如下: @echo off echo [INFO] This is a demo. echo [INFO] %~dp0 pause 執行install.bat,命令列輸出如下 [INFO] This is a demo. [INF
DOS批處理中%cd%和%~dp0的異同分析
在DOS的批處理中,有時候需要知道當前的路徑。在DOS中,有兩個環境變數可以跟當前路徑有關,一個是%cd%, 一個是%~dp0。 這兩個變數的用法和代表的內容是不同的。 1. %cd% 可以用在批處理檔案中,也可以用在命令列中;展開後,是驅動器碟符:+當前目錄,如在dos視窗中進入c:\d
DOS批處理中文字替換
在DOS批處理中要將某一行中的部分文字替換掉, 今天找到辦法了. set str=hello, this is a test, replace some characters using dos command rem 將小寫開頭的hello替換為大寫開頭的Hello se
dos下 和 批處理中的 for 語句的基本用法
for 語句的基本用法 : 最複雜的for 語句,也有其基本形態,它的模樣是這樣的: 在cmd 視窗中:for %I in (command1) do command2 在批處理檔案中:for %%I in (command1) do comma
dos命令列或批處理中變數一個百分號和兩個百分號的區別
for 命令的基本語法如下: 在cmd視窗中:for %I in (command1) do command2 在批處理檔案中:for %%I in (command1) do command2 上面的變數有%I和%%I兩種,分別是一個百分號和兩個
[轉]批處理中
log svr3 相同 完整 article code 建議 ren 使用 本文來自:http://www.jb51.net/article/105325.htm regsvr32 "%~dp0phCache.dll" 在一個批處理中看到以上語句,並且同目錄下有 Cac
批處理中的IF詳解
效果 我不 width set 符號 等於 ron 例子 ima 在CMD使用IF /?打開IF的系統幫助會發現IF有3種基本的用法! 第一種用法:IF [NOT] ERRORLEVEL number command 這種用法現在很少用了,因為它需要使用到CHOICE命令,
Windows 批處理中 setlocal enabledelayedexpansion 的作用
預處理 環境 oca exp 變量延遲 cell 現在 pac lin 設置本地為延遲擴展。其實也就是:延遲變量,全稱延遲環境變量擴展, 想進階,變量延遲是必過的一關!所以這一部分希望你能認真看。 為了更好的說明問題,我們先引入一個例子。例1: ?
在Bat批處理中調用Powershell腳本
pushd fff 格式 ## popd it資訊 man ext command ##如何在BAT中調用powershell,把下面代碼另存為bat格式 pushd %~dp0 powershell.exe -command ^ "& {set-executi
在批處理中調用VBScript(支持獲取返回值)
都是 exp sap net 什麽 api 獲得 鏈接 結果 有個帖子簡單介紹了利用mshta來調用vbs的方法(鏈接)。雖該文章作者認為 到此,在bat中使用vbs得到了完全解決。從此可以在bat和vbs間自由的航行了。 但任然無法獲取vbs的返回值,可見該方法有一定
在批處理中判斷延遲環境變量擴展是否已啟用的方法
延遲環境變量擴展研究背景 由於特殊原因,有時我們需要在批處理中判斷延遲環境變量擴展是否已啟用,可以用下面的方法進行判斷。使用腳本@echo off setlocal enabledelayedexpansion set layedexpansion=1&if not "!laye
DOS 批處理命令For迴圈命令詳解
轉載:https://www.jb51.net/article/93171.htm for命令是一種對一系列物件依次迴圈執行同一個或多個命令的在命令列或批處理中執行的命令,結合一些Windows管理中的程式後,其處理功能強大、應用靈活方便程度令人刮目相看。但是,其幫助資訊也因此複雜往往令初學者望
Dos批處理命令bat檔案執行完以後自動關閉dos視窗的方法
Dos 批處理命令 bat Dos 批處理命令 bat 檔案執行完以後自動關閉 dos 視窗的方法: 很多人執行完批處理命令發現 dos 視窗不能自動關閉,那是因為你在 bat 檔案中直接執行了需要執行的某些外部程式, 如果希望 dos 視窗自動關閉,
DOS 批處理命令
(1)copy con[碟符:][路徑名](檔名) 用於建立.bat檔案或.txt檔案,然後以Ctrl Z結束。 例如: (a)copy con test.bat 回車 Ctrl Z 回車
一段可迴圈輸入數字,經過計算後輸出的dos批處理程式碼,留存參考
技術群裡有新人問這個題目,無聊寫了這個dos批處理。 因為十幾年沒寫dos了,都忘記了,寫這幾行程式碼花了半個小時,所以打算記錄下來,留存備用 @echo off :start set /p mem
windows批處理中的字串處理詳解
轉載:https://www.jb51.net/article/52744.htm 1、擷取字串 擷取字串可以說是字串處理功能中最常用的一個子功能了,能夠實現擷取字串中的特定位置的一個或多個字元。舉例說明其基本功能: 程式碼如下: @echo off set ifo=abcd
DOS批處理命令 For迴圈命令詳解!
for命令是一種對一系列物件依次迴圈執行同一個或多個命令的在命令列或批處理中執行的命令,結合一些Windows管理中的程式後,其處理功能強大、應用靈活方便程度令人刮目相看。但是,其幫助資訊也因此複雜往往令初學者望而生畏,這裡根據本人的學習理解,把其用法分解簡化,疏忽和錯誤也
DOS 批處理獲取檔案大小
最近研究了幾天,終於寫了出來.特別分享. @echo off&setlocal enabledelayedexpansion set "fn=E:\cheleon\data\localdb.mdb"set /a "k=0"for /f "skip=4 delims=
DOS批處理延時技術
::第二行程式碼說明:“:”和“~”必不可少!“~”後的數字:為正數表示捨棄輸出結果的前幾位;直接跟負數表示取到輸出結果的後第幾位。逗號後的數字:為正數表示取到輸出結果的前第幾位;為負數表示捨棄輸出結果的後幾位。echo %date:~4% echo %time:~-3% echo %date:~4% %t
完美的Dos批處理實現sleep
作者:tombkeeper[Base64Decode("dG9tYmtlZXBlckB4Zm9jdXMub3Jn")]出處:http://hi.baidu.com/tombkeeper時間:2007.03.23 我以前寫指令碼遇到需要Sleep的地方都是藉助於ping來實現,因為Windows的ping在