CMD命令之BAT脚本路径信息
CD命令解疑
cd是chdir的縮寫,命令詳解參見cd /?
可以看到/d參數的解釋如下:
 使用 /D命令行開關,除了改變驅動器的當前目錄之外,還可改變當前驅動器。
通常我們在xp系統中打開cmd窗口時,會顯示
 C:\Documents and Settings\Administrator>
 如果我們執行如下命令,發現目錄依然還是在C:\Documents and Settings\Administrator
 C:\Documents and Settings\Administrator>cd d:\tomcat6.0.18
 C:\Documents and Settings\Administrator>
 此時,我們鍵入d:,不但會切換到d盤,而且會切換到d:/tomcat6.0.18的目錄
 C:\Documents and Settings\Administrator>cd d:\tomcat6.0.18
 C:\Documents and Settings\Administrator>d:
 D:\tomcat6.0.18>
 下面語句我們就能看到/d參數的作用了。發現加了/d參數之后直接切換到d盤的tomcat6.0.18目錄了。
 C:\Documents and Settings\Administrator>cd /d d:\tomcat6.0.18
 D:\tomcat6.0.18>
結論:不加/d參數只能在同一驅動器的目錄之間切換,加上/d參數則能在不同驅動器之間的目錄之間切換
DOS批處理中%cd%和%~dp0的區別
在DOS中,有兩個環境變量可以跟當前路徑有關,一個是%cd%, 一個是%~dp0。
- %cd% 可以用在批處理文件中,也可以用在命令行中; %cd%的內容是可以被改變的,其內容為命令的執行路徑或批處理文件的執行路徑。
- %~dp0只可以用在批處理文件中,其內容是批量處理文件所在的路徑。
對此命令并不清楚,以下內容都來自互聯網:
 %~dp0 “d”為Drive的縮寫,即為驅動器,磁盤、“p”為Path縮寫,即為路徑,目錄
 cd是轉到這個目錄,不過我覺得cd /d %~dp0還好些
 選項語法:
 ~0 - 刪除任何引號("),擴充%0
- %~f0 - 將%0擴充到一個完全合格的路徑名(“f”是file,即文件)
- %~d0 - 僅將%0擴充到一個驅動器號
- %~p0 - 僅將%0擴充到一個路徑
- %~n0 - 僅將%0擴充到一個文件名(“n”是name文件名)
- %~x0 - 僅將%0擴充到一個文件擴展名
- %~s0 - 擴充的路徑只含有短名(“s”為Short,短的)
- %~a0 - 將%0擴充到文件的文件屬性(“a”為attribute,即屬性)
- %~t0 - 將%0擴充到文件的日期/時間(“t”time)
- %~z0 - 將%0擴充到文件的大小(Size大小)
- %~$PATH:0 - 查找列在路徑環境變量的目錄,并將%0擴充到找到的第一個完全合格的名稱。如果環境變量名未被定義,或者沒有找到文件,此組合鍵會擴充到空字符串
可以組合修飾符來得到多重結果:
- %~dp0 - 僅將%0擴充到一個驅動器號和路徑
- %~nx0 - 僅將%0擴充到一個文件名和擴展名
- %~fs0 - 僅將%0擴充到一個帶有短名的完整路徑名
- %~dp$PATH:0 - 查找列在路徑環境變量的目錄,并將%I擴充到找到的第一個驅動器號和路徑。
- %~ftza0 - 將%0擴充到類似輸出線路的DIR
- %0為當前批處理文件如果0換成1為第一個文件,2為第2個
在BAT中設置環境變量
在軟件安裝后,要么自動添加環境變量,要么是手動添加相應的環境變量。對于大的系統綠色安裝,在BAT中設置臨時環境變量是必不可少的,比如MinGW啟動腳本等。
以下是綠色安裝啟動appium的腳本:
@echo offset CLASSPATH=.;%~dp0\Java\jdk1.8.0_66\lib set JAVA_HOME=%~dp0\Java\jdk1.8.0_66 set JDK_HOME=%~dp0\Java\jdk1.8.0_66 set ANDROID_HOME=%~dp0\Android\android-sdk set PATH=%~dp0\Android\android-sdk\platform-tools;%~dp0\Java\jdk1.8.0_66\bin;%~dp0\Android\android-sdk;%PATH%adb connect 127.0.0.1:62001 "Android\android-sdk\platform-tools\adb.exe" devices"%~dp0\node_modules\node.exe" "%~dp0\node_modules\appium\bin\appium.js" -U 127.0.0.1:62001在這里設置了java,android相關的環境變量,將軟件包拷貝到其他機器即可運行腳本啟動appium
定制特定環境變量的終端
快捷方式
如squid終端將其bin路徑設置到PATH環境變量中,其快捷方式目標如下:
C:\Windows\System32\cmd.exe /K "color 02 & cd /dD:\Squid\ & set PATH=D:\Squid\bin;%PATH%"node的終端環境
@echo off%ComSpec% /K "color 02 & set PATH=D:\Program Files\node-v6.11.3-win-x64;%PATH% & set NODE_PATH=D:\Program Files\node-v6.11.3-win-x64\node_modules"cmd.exe常用參數如下:
- /c 執行 String 指定的命令,然后停止。
- /k 執行 String 指定的命令并繼續。
將cmd添加到右鍵
cmd.reg
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\Directory\Background\shell\在此處打開命令窗口][HKEY_CLASSES_ROOT\Directory\Background\shell\在此處打開命令窗口\command] @="\"C:\\Windows\\System32\\cmd.exe\" \"--working-dir\" \"%v.\""啟用與禁用Administrator用戶
管理員執行:
- 禁用 net user administrator /active:no
- 啟用 net user administrator /active:yes
總結
以上是生活随笔為你收集整理的CMD命令之BAT脚本路径信息的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: sparksql加载mysql表中的数据
- 下一篇: hive避免MR的情况
