Linux常用指令學習筆記 01

2021-10-06 15:06:47 字數 4824 閱讀 5595

二、shell

三、linux系統基本命令

gnu相關概念

gnu=gnu』s not unix

gcc(gnu編譯器套件)

gnu的協議條款

命名形式:x.y.z

x是主版本號

y是輔助版本號,奇數為開發版本,偶數為穩定版本

z是核心修訂編號

1.linux的優勢:可靠性高、徹底的開放性、強大的網路功能。

sysvinit

sysvint的執行級別

linux系統的shell作為作業系統的外殼,為使用者提供使用作業系統的介面。它是命令語言、命令解釋程式及程式語言的統稱。
1. shell的分類

常見的有bourne again shell (簡稱bash)、bourne shell(簡稱sh)、c-shelll(簡稱csh)、korn shell(簡稱ksh)。

檢視當前使用的shell型別的指令——echo $shell,效果如下:

檢視當前主機包含哪些型別的shell——cat /etc/shells,效果如下:

shell命令的格式:$ command option arguments

命令列特徵:引號

反引號:``,反引號括起來的字串被shell解釋為命令列,在執行時,shell首先執行該命令,並以它的標準輸出結果取代整個反引號(包括兩個反引號)部分。

注釋符:#

其他

管道可以把一系列命令連線起來,這意味著第乙個命令的輸出會作為第二個命令的輸入通過管道傳給第二個命令,第二個命令的輸出又會作為第三個命令的輸入,以此類推。

我們通過管道符「|」來建立乙個管導行。

命令替換和重定向有些相似,但區別自傲與命令替換是將乙個命令的輸出作為另乙個命令的引數。常用命令格式為:

command1 `command2`

