linux入門第二課

**linux入門基礎**

linux 命令類別

內部命令和外部命令

首先我們可以用echo $SHELL 來查詢shell 里面會顯示我們當前在用的shell

上圖是echo $SHELL

上圖是echo $SHELL

也可以用cat /etc/shells來查詢系統里面的shell

也可以用cat /etc/shells來查詢系統里面的shell

bash其實是一個文件是一個程序 存在于 /bin/bash 目錄,這是真是存在的文件,是一個可以執行的文件,但是這個程序我們用戶一登陸就啟用起來了,例如我們用的一些命令就集成在里面,這種集成在bash里面的命令我們就叫做內部命令,例如 history 就是集成在bash里面的她能執行,echo $SHELL 他也是集成在bash里面的。

history 查詢使用過的命令 echo 打印的意思 $SHELL 查詢系統下的shell cat 查詢目錄文件
cat /etc/shells 查詢系統里面的shell

用 ll 命令可以查詢他的大小如:

linux入門第二課

我們學了很多命令那我們怎么知道那些命令是外部命令或內部命令呢? 那我們可以用 type 命令,比如我們看看 history linux入門第二課

如我們在實驗一下ifconfig

linux入門第二課

既然不是內部命令也就不是bash里面的,上面顯示的是一個程序,自己獨立出來了,既然獨立出來了,像這種就是外部命令。

也這樣理解內部命令用的比較頻繁,所以他干脆就集成在bash里面了,外部命令用的沒有內部命令多,所以就獨立出來了,因為他是個文件嘛,是我們裝系統的時候裝進入的,那我們裝系統的時候可以選擇不裝他啊,bash是基礎所以常用的基本上都會有,就像我們人的內臟一樣,不像衣服我們可以隨時換,一般來說系統裝的時候會裝一些常用工具,供我們使用。

每一個類型shell他們的內部命令有可能不同哦童鞋們注意哦,我們默認用的是dash哦,但是有些內部命令也有他們的共通性哦,內部命令依賴于shell類型。

那怎么切換到別的shell? 如: /bin/csh

切換csh

切換csh

ifconfig 是查看電腦ip的命令

那我們怎么知道有多少種內部命令,或多少個命令呢? 可以用help 來查詢 。

內部命令1

內部命令1

內部命令2

內部命令2

那help是內部還是外部?可以用 type來查詢

linux入門第二課

還有一個命令也可以列出所有的內部命令那就是 enable

enable

enable

那我們內部命令可以禁用不呢?可以 命令那就是 enable -n 同時他也可以 查看所有禁用的命令和可以禁用多個命令和可以啟用多個命令如:我們禁用echo

**在用help查詢的時候echo 開頭就會顯示一個*表示禁用**

**在用help查詢的時候echo 開頭就會顯示一個*表示禁用**

那我們 echo 命令還可以使用嗎來試

既然還可以使用,那是為什么

既然還可以使用,那是為什么

我們在來看為什么

既然成了外部命令,為什么呢

既然成了外部命令,為什么呢

那表示ehco 既有內部命令,又有外部命令,這就涉及到內部和外部命令的一個優先級的問題了,那誰優先級更高,那肯定是內部命令,內部命令優先于外部命令,那為什么內部命令優先于外部命令,因為開機的時候內部命令已經在內存里面了,內存速度比硬盤快,外部命令還在硬盤里,而且系統也是這樣分配的先用內存里面的命令,內部命令優先于外部命令。

那我們怎么啟用禁用的內部命令呢?如:enable echo 啟用ehco

啟用了我們試試,用help 來看

linux入門第二課

在來看上面*號沒有了

看他現在成了內部命令了

看他現在成了內部命令了

但是我們也可以用type -a來列出一個命令是否是外部還是內部命令如:echo

linux入門第二課

上面顯示出了echo又是外面也是內部命令。 那我們在試ifconfig

表示他只屬于外部命令

表示他只屬于外部命令

也可以用-p 來顯示路徑

linux入門第二課

如 history

history沒有外部命令所以他就不顯示路徑了

history沒有外部命令所以他就不顯示路徑了

如 pwd

pwd一樣

pwd一樣

**小命令時間** 用mesg  n 可以關閉廣播  y  可以打開廣播

外部命令

既然是外部命令他就存儲在硬盤某個路徑下。

每個外部命令所存儲的路徑都不同可以用 which他是專用來查看命令所在路徑,但是外部命令執行以后會緩存在內存里面,以后再執行這個命令就先執行這個命令,緩存他緩存的是路徑不是命令本身刪除原文件以后命令一樣不能執行。

linux入門第二課
**小命令時間**whereis 可以列出外部命令路徑和幫助文檔路徑

Hash緩存表

Hash緩存表就是在磁盤里面運行過的文件會把,文件的路徑緩存在里面,這樣會更快的下一次運行文件。

linux入門第二課

hash-l 會詳細的顯示

詳細顯示命令

詳細顯示命令

hash -p 起別名

linux入門第二課
linux入門第二課

hash -d 選擇性刪除緩存 linux入門第二課

hash -r 清空所有緩存

linux入門第二課

hash -t 顯示別名路徑

linux入門第二課

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

(0)
李林李林
上一篇 2017-05-20 15:11
下一篇 2017-05-20 21:12

相關推薦

  • 第三周作業

    1. 列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次則顯示一次即可。 who | cut -d' ' -f1 | sort -u 2. 取出最后登錄當前系統的用戶的相關信息 grep  "$(who …

    Linux干貨 2016-12-19
  • shell腳本編程2

    八、條件選擇if語句     注:if語句可嵌套     單分支         if 判斷條件;then        &nbs…

    Linux干貨 2016-08-22
  • Linux中的shell腳本編程——基礎篇

    概述:       shell腳本在Linux系統管理員的運維工作中非常重要。shell腳本能夠幫助我們很方便的管理服務器,因為我們可以指定一個任務計劃,定時的去執行某一個腳本以滿足我們的需求。本篇將從編程基礎、腳本基本格式、變量、運算、條件測試這幾個方面詳細介紹shell腳本編程的基礎內容,也是我們必須要掌握熟練的內容。 一、…

    Linux干貨 2016-08-15
  • CentOS6 網絡管理之網卡配置及簡單路由設置

    CentOS6中關于網絡配置的命令有很多,本文將介紹幾個平時最長用的幾個命令,以及網卡IP地址的配置和簡單路由配置。 1、經常使用的查看IP地址命令為 ifconfig,不跟參數的情況下默認查看所有已啟用的網卡信息,如下圖所示: 如果想查看具體某塊網卡信息,則可以在ifconfig后面跟上網卡設備,如只查看eth0的信息則執行:ifconfig eht0 即…

    Linux干貨 2016-09-05
  • 程序包管理:rpm , yum ,與編譯

    1.RPM,Redhat Package Manager。是Redhat和CentOS等Linux系統上常見的軟件安裝工具。 軟件安裝: 常見選項 -i                #install…

    Linux干貨 2016-03-26
  • DNS高級應用

        DNS高級應用     1、主從復制      應用場景: (1)、當主DNS服務器壓力過大,無法正常處理過多的DNS解析請求時,從DNS服務器可以起到負載均衡的作用。 (2)、當主DNS服務器出現故障時,從DNS服務器可以為其提供冗余備份功能。     實驗環…

    Linux干貨 2015-06-18
欧美性久久久久