一些Linux有用的操作命令記錄

2021-06-08 04:07:10 字數 4470 閱讀 3268

一些linux有用的操作命令記錄

1. 檢視linux版本:

cat /proc/version 

2. 檢視軟體安裝路徑:

whereis softwarename

3. 刪除/複製資料夾:

刪除資料夾: rm -rf [folderdir]

複製資料夾: cp -rf [srcdir] [dstdir]

-r 若 source 中含有目錄名,則將目錄下之檔案亦皆依序拷貝至目的地。

-f 若目的地已經有相同檔名的檔案存在,則在複製前先予以刪除再行複製。

4.gzip,bzip2,tar,zip命令使用方法詳解

1. gzip

gzip是gnu的壓縮程式。它只對單個檔案進行壓縮。基本用法如下:

$ gzip filename

程式執行以後,檔名會變成filename.gz,而且一般情況下大小會比原檔案要小。注意,程式並不新建乙個新的檔案filename.gz, 而是將filename變成filename.gz。這個基本用法考慮了壓縮時間和壓縮後檔案尺寸的平衡問題(注:如果要使壓縮後的檔案更小,就需要用到更多的時間)。要得到最小檔案大小(最大壓縮),可以使用如下用法:

$ gzip -9 filename

這樣就可以得到gzip能夠壓縮的最小檔案尺寸,但是需要更長的壓縮時間。上面的數字越小,壓縮就越快,相反壓縮率也就越小。

將gzip壓縮的檔案解壓縮,有兩個命令可以使用,但實際上它們是同乙個程式。gzip程式可以識別的壓縮檔案的字尾名包括:.gz, -gz, .z, -z, .z 和 -z。

可以使用的命令是:

$ gunzip filename.gz

或 $ gzip -d filename.gz

使用上面的命令後,filename.gz會被解壓縮並去掉字尾名.gz變成filename。

2. bzip2

bzip2是 slackware linux裡面壓縮程式的另乙個選擇。它的壓縮演算法不同於gzip。與gzip相比,bzip2的主要優點在於它壓縮後檔案的尺寸,對於相同檔案,bzip2 壓縮後的尺寸幾乎總是小於gzip的壓縮結果。有些時候,這個差距會相當大。bzip2的缺點在於,它占用的cpu的使用率和壓縮時間會比gzip更多。

bzip2的使用方法和gzip是一樣的,但bzip2使用字尾名.bz2.

$ bzip2 filename

$ bunzip2 filename.bz2

$ bzip2 -d filename.bz2

$ bzip2 -9 filename

-c :將壓縮的過程產生的資料輸出到螢幕上。

例如:將檔案 man.config 用最佳的壓縮比壓縮,並保留原本的檔案

[root@linux tmp]# bzip2 -9 -c man.config > man.config.bz2

bzcat

讀取bz檔案中的內容,並顯示到螢幕上,bz檔案還存在。比如:

bzcat filename.bz2

3. tar

tar是乙個gnu的磁帶歸檔程式。它可以將幾個檔案或者目錄打包壓縮成乙個檔案。這個特點讓我們可以壓縮整個目錄樹,而單使用gzip和 bzip2是無法做到的。

a.tar.gz是先把一些檔案用tar打包,然後在用gzip壓縮。

a.tar.bz2是先將一些檔案用tar打包,然後再用bzip2壓縮。

tar檔案解包:

$ tar xzvf filename.tar.gz 

或$ tar -xvzf filename.tar.gz

$ tar xjvf filename.tar.bz2 

或$ tar -xvjf filename.tar.bz2

-x表示提取檔案。它告訴tar將打包的檔案分離還原成打包前的狀態。

-v即verbose,表示詳細細節。加入這個引數讓程式將解包出來的每乙個檔案列出來。

-z是告訴tar先執行gunzip將檔案解壓縮。

-j是告訴tar先執行bunzip將檔案解壓縮。

-f是指定tar處理的檔名

這裡需要注意的是,tar會把解包的檔案放到當前目錄。所以如果要把乙個放在/tmp目錄檔案解壓縮到你的家目錄的話,這裡有一些做法可供選擇:

選擇一,把檔案拷貝到家目錄,然後解包

$ cd $home

$ cp /tmp/filename.tar.gz .

$ tar -xvzf filename.tar.gz

選擇二,指定需要解包檔案的路徑

$ cd $home

$ tar -xvzf /tmp/finename.tar.gz

選擇三,用-c 引數指定解包後存放檔案的路徑

$ cd /

$ tar -xvzf /tmp/filename.tar.gz -c $home

tar檔案打包:

$ tar -czvf filename.tar.gz .

$ tar -cjvf filename.tar.bz2 ./src/

-c是告訴tar來建立乙個打包檔案

