日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux操作命令(四)

發(fā)布時(shí)間:2025/5/22 linux 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux操作命令(四) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
本次實(shí)驗(yàn)將介紹 Linux 命令中 which、whereis、locate 命令的用法。
  • ?which
  • whereis
  • locate

1.which

which命令的作用是,在PATH變量指定的路徑中搜索可執(zhí)行文件的所在唔知。它一般用來確認(rèn)系統(tǒng)中是否安裝了指定的軟件。

【命令格式】:which 可執(zhí)行文件名稱 【常用參數(shù)】: 【常用范例】: 1.確認(rèn)是否安裝了gcc which gcc

?

2.查看cd命令的位置路徑

which cd

?

從上面的顯示信息可以看到在實(shí)驗(yàn)樓的系統(tǒng)中 cd 是一個(gè) shell 函數(shù)。

再來在我本地 linux 系統(tǒng)上執(zhí)行 which cd 命令,顯示的結(jié)果如下:

?

顯示在 PATH 變量指定的路徑下沒有 cd 命令。為什么顯示沒有呢?這是因?yàn)?cd 是 shell 內(nèi)建命令,而 which 默認(rèn)是找 PATH 內(nèi)所指定的目錄,內(nèi)建命令不在其指定的目錄中,所以當(dāng)然一定找不到。

那么就有個(gè)問題,為什么實(shí)驗(yàn)樓環(huán)境中 cd 是一個(gè) shell 函數(shù),而其他 linux 環(huán)境中 cd 是內(nèi)建命令呢?這跟所使用的 bash 有關(guān)。

?

??

?

echo $SHELL 命令查看當(dāng)前使用的 shell。

  

補(bǔ)充知識

到底什么是命令?

命令可以是下面四種形式之一:

  • 是一個(gè)可執(zhí)行程序,就像我們所看到的位于目錄/usr/bin 中的文件一樣。 屬于這一類的程序,可以編譯成二進(jìn)制文件,諸如用 C 和 C++語言寫成的程序, 也可以是由腳本語言寫成的程序,比如說 shell,perl,python,ruby,等等。

  • 是一個(gè)內(nèi)建于 shell 自身的命令。bash 支持若干命令,內(nèi)部叫做 shell 內(nèi)部命令 (builtins)。例如,上面我本地環(huán)境中的 cd 命令,就是一個(gè) shell 內(nèi)部命令。

  • 是一個(gè) shell 函數(shù)。這些是小規(guī)模的 shell 腳本,它們混合到環(huán)境變量中。 比如上面講到的 cd 命令,在實(shí)驗(yàn)樓環(huán)境中就是一個(gè) shell 函數(shù)。

  • 是一個(gè)命令別名。我們可以定義自己的命令,建立在其它命令之上。


  • 3.whereis

    whereis命令主要用于定位可執(zhí)行文件、源代碼文件、幫助文件在文件系統(tǒng)中的位置。whereis命令還具有搜索源代碼、指定備用搜索路徑和搜索不尋常項(xiàng)的能力。

    ?

    whereis命令查找速度非常快,因?yàn)樗静皇窃诖疟P中漫無目的亂找。而是在一個(gè)數(shù)據(jù)庫中(var/lib/mlocatr)查詢。這個(gè)數(shù)據(jù)庫是Linux系統(tǒng)自動(dòng)創(chuàng)建的,包含有本地所有文件的信息,并且每天通過自動(dòng)執(zhí)行updatedb命令更新一次。也正是因?yàn)檫@個(gè)數(shù)據(jù)庫要每天才更新一次,就會(huì)使得whereis命令的搜索結(jié)果有時(shí)候會(huì)不準(zhǔn)確,比如剛剛添加的文件可能搜不到。

    ?

    【命令格式】:whereis [選項(xiàng)] 文件 【常用參數(shù)】: -b:定位可執(zhí)行文件-m:定位幫助文件-s:定位源代碼文件-u:默認(rèn)搜索路徑下除可執(zhí)行文件、源代碼文件、幫助文件以外的其他文件-B:指定搜索可執(zhí)行文件的路徑-M;指定搜索幫助文件的路徑-S:指定搜索源代碼文件的路徑

    ?

    【常用范例】: 1.搜索gcc可執(zhí)行文件的路徑 whereis -b gcc

    2.搜索gcc源代碼的路徑

    whereis -s gcc

    ?

    ?


    4.locate

    locate和whereis類似。且它們使用的是相同的數(shù)據(jù)庫。但whereis命令只能搜索可執(zhí)行文件、聯(lián)機(jī)幫助文件、源代碼文件,如果要獲得更全面的搜索結(jié)果,可以使用locate命令。

    locate命令使用了十分復(fù)雜的匹配語法,可以使特殊字元(如'*'和'?')來指定需要查找的樣本。

    【命令格式】:locate [選項(xiàng)] [搜索字符串] 【常用參數(shù)】: -q:安靜模式,不會(huì)顯示任何錯(cuò)誤訊息 -n:至多顯示n個(gè)輸出 -r:使用正規(guī)表達(dá)式做尋找的條件 -V:顯示版本訊息

    ?

    【常用范例】: 1.搜索etc目錄下所有以sh開頭的文件 locate /etc/sh

    注意在實(shí)驗(yàn)樓環(huán)境中一開始執(zhí)行這個(gè)命令會(huì)報(bào)錯(cuò):locate 無法執(zhí)行?stat() ‘/var/lib/mlocate/mlocate.db’:沒有那個(gè)文件或目錄。

    解決辦法是執(zhí)行sudo updatedb命令。

    ?

    2.搜索etc目錄下文件名包含lou的文件

    locate /etc/*lou*

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/Roni-i/p/10140968.html

    總結(jié)

    以上是生活随笔為你收集整理的Linux操作命令(四)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。