通識課02.軟體開啟方式-指令概念

command

上一篇文章「通識課01.軟體開啟方式-執行檔」我們介紹了執行檔,也講到了實際上電腦開啟執行檔都是以指令的方式。這章節我們就針對「指令」來介紹。

古時候,在電腦剛開始流行時,作業系統大多只能以指令來執行程式。而現在我所知道的所有作業系統都還是有輸入指令的地方。甚至有些作業系統(如Linux)還是只有指令的功能。

指令的必要性

指令的必要性不是因為要讓工程師或系統管理員看上去很專業(率),而是因為有許多複雜的系統操作,透過指令可以「更有效率」的完成。

例如使用滑鼠尋找並開啟某設定視窗,再做些調整設定,處理上很簡單,但要移動到多個正確位置並點擊,會花費一些時間。假設我們還要把過程提供給他人參考或在多台電腦上調整設定,我們將會花費大量的時間。

相對之下,使用指令時,我們可先準備調整設定的指令,這指令甚至可以在網路上找到,然後開啟指令工具輸入就可以很快的設定完成,而且這些指令也非常容易提供他人參考或在其他電腦上執行。

所以我們在使用電腦執行的工作愈複雜、重複性愈高時,我們會優先思考以指令來進行

指令開啟執行檔,並檢視文字結果

在前面章節提到的命令提示字元(Command Prompt)中,有許多系統預設的指令,這些指令其實也都是執行檔,但它們不像Chrome執行時會開啟視窗畫面,而是只會在命令提示字元中檢視出文字結果。

這些只會檢視文字結果的執行檔就稱做「指令應用程式(Console Application)」、而執行後會開啟視窗畫面的執行檔稱做「視窗應用程式(Windows Application)」。

假設要查詢電腦目前的網路IP資訊,我們可以使用「ipconfig」的指令,這指令可以很輕易的透過Google(搜尋)找到,而且它就是一個「指令應用程式(Console Application)」,當然也是一個「執行檔」。

而ipconfig的執行檔通常會是在以下路徑:

"C:\Windows\System32\ipconfig.exe"

所以,我們直接輸入”ipconfig”或輸入完整路徑”C:\Windows\System32\ipconfig.exe”,都會得到相同的結果:

那為何我們可以直接透過ipconfig指令來執行呢?其實這部分是因為系統有設定環境變數的關係,我們將會在下一章節介紹到。

建立一個指令稿,可重複利用

如同前面有提到的,我們有時會需要一次執行多個操作,而且可能是多台電腦需要,若用滑鼠去處理,我們會花費很多的時間。改用指令可以「更有效率」,而這其中一個原因就是,多個指令可以建立成「指令稿」來讓系統執行。

假設我們想把前面章節「通識課01.軟體開啟方式-執行檔」介紹過的指令全部都執行一次,我們可以把這些指令都輸入在記事本中,並命名為「test.bat」,這裡要注意命名時「副檔名」也要一起更新為「bat」

"C:\Program Files\Google\Chrome\Application\chrome.exe"
"C:\Program Files\Google\Chrome\Application\chrome.exe" lazy-cto.bang.tw -incognito
"C:\Program Files\Google\Chrome\Application\chrome.exe" "file:///C:/Users/bang/Documents/test.pdf"
ipconfig
pause

接著我們可以透過指令或是滑鼠來開啟這個「test.bat」,這時我們會發現上述的指令都被執行一次:

這是因為bat檔案是Windows中的批次執行指令搞,Windows對「bat」副檔名的預設執行方式就是當作很多行指令來逐一執行。

所以開啟後,會從第一行執行到最後一行的「pause」指令,而「pause」就是讓指令視窗暫停的指令。若我們是使用滑鼠點開「bat」檔案,而最後沒有加上pause時,指令視窗就會在執行完後自動關閉,不過已經開啟的Chrome等視窗還是會繼續開著。

瞭解了這些,我們以後就可以透過指令稿的方式,快速地執行多行指令,並且給予不同的參數。而且這個指令稿內容或bat檔案本身,是可以複製到其他電腦,方便我們處理相同的作業。

用指令執行「程式」或「腳本」檔案

在我們開始學寫程式後,我們會常常需要透過指令去執行某個程式或腳本。這些指令當然也都是執行檔,而程式檔案就像是前面的PDF檔案一樣,透過執行檔並帶入程式檔案路徑,我們將可以執行這些程式。

例如,我先用Python寫了一支簡單的 f(x) = x + 1,然後調用f(1),並印出結果。若要執行這支Python程式,通常我們需要先安裝Python,而安裝完後會有python的執行檔,如下:

"C:\Program Files\Python38\python.exe"

接著我們就可以透過執行檔開啟我們寫的程式碼,然後得到執行結果,就如同前面開啟PDF那樣,而這程式目前是一個「指令應用程式」,所以結果 2 會檢視在指令中:


針對指令的概念我們就介紹到這裡,希望大家日後對指令可以抱持著更輕鬆的態度,因為它們跟我們平常用滑鼠點擊都是一樣的,只是在開啟「執行檔」並給一些參數

大家都說Windows很簡單,但我覺得Linux更簡單。因為Windows我學了一堆指令和各種視窗操作,我才把Windows的技能加在履歷中。而Linux,我只學了一些指令…。

by Bang