-z是將打包的檔案通過gzip程式進行壓縮。

-j是將打包的檔案通過bzip2程式進行壓縮。

-f是指定tar處理的檔名。

filename.tar.gz 是你將要建立的檔名。

命令列最後的"."或"./src/"是指定tar打包的目錄,包括目錄和目錄下所有檔案/資料夾。

4. zip

zip檔案的壓縮程式叫做zip,解壓縮程式叫做unzip。 linux支援該命令。

$ zip foo *

這行命令會建立乙個包涵當前目錄所有檔案的的zip檔案 foo.zip,zip會自動將.zip字尾名加上。

加上引數-r使zip將當前目錄下的所有資料夾目錄也加在zip檔案中:

$ zip -r foo *

解壓縮檔案:

$ unzip foo.zip

這樣會解壓縮foo.zip裡面的所有檔案和資料夾。

參考:5. linux 鏈結的使用

1. 使用方式 :ln [option] source_file dist_file 

-f 建立時,將同檔名刪除. 

-i 刪除前進行詢問. 

ln -s abc cde 建立abc 的軟連線 

ln abc cde 建立abc的硬連線

2. 軟鏈結與硬鏈結的區別(通俗): 

硬鏈結可認為是乙個檔案擁有兩個檔名;而軟鏈結則是

系統新建乙個鏈結檔案,此檔案指向其所要指的檔案

3. 軟鏈結與硬鏈結的區別(講解): 

linux 軟連線與硬連線

對於乙個檔案來說,有唯一的索引接點與之對應,而對於乙個索引接點號,卻可以有多個檔名與之對應。因此,在磁碟上的同乙個檔案可以通過不同的路徑去訪問該檔案。注意在linux下是一切皆檔案的啊,資料夾、新加的硬碟 ...都可以看著檔案來處理的啊。

連線有軟連線和硬連線(hard link)之分的,軟連線(symbolic link)又叫符號連線。符號連線相當於windows下的快捷方式。

不可以對資料夾建立硬連線的,我們通常用的還是軟連線比較多。     

eg:ln -s source dist        # 建立軟連線

ln source dist            # 建立硬連線

軟鏈結實際上只是一段文字,裡面包含著它所指向的檔案的名字,系統看到軟鏈結後自動跳到對應的檔案位置處進行處理;相反,硬聯接為檔案開設乙個新的目錄 項,硬鏈結與檔案原有的名字是平權的,在linux看來它們是等價的。由於這個原因,硬鏈結不能連線兩個不同檔案系統上的檔案。

(1)軟連線可以 跨檔案系統 ,硬連線不可以 。實踐的方法就是用共享檔案把windows下的 aa.txt文字文件連線到linux下/root目錄 下 bb,cc . ln -s aa.txt /root/bb 連線成功 。ln aa.txt /root/bb 失敗 。

(2)關於 i節點的問題 。硬連線不管有多少個,都指向的是同乙個i節點,會把 結點連線數增加,只要結點的連線數不是 0,檔案就一直存在,不管你刪除的是原始檔還是 連線的檔案 。只要有乙個存在 ,檔案就 存在 (其實也不分什麼原始檔連線檔案的 ,因為他們指向都是同乙個 i節點)。 當你修改原始檔或者連線檔案任何乙個的時候 ,其他的檔案都會做同步的修改。軟鏈結不直接使用i節點號作為檔案指標,而是使用檔案路徑名作為指標。所以 刪除連線檔案 對原始檔無影響,但是刪除原始檔,連線檔案就會找不到要指向的檔案 。軟鏈結有自己的inode,並在磁碟上有一小片空間存放路徑名.

(3)軟連線可以對乙個不存在的檔名進行連線 。

(4)軟連線可以對目錄進行連線。

4. 刪除鏈結

unlink file_or_folder_name

參考:linux常用命令參考表:

linux一些有用的命令

查詢 find name cpp o name h find name d exec rm fr 在vi中替換 s str1 str2 g 當前行所有str2 替換 str1 1,s str1 str2 g 1,表示從第一行到最後一行。用str2 替換 str1 檢視磁碟資訊 df du sh 某一...

記一些linux命令

1 備份並刪除原始檔 sudo cp etc apt sources.list etc apt sources.list.bak rm etc apt sources.list 2 插入阿里源 echo deb focal main restricted universe multiverse et...

linux 一些有用的命令之PS

linux上程序有5種狀態 執行 正在執行或在執行佇列中等待 中斷 休眠中,受阻,在等待某個條件的形成或接受到訊號 不可中斷 收到訊號不喚醒和不可執行,程序必須等待直到有中斷發生 僵死 程序已終止,但程序描述符存在,直到父程序呼叫wait4 系統呼叫後釋放 停止 程序收到sigstop,sigtst...