Linux命令執行

Linux命令

Linux命令是對Linux系統進行管理的命令。對于Linux系統來說,無論是中央處理器、內存、磁盤驅動器、鍵盤、鼠標,還是用戶等都是文件,Linux系統管理的命令是它正常運行的核心,與之前的DOS命令類似。linux命令在系統中有兩種類型:內置Shell命令和外部命令。

  • 命令格式

COMMAND [OPTIONS…] [ARGUMENTS…]
OPTIONS 選擇 包括長選項和短選項 長選項:–all 短選項:-a
ARGUMENTS 參數 命令作用的對象,不如文件名,用戶名等

一個命令可以有多個選項  比如 ls -a -l /etc
取消命令Ctrl+c
多個命令之間用;隔開
一個命令可以用 \ 分行

  • 內置Shell命令與外部命令

  • 內置Shell命令

shell自帶的命令稱為內置Shell命令,可以通過help命令(help本身也是Shell內置命令)來查看Shell內置命令列表;

enable cmd 可以啟用內部命令;

enable -n cmd 可以禁用內部命令;

enable -n 可以查看所有被禁用命令。

禁用內置命令不代表這個命令不可用,如果這個命令同時還是外部命令,那禁用這個命令后,系統會去外部查找這個命令。比如echo這個命令。我們可以使用type來查看這個命令是Shell內置還是外部命令。

Linux命令執行

可見echo是內部命令,這時我們禁用這個命令后在用那個type看看。

Linux命令執行

這時它不再是內部命令而變成了外部命令。

  • 外部命令

在文件系統路徑下有對應的可執行程序文件
可使用which -a或者whereis來查看一個命令的路徑

  • Hash緩存表

  • 什么是Hash緩存表?

Hash緩存表是用來緩存用戶執行過的外部命令,當執行一個命令時,系統首先判斷它是內部命令還是外部命令,如果是內部命令直接使用,如果是外部命令,則去查找Hash緩存表,如果有緩存則直接調用,如果沒有則去PATH路徑下查找。

  • hash常見用法

hash 顯示hash緩存的所有命令,包括命中次數
hash -l 顯示hash緩存的所有命令,包括相關詳細信息如路徑,命令類型
hash -p path name 將命令的全路徑取個別名為name
hash -t name 打印緩存中的name路徑
hash -d name 清楚名為name的緩存
hash -r 清除hash表中所有的緩存

  • 別名 alias

使用alias命令可以查看所有的命令別名,alias NAME=”echo”,當用戶執行NAME時相當于執行了echo命令。
直接這樣寫別名是不能永久生效的,需要去配置文件寫,
僅對當前用戶有效:~/.bashrc
對所有用戶有效:/etc/bashrc
配置好后不會立即生效,需要重新登錄或者使用source或者 . 來重新讀取配置文件 比如 . /etc/bashrc。
unalias命令可以取消別名 -a 可以取消所有別名
如果別名和原命重名而需要執行原命令時,可用”\command”或者’command’ 或/PATH/command

  • 命令執行優先級

別名(alias)>內置Shell命令>緩存(hash)>外部命令($PATH)

原創文章,作者:657188918,如若轉載,請注明出處:http://www.www58058.com/80585

(0)
657188918657188918
上一篇 2017-07-15 15:32
下一篇 2017-07-15 15:45

相關推薦

  • 創建私有CA和申請證書流程

    創建私有CA和申請證書流程 由于很多時候做實驗需要用到證書,就需要自己搭建一個私有CA來給自己頒發證書。同時通過整理創建CA和申請證書、吊銷證書的過程加深自己的理解. PKI:Publilc Key Infrastructure 公鑰基礎設施:     簽證機構:CA     注冊機構:RA &nb…

    Linux干貨 2016-12-01
  • N22-妙手-第四周博客作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -r /etc/skel /home/tuser1 [root@localhost ~]# chmod&nb…

    Linux干貨 2016-09-05
  • 單臺主機lnmp+wordpress配置示例

    單臺主機lnmp+wordpress fpm配置 ]# yum install php php-fpm php-mysql –y ]# vim /etc/php-fpm.d/www.conf 配置服務監聽地址和程序運行者身份 listen = 127.0.0.1:9000 user = nginx group = nginx ]# chown -R ngin…

    Linux干貨 2016-11-07
  • 推薦-LINUX磁盤管理

    Evernote Export LINUX磁盤管理 linux學習筆記 磁盤分區 文件系統 掛載 在操作系統中,磁盤管理屬于設備管理的范疇。一塊硬盤安裝到主機之后稱為裸設備,若要能夠在Linux系統中使用必須對其進行如下步驟:分區=>格式化(創建文件系統)=>掛載 LINUX系統的設備類型 Linux沿襲Unix的風格,將所有設備認成是一個文件 …

    Linux干貨 2016-04-05
  • linux文本處理三劍客-sed

    sed 是什么? sed是一種流編輯器,它是文本處理中非常中的工具,在linux中被稱為linux文本處理三劍客之一,能夠完美的配合正則表達式使用,功能不同凡響。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文…

    Linux干貨 2017-03-15
  • 如何在 Linux 下大量屏蔽惡意 IP 地址

    很多情況下,你可能需要在Linux下屏蔽IP地址。比如,作為一個終端用戶,你可能想要免受間諜軟件或者IP追蹤的困擾?;蛘弋斈阍谶\行P2P軟件時。你可能想要過濾反P2P活動的網絡鏈接。如果你是一名系統管理員,你可能想要禁止垃圾IP地址訪問你們的公司郵件服務器。或者你因一些原因想要禁止某些國家訪問你的web服務。在許多情況下,然而,你的IP地址屏蔽列表可能會很快…

    Linux干貨 2015-02-26
欧美性久久久久