說說Linux shell外部命令與內建命令
導讀 | 有內部 (內建命令)和外部命令之分,內部命令和外部命令功能基本相同,但也有些細微差別。 |
內部命令不需要使用子程式來執行,它們已經和 編譯成一體,作為shell工具的組成部分存在。不需要藉助外部程式檔案來執行。它們是一些比較簡單的 命令,如exit,history,cd,echo等。
要分割槽是外部命令還是內部命令可以使用type 來檢視,如下圖檢視cd是內部還是外部命令:
alias 命令也是一個內建命令,允許你為常用的命令和引數建立另一個名稱,從而減少輸入。在系統中已經設定好了一些常用的命令的別名。檢視當前可用的別名使用alias -p如下圖所示:
下面通過alias 命令來建立屬於自己的別名。把ls -li 長列表命令引數改別名為li。
一但定義好了別名就可以隨時在shell中使用,但要注意的是隻有在當前程式中才有效。下面演示在子shell中使用別名無效,只有退出子shell才行。
外部命令是存在於bash shell之外的程式,它們不是shell程式的一部分,外部命令程式通常位於/bin, /usr/bin, /sbin, /usr/sbin中。 ps就是一個外部命令,使用type檢視如下所示:
所有外部命令都會被一個子程式來執行。ps的父程式是bash shell PID 2486,如下所示:
當命令是外部命令時,type還會顯示外部命令所在路徑,如下圖,檢視service和ps的路徑:
根據路徑提示,可以找到命令所在目錄,如找service命令如下所示:
總結:這篇介紹的兩種不同型別的命令:內部命令和外部命令。外部命令會建立出一個包含全新環境的子程式,而內部命令則不會。
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2853127/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux shell命令列檢視判斷檔案是內部內建自帶命令還是外部命令Linux命令列
- 說說Linux抓包命令tcpdumpLinuxTCP
- 簡單說說linux關機命令Linux
- Linux中內部命令和外部命令如何區分?Linux
- 獲取有關 Linux shell 內建命令的幫助Linux
- Linux: yum 命令說明Linux
- linux常見命令說明Linux
- Linux sed命令詳細說明Linux
- shell內建命令 #yyds乾貨盤點#
- vue不是內部或外部命令Vue
- linux 常見命令及說明雜記Linux
- 如何從 Vim 中訪問 shell 或者執行外部命令
- 說說CORS與jsonpCORSJSON
- Pycharm:terminal中python不是內部或外部命令PyCharmPython
- python不是內部或外部命令怎麼回事Python
- net start mysql net不是內部或外部命令MySql
- Linux shell命令總結Linux
- 王建林說
- 說說我心中的Linux系統Linux
- Linux檢視內建命令和非內建命令幫助的幾種方法(man、help、info)Linux
- anaconda中執行pip命令顯示不是內部或外部命令
- Linux的檔案系統與Shell簡單命令Linux
- lol內建語音win10不能說話怎麼辦_lol內建語音win10不能說話修復方法Win10
- wc 命令使用說明
- 『學了就忘』Linux基礎命令 — 30、find命令詳細說明Linux
- 《Linux命令列與shell指令碼程式設計大全 第3版》Linux命令列---46Linux命令列指令碼程式設計
- linux Shell 命令列-03-array Shell 陣列Linux命令列陣列
- Linux基礎命令---enable開啟shell命令Linux
- maven安裝問題——mvn不是內部或外部命令Maven
- 說說我當初是如何學Linux的Linux
- 內部類解說
- 說說Mongodb 與 MySQL的那些事MongoDBMySql
- Linux常用內建命令有哪些?Linux系統怎麼學習Linux
- Win10提示python不是內部或外部命令怎麼回事 win10執行python提示不是內部或外部命令如何解決Win10Python
- 說說 Vue.js 的指令與事件Vue.js事件
- openssh版本更新與說明 openssl版本更新與說明
- 簡說設計模式——命令模式設計模式
- Linux命令和shell指令碼學習Linux指令碼