其中,command2的輸出將作為command1的引數。需要注意的是這裡的`符號,被它包括起來的內容將作為命令執行,執行後的結果作為command1的引數。例如

cd `pwd`

開啟終端——ctrl + alt +t

退出終端——exit

重啟計算機——reboot

關閉計算機——shutdown / halt

列出檔案列表(ls)-list

切換目錄(cd)-change directory

cd name 切換到當前目錄下的name子目錄

cd .. 切換到上一層目錄

cd / 切換到系統根目錄

cd ~ 切換到使用者主目錄

建立目錄(mkdir)

刪除目錄(rmdir)

複製檔案(cp) -v 顯示複製過程; -r 能同時複製目錄下的所有檔案及主目錄

刪除檔案或目錄(rm)

rm a.txt 刪除a.txt

rm * 刪除當前目錄下所有檔案

rm -f * 強制刪除所有檔案

rm -r * 輸出所有檔案(包含所有檔案以及所有子目錄及子目錄下的檔案)

讓顯示畫面暫停(more / less)

這兩條命令都是為了避免畫面顯示瞬間閃過去,讓畫面在顯示某一頁時暫停 (按q即可退出)

find /lib/modules/ -name *.ko | more

find /lib/modules/ -name *.ko | less

這兩者的區別:

more 沒法後退,如果只是向下翻行比較方便

空格:向下翻頁

回車:向下翻行

less 支援前後翻滾

pageup:向上翻頁

pagedown:向下翻頁

連線檔案(cat)

這條命令能顯示檔案的內容,或是將數個檔案合併成乙個檔案。經常和more 或less命令搭配使用,比如:

cat a.txt | more 逐頁顯示a.txt檔案內容

cat a.txt >> b.txt 將a.txt附加到b.txt檔案之後

cat a.txt b.txt > c.txt 將a.txt 和b.txt合併成c.txt

移動或更改檔案及目錄名稱的命令(mv)

顯示當前所在目錄命令(pwd)

查詢檔案的命令(locate)

搜尋字串的命令(grep)

用來檢視可執行檔案的位置命令(which)

新建檔案或是修改檔案的時間戳(touch)

比如:touch a.txt 新建乙個名為a.txt的檔案

touch -c a.txt 不新建檔案,僅更改a.txt的時間戳

touch -t 201401102234.50 a.txt 使用指定的時間戳,作為指定檔案相應時間戳的新值

資料流重導向(> >>)

linux系統下資料流重導向是指根據命令的輸出,並不列印在螢幕上,

而是直接輸入到其他裝置中(比如輸入到檔案中)

這在文字模式下非常重要,特別是如果想要將某些資料儲存下來時

比如:ls -l > a.txt 將ls -l的輸出結果寫入a.txt中,而不是顯示在螢幕上

>>和》的意思相同,如果只是使用》,假如a.txt已經存在,則將輸出結果追加到a.txt後面

比如:grep -rn 「c」 . 1> test1.txt 2> test2.txt 將標準輸出重定向到test1.txt,將標準錯誤重定向到test2.txt

管道符號(|)——左邊的輸出作為右邊的輸入

顯示目錄或檔案大小(du)

在指定路徑下查詢檔案(find)——用於在系統的特定目錄下,查詢具有某種特徵的檔案。比如:

find /tmp -name "a.txt"	查詢tmp目錄下所有的a.txt檔案

find

. -mtime -5 -print 查詢.目錄下更改時間在5天以內的檔案

find

. -size +1000000c -print 查詢.目錄下檔案長度大於1m的檔案

建立符號鏈結命令(ln)——不同目錄下使用相同的檔案時,不需要在每個需要的目錄下都存放相同的檔案,只需要在固定的目錄存放乙個,然後在其他目錄下用ln命令鏈結它就可以了。比如:ln -s /bin/less /usr/local/bin/less檔案比較命令(diff)——逐行比較兩個文字檔案,列出其中的不同之處。

linux打補丁的命令(patch )——patch命令是讓使用者利用設定補丁的方式,修改更新原始檔案。比如:patch -p0 < patch.diff 將剛生成的patch.diff為test1.txt打上補丁。字母p指的是路徑,後面的數字表示去掉路徑的第幾部分,數字0表示全路徑。

xargs 命令

xargs是給命令傳遞引數的過濾器,同時也是組合多個命令的工具。它能把某個資料流分割成很多足夠小的塊,從而方便過濾器和命令進行處理。

使用過多引數的命令替換失敗時,使用xargs來替換它通常都能成功。通常情況下,xargs從管道或者stdin中讀取資料。

比如:find . type f -print | xargs grep "host"在當前目錄下的所有普通檔案中搜尋「host」

sed這是乙個很好的檔案處理工具。它本身是乙個管道命令,主要以行為為單位進行處理,它可以將資料進行替換、刪除、新增、選取等特定工作。

比如:1. sed 命令列格式:

sed [-nefri] 'command'輸入文字

2. 刪除某行

sed '1d' test.txt刪除test.txt 的第一行

sed '$d' test.txt刪除test.txt 的最後一行

sed '1,2d' test.txt刪除test.txt的第一到第二行

3. 顯示某行

sed -n '1p' test.txt顯示 test.txt 第一行

sed -n '$p' test.txt顯示 test.txt 最後一行

sed -n '1,2p' test.txt顯示 test.txt 的第一到第二行

4. 增加一行

sed '1a my lover' test.txt在第一行後增加一行字串"my lover"

5. 代替一行

sed '1c replace one line' test.txt將第一行替換為「replace one line」

6. 替換一行中的某部分

sed -n '/test/p' test.txt | sed 's/test/good/g'將test替換為good

sed -n '/test/p' test.txt | sed 's/test//g'刪除test

Linux學習筆記 ,常用指令

man 命令或配置檔案 功能描述 獲得幫助資訊 help 命令 功能描述 獲得shell內建命令的幫助資訊 pwd 功能描述 顯示當前工作目錄的絕對路徑 ls 選項 目錄或是檔案 a 顯示當前目錄所有的檔案和目錄,包括隱藏的 檔名以.開頭就是隱藏 l 以列表的方式顯示資訊 h 顯示檔案大小時,以 k...

01 Linux常用指令

建立連線 ssh username ip address p port關閉連線 ctrl d 遠端複製檔案 scp r 資料夾 使用者名稱 ip address 路徑 scp r 檔名 使用者名稱 ip address 路徑 scp 使用者名稱 ip 檔名 儲存路徑 操作資料夾加上 r引數 scp ...

linux常用指令學習

pwd 當前所在路徑 cd 開啟檔案,cd 開啟上級目錄 mkdir 新建資料夾,mkdir test ls 當前路徑下的檔案和資料夾 touch 建立新的檔案,touch test file mv 把檔案從當前路徑剪下到另乙個路徑,mv test file home lulu cp 把檔案拷貝到另...