俞木發(fā)
由于命令行的簡潔、高效,平時很多操作我們都愛使用命令行來完成。不過系統(tǒng)自帶的命令行使用起來有各種不方便,如很多命令自帶Y/N開關(guān),這些命令需要手動輸入Y/N才能完成,如果自行安裝的命令行則要進入安裝目錄才能運行等。下面一起來看看如何更高效地運行命令行。
1生疏也無懼 自動補全命令
命令行都是需要通過輸入特定的命令才能完成操作,很多朋友對命令都不是十分熟悉,這樣在實際使用時就會遇到各種問題,如只記得命令的前半段,無法記住完整的命令?,F(xiàn)在我們可以通過自動補全的方法來實現(xiàn)命令的高效輸入。
Windows 10已經(jīng)自帶命令自動補全功能,啟動命令提示符只要輸入命令的一部分,然后按下Tab鍵即可自動補全,比如輸入“take”,再按下Tab鍵即可自動補全為“takeown.exe”命令(圖1)。
不過如果相關(guān)的命令前綴很多,系統(tǒng)Tab鍵自動補全并不能讓我們快速獲取到相應(yīng)的命令,要想自動補全常用命令,現(xiàn)在可以使用PYCMD進行更好的補全。比如net命令有很多,系統(tǒng)自帶補全會將.dll文件也列出,而且是每按一次Tab鍵顯示一個文件,Pycmd則是按一下Tab鍵,然后就將所有net開頭的命令全部列出(前綴高亮標注),我們只要按自己實際需要的命令進行選擇即可(圖2)。
2向GUI靠攏 使用圖形化界面命令提示符
命令提示符默認使用黑乎乎的命令行界面,這讓很多習(xí)慣圖形化程序的朋友不適應(yīng)。比如我們經(jīng)常要復(fù)制一些命令,在命令提示符窗口中并不能像在常規(guī)圖形化程序(如Werd、記事本)那樣選中后右擊選擇“復(fù)制”,而是要選擇后右擊標題欄,在彈出的菜單中才能選擇復(fù)制(圖3)。
現(xiàn)在借助Powercmd,我們即可像在傳統(tǒng)圖形化程序窗口那樣執(zhí)行很多常見的操作。比如運行Powercmd后如果要復(fù)制其中的命令,選中后直接右擊選擇“復(fù)制”即可,還可以執(zhí)行保存、添加新窗口等常見操作(圖4)。
當然Powercmd還可以像瀏覽器那樣使用多標簽(甚至多窗口)啟動命令,這樣在執(zhí)行多個命令的時候非常方便,而不像系統(tǒng)自帶命令提示符窗口只能機械執(zhí)行一個個命令(圖5)。
3任何命令高速運行 自定義環(huán)境變量
大家知道系統(tǒng)自帶的命令,我們可以在命令提示符窗口(或者運行框)下直接輸入命令名稱就可以啟動,但是自己下載的命令行軟件卻無法這樣快捷啟動。如果要想自己下載的命令也可以像系統(tǒng)內(nèi)置命令那樣快捷啟動,可以通過配置環(huán)境變量的方式實現(xiàn)。
比如上述的pycmd筆者是安裝在“C:\Users\yumufa\Desktop\PyCmd”,現(xiàn)在要實現(xiàn)在運行框或者任意命令提示符窗口均可以直接輸入“pycmd”啟動。首先在任務(wù)欄搜索框直接輸入“環(huán)境變量”,點擊“編輯賬戶的環(huán)境變量”,選擇其中的“Path”,點擊“編輯”,然后在變量值處輸入pycmd的安裝路徑(如果原來有值,則以英文分號隔開多個路徑)(圖6)。
這樣以后我們只要在“運行”或者命令提示符下的任意路徑輸入“pycmd”,都可以快速啟動該命令行了。同樣的方法我們可以將任意程序?qū)崿F(xiàn)快捷啟動(圖7)。
4手動加參數(shù) 命令自動響應(yīng)
如上所述,很多命令都有Y/N開關(guān),默認需要手動確認才能完成命令的運行。這樣如果我們要制作批處理,或者快速運行多個命令,就無法實現(xiàn)命令自動運行。對于此類命令,現(xiàn)在可以通過自行添加參數(shù)的方法實現(xiàn)。
比如對于Windows 10系統(tǒng)目錄內(nèi)的文件進行重命名,我們可以借助takeown更改文件所有權(quán),然后再使用cacls獲取完全控制權(quán)限,但是在使用cacls獲取文件權(quán)限更改的時候,系統(tǒng)會彈出Y/N詢問后才能完成操作(圖8)。
如果要一氣呵成完成文件所有者和權(quán)限的更改,我們可以使用“Echo y|”參數(shù)實現(xiàn)自動確認。比如需要獲取“C:\windows\system32\osk.exe”所有權(quán)限,啟動記事本建立如下批處理:
takeown /f C:\windows\system32\osk.exe
ECHO Y|cacls C:\windows\system32\osk.exe/gadministrators:f
這樣運行上述批處理的時候,由于這里使用通道符號“|”,把前面的命令執(zhí)行結(jié)果信息發(fā)送到下個命令處理,這樣cacls命令就可以直接響應(yīng)Y運行了(圖9)。