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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第一章_常用命令

發布時間:2023/12/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第一章_常用命令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 第一章:Linux命令介紹及Linux常用命令
  • 常用按鍵
      • Tab鍵
      • Ctrl+c 1
      • Ctrl+d
      • Shift+Page Up/Page Down
  • 幫助文檔命令
      • help參數
      • man命令
        • man page詳解
        • 基礎信息
        • NAME
        • SYNOPSIS
        • DESCRIPTION
        • COMMANDS
        • FILES
        • SEE ALSO
        • EXAMPLE
        • 如何查看man page
          • 瀏覽步驟
          • 特殊操作
      • info命令
        • info命令的用法
        • page head
        • page tail
        • info page的用法
  • 常用的系統工作命令
      • echo命令
      • date命令
      • reboot命令
      • poweroff命令
      • wget命令
      • ps命令
      • top命令
      • pidof命令
      • kill命令
      • killall命令
  • 系統狀態監測
      • ifconfig命令
      • uname命令
      • uptime命令
      • free命令
      • who命令
      • last命令
      • history命令
      • sosreport命令
  • 工作目錄切換命令
      • pwd命令
      • cd命令
      • ls命令
    • 文件編輯命令
      • cat命令
      • more命令
      • head命令
      • tail命令
      • tr命令
      • wc命令
      • stat命令
      • cut命令
      • diff命令
  • 文件目錄管理命令
      • touch命令
      • mkdir命令
      • cp命令
      • mv命令
      • rm命令
      • dd命令
      • file命令
  • 打包與壓縮命令
      • tar命令
      • grep命令
      • find命令

第一章:Linux命令介紹及Linux常用命令

在開始系統學習Linux之前,必須要先了解Linux的命令以及一些具體的常用命令,否則入門都無從說起.

常見的執行Linux命令的格式如下

命令名稱 [命令參數] [命令對象]

其中: 命令參數是要執行的功能選擇,命令對象是指要處理的文件,目錄,用戶等資源
命令參數可以輸入全稱,也可以輸出縮寫,例如輸入: --help或-h
[]表示可以選擇,真正輸入時候不加括號
當有多個需要命令對象的命令參數時,要一一對應并且命令對象緊跟在命令參數后面,例如

wget -t 3 -P LinuxProbe http://www.linuxprobe.com/docs/Linuxprobe.pdf

表示最大嘗試下載3次,將http://www.linuxprobe.com/docs/Linuxprobe.pdf中的內容下載到指定的LinuxProbe文件夾中

本章包含以下內容:

  • 常用的按鍵
  • 幫助文檔命令
  • 常用系統工作命令
  • 系統狀態檢測命令
  • 工作目錄切換命令
  • 文本文件編輯命令
  • 文件目錄管理命令
  • 打包壓縮與搜索命令

常用按鍵

Tab鍵

[tab] 補全命令或文件(當前文件或命令只有一個時)
[tab][tab] 羅列所有可能的文件或命令(當前文件或命令不唯一時)

例如:

假設有三個命令:roscore, rosrun, rostry

輸入rosc之后按[tab]即可補全為roscore

輸入ros后按[Tab]沒有反應,按[Tab][Tab]顯示三個可能的命令

Ctrl+c 1

[Ctrl]+[c] 終止當前運行的程序

Ctrl+d

[Ctrl]+[d] 關閉當前終端

Shift+Page Up/Page Down

[Shift]+[Page Up] 向上翻頁

[Shift]+[Page Down] 向下翻頁

幫助文檔命令

隨著Linux逐漸的發展壯大,Linux中的各種命令肯定是越來越多的,而每個命令都可能會有命令參數還有命令對象,因此將所有命令及對應的參數和對象記下來是不可能的.

對此Linux中有幫助文檔命令,幫助我們調出某一命令的說明文檔,在說明文檔中我們就可以學習了解命令的具體使用規則

Linux的調出說明文檔的方法具體有三種:

  • help參數
  • info命令
  • man命令

help參數

Linux中的命令通常是以腳本的形式寫成的,因此一般都會配備相應的說明文檔.
因此我們對某一個命令使用help參數,就可以調出相應的說明文檔
語法:

命令名稱 -h/--help

例如:
查詢date命令的用法

date --help

不過需要注意的是:
使用help參數查詢用法的時候,命令是知道拼寫的

man命令

man是manul(說明手冊)的縮寫,man命令查到的說明文檔相比于help參數查詢到的更加詳細,甚至會包括該命令的作者,乃至于與該命令相關的其他命令.

語法:

man 命令名稱

實例:
查詢date命令的詳細說明

man date

輸入代碼之后,就會彈出date這個代碼的相關內容的界面(打印在屏幕上),叫做man page,十分的詳盡.

整個man page分為好幾個部分,會有點難看懂,下面解釋man page的每個部分和相關代號表示的含義以及如何操作.

man page詳解

date的man page頁面如下:

[ wangsh ]~ $ man date DATE(1) User Commands DATE(1) # 請注意上面這個括號內的數字 NAME <==這個命令的完整全名,如下所示為date且說明簡單用途為配置與顯示日期/時間 date - print or set the system date and time SYNOPSIS <==這個命令的基本語法如下所示 date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] DESCRIPTION <==詳細說明剛剛語法談到的選項與參數的用法 Display the current time in the given FORMAT, or set the system date. -d, --date=STRING <==左邊-d為短選項名稱,右邊--date為完整選項名稱 display time described by STRING, not 'now' -f, --file=DATEFILE like --date once for each line of DATEFILE -r, --reference=FILE display the last modification time of FILE ....(中間省略).... # 找到了!底下就是格式化輸出的詳細數據! FORMAT controls the output. The only valid option for the second form specifies Coordinated Universal Time. Interpreted sequences are: %% a literal % %a locale's abbreviated weekday name (e.g., Sun) %A locale's full weekday name (e.g., Sunday) ....(中間省略).... ENVIRONMENT <==與這個命令相關的環境參數有如下的說明 TZ Specifies the timezone, unless overridden by command line parameters. If neither is specified, the setting from /etc/localtime is used. AUTHOR <==這個命令的作者啦! Written by David MacKenzie. REPORTING BUGS <==有問題請留言給底下的email的意思! Report bugs to <bug-coreutils@gnu.org>. COPYRIGHT <==受到著作權法的保護!用的就是 GPL 了! Copyright ? 2006 Free Software Foundation, Inc. This is free software. You may redistribute copies of it under the terms of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the extent permitted by law. SEE ALSO <==這個重要,你還可以從哪里查到與date相關的說明文件之意 The full documentation for date is maintained as a Texinfo manual. If the info and date programs are properly installed at your site, the command info date should give you access to the complete manual. date 5.97 Nov 2019 DATE(1)

下面將分塊介紹整個man page的每一個部分是什么意思

基礎信息

DATE(1) User Commands DATE(1)
  • date是命令的全稱
  • 數字(如這里的(1))表明查詢內容的屬性

具體數字代表的含義見下表:

數字含義
1用戶在shell環境中可以操作的命令或可執行文件
2系統內核可調用的函數與工具
3一些常用的函數(function)與函數庫(library),大部分為c語言庫(libc)
4設備文件的說明,通常是在/dev下的文件
5配置文件或是某些文件的格式
6游戲(games)
7慣例與協議等,例如linux文件系統,網絡協議,ASCII代碼等說明
8系統管理員可用的管理命令
9跟內核有關的文件

注意:

  • 加粗的比較重要

  • 其實man也是一個命令,所以他也具有自己對應的man page ,查詢時候直接輸入man man即可

NAME

NAME <==這個命令的完整全名,如下所示為date且說明簡單用途為配置與顯示日期/時間 date - print or set the system date and time
  • Name這里表示命令的完整全名,并且給出相應的簡短說明

SYNOPSIS

SYNOPSIS <==這個命令的基本語法如下所示 date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
  • SYNOPSIS這里表示命令的語法(syntax)的簡介

DESCRIPTION

DESCRIPTION <==詳細說明剛剛語法談到的選項與參數的用法 Display the current time in the given FORMAT, or set the system date. -d, --date=STRING <==左邊-d為短選項名稱,右邊--date為完整選項名稱 display time described by STRING, not 'now' -f, --file=DATEFILE like --date once for each line of DATEFILE -r, --reference=FILE display the last modification time of FILE ....(中間省略).... # 找到了!底下就是格式化輸出的詳細數據! FORMAT controls the output. The only valid option for the second form specifies Coordinated Universal Time. Interpreted sequences are: %% a literal % %a locale's abbreviated weekday name (e.g., Sun) %A locale's full weekday name (e.g., Sunday) ....(中間省略)....
  • 這個部分首先給出了這個命令的詳細介紹

  • 然后給出了針對前面語法中給出的選項與參數進行說明

COMMANDS

這個部分給出了當程序(軟件)正在之行時候,可以在這個程序(軟件)中執行的命令

注:

  • date命令的man page并沒有這一部分

FILES

這個程序或者數據所使用的或參考或鏈接到的文件

SEE ALSO

SEE ALSO <==這個重要,你還可以從哪里查到與date相關的說明文件之意 The full documentation for date is maintained as a Texinfo manual. If the info and date programs are properly installed at your site, the command info date should give you access to the complete manual.
  • 這里給出和這個命令或數據相關的其他說明

EXAMPLE

example里面會給出命令的一些實例,這里沒有給出

如何查看man page

瀏覽步驟
  • 先NAME
  • 再DESCRIPTION
  • 然后是OPTION
  • 初學者多看看EXAMPLE
  • 有能力了看看FILES
  • 特殊操作
    按鍵說明
    Space向下翻一頁
    Page Down向下翻一頁
    Page Up向上翻一頁
    Home回到第一頁
    End跳轉到最后一頁
    /String從當前頁面向下查找關鍵詞
    ?String從當前頁面想上尋找關鍵詞
    n,N在查找關鍵詞時候,n是到下一個關鍵詞出,N是到上一個關鍵詞處
    q退出當前命令或者文件的man page

    info命令

    在所有的基于Unix的系統中,都有man命令這樣的查詢方式,但是在Linux系統中,又提供了另外一種查詢方式,就是info命令.

    通過man命令打印出來的內容稱為man page,那么通過info命令打印出來的稱為info page.

    info page其實在內容上與man page 差不多.但是和man page相比info page結構更加清晰,內容能夠更好地被展現出來.

    info page是將所有的內容拆成一個一個的段落,每個段落都有自己獨立的page,不同的page之間用類似于網頁的跳轉的方式進行連接

    不過需要注意的是支持info命令的說明文件首先必須以info格式寫成才能夠使用info的特殊功能.

    其次支持info命令的文件必須放在/user/share/info/這個目錄下面.

    下面將介紹info 的用法

    info命令的用法

    和man類似

    info 查詢的命令

    下面介紹info page中的具體內容

    page head

    首先info page的頭部包含了許多重要信息

    [ wangsh ]~$ info info File:info.info, Node: Top, Next:Getting Started, Up: (dir) Info:An instruction ****************** 略
    • File:表明當前page的位置
    • Node:表示當前界面所在整個info文件中的位置,這里是Top節點,也就是最前面的節點
    • Next:表示下一個節點的名稱,這里是Getting Started
    • Up:回到上一層的節點總覽畫面,就是查看與當前節點同級的所有節點
    • Prv:前一個節點,但是由于這里是Top節點,沒有上一個節點,所以沒有顯示

    page tail

    頁面尾的地方通常表示的是當前節點的下一級節點(沒錯,整個info文件類似于樹)

    Menu: Getting Started: Advanced: Expert Info: Index:

    info page的用法

    按鍵什么與man page一模一樣,但是不知道怎么用info的時候,可以按下h(help)來查看按鍵的作用

    后面的命令指示簡單的提一下,更多的使用幫助命令去查閱

    常用的系統工作命令

    對于新手來說,在使用linux系統的時候,如果遇到了問題,在網上查到了解決辦法,可是卻完全看不懂,這個時候就很頭疼了.

    其實這些解決問題的命令往往都是系統工作命令,下面就將講解

    echo命令

    echo命令用于在終端輸出字符串或變量提取后的值.

    語法:

    echo [字符串] 或 echo [$變量]

    例如:
    輸出字符串Jack Wang

    echo Jack Wang

    提取變量SHELL的值輸出

    echo $SHELL

    date命令

    date命令用于顯示及設置系統時間和日期

    語法:

    date [命令參數] [指定格式]

    當指定格式(命令對象)以==加號+==開頭時,將按照指定的格式輸出當前時間

    一些常用參數如下:

    參數作用
    %t制表符[Tab鍵]
    %H24小時( 00 ~ 23 )
    %I12小時( 00 ~ 12 )
    %M分鐘( 00 ~ 59 )
    %S秒( 00 ~ 59 )
    %j當前年份的第幾日

    例如:
    按照默認格式顯示當前時間

    date

    按照"年-月-日 小時:分鐘:秒"的格式查看當前系統時間

    date "+%Y-%m-%d%t%H:%M:%S""

    查看當前日期是當前年份的第幾日

    date "+%j"

    設置系統日期

    date -s "20200416 8:30:00"
    • 將當前時間設置為2020年4月16日8點30分

    reboot命令

    reboot命令用于重啟計算機

    由于涉及到硬件資源管理,因此需要root用戶來使用

    poweroff命令

    poweroff命令用于關閉計算機

    和reboot一樣,也涉及到了硬件資源管理,需要root權限

    wget命令

    wget命令用于在終端中下載網絡文件

    語法:

    wget [參數] [下載地址]

    常用的參數如下:

    參數作用
    -b后臺下載模式
    -P下載到指定目錄
    -t最大嘗試次數
    -c斷點續傳
    -p下載頁面所有資源,包括圖片,視頻等
    -r遞歸下載

    例如:
    下載http://www.linuxprobe.com/docs/LinuxProbe.pdf這一地址中的Linux教學文件

    wget -P LinuxProbe http:www.linuxprobe.com/docs/LinuxProbe.pdf >>>將會把下載下來的文件存放到命名為LinuxProbe的文件夾下(沒有的話會新創建)

    下載http://www.linuxprobe.com的所有數據

    wget -r -p http://www.linuxprobe.com >>>將會把所有內容保存到當前工作目錄下一個名為www.linuxprobe.com的目錄中

    ps命令

    ps命令用于查看系統中的進程狀態

    語法:

    ps [參數]

    一般會配合管道符技術(在后面講解)來查找特定的進程的pid

    常用的參數如下:

    參數作用
    -a顯示所有進程(包括其他用戶的進程)
    -u用戶以及其他詳細信息
    -x顯示沒有控制終端的進程

    Linux中時刻都運行著許多進程,合理的管理他們能夠優化系統性能.Linux系統中有5種常見的進程狀態,分別為: 運行,中斷,不可中斷,僵死,停止

    • R :Running,運行中,進程正在運行或者在運行隊列中等待
    • S :Stop,中斷,進程處于休眠中,當某個條件形成或者接收到信號時,脫離該狀態
    • D :不可中斷,進程不響應系統異步信號,即使使用kill命令也不能將其中斷
    • Z :Zombie,僵死,進程已經終止,但是進程描述符依然存在,知道父進程調用wait4()系統函數后將進程釋放
    • T :進程收到停止信號后停止運行

    例如:

    ps -au

    得到結果如下

    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 3979 0.1 2.3 203224 43204 tty1 Ss+ 06:53 0:05 /usr/bin/Xorg root 4715 0.0 0.1 116256 3044 pts/0 Ss 06:54 0:00 /bin/bash root 32917 0.0 0.0 123356 1376 pts/0 R+ 07:54 0:00 ps -au

    其中每欄的含義如下

    名稱含義
    USER進程所有者
    PID進程ID號
    %CPUCPU占用率
    %MEM內存占用率
    VSZ虛擬內存使用量(單位是KB)
    RSS占用的固定內存量(單位是KB)
    TTY所在終端
    STAT進程狀態
    START被啟動的時間
    TIME實際使用CPU時間
    COMMAND命令名稱與參數

    top命令

    top命令用于動態地見識進程活動與系統負載等信息

    語法:

    top

    使用top命令后,將會看到下面的界面

    top - 08:10:18 up 1:26, 2 users, load average: 0.40, 0.15, 0.08 Tasks: 477 total, 3 running, 474 sleeping, 0 stopped, 0 zombie %Cpu(s): 33.9 us, 1.3 sy, 0.0 ni, 64.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem: 1870760 total, 1327452 used, 543308 free, 1080 buffers KiB Swap: 2097148 total, 0 used, 2097148 free. 482864 cached MemPID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4359 root 20 0 1676796 327100 38576 S 32.6 17.5 2:16.75 gnome-shell 3979 root 20 0 203224 43204 7916 S 2.3 2.3 0:08.50 Xorg 4706 root 20 0 771500 18860 12408 S 0.7 1.0 0:01.06 gnome-term+ 1 root 20 0 52840 6724 3756 S 0.0 0.4 0:01.51 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.02 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.01 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:+ 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0

    前五行命令如下:

  • 系統時間,運行時間,登錄終端數,1分鐘系統負載平均數,5分鐘系統平均負載,15分鐘系統平均負載
  • 進程總數,運行中進程數,睡眠中進程數,停止的進程數,僵死的進程數
  • 用戶占用資源百分比,系統內核占用資源百分比,改變過優先級的進程資源百分比,空閑的資源百分比
  • 物理內存總量,內存使用量,內存空限量,作為內核緩存的內存量
  • 虛擬內存總量,虛擬內存使用量,虛擬內存空限量,已被提前加載的內存量
  • pidof命令

    pidof命令用于查詢某個指定服務的PID值

    語法:

    pidof [參數] [服務名稱]

    例如:
    查詢sshd服務程序的PID

    pidof sshd

    kill命令

    kill命令用于終止某個指定PID的服務進程

    通常是用pidof查出服務的pid號碼,然后用kill命令結束進程

    語法:

    kill [參數] [進程PID]

    killall命令

    killall命令用于終止某個指定名稱的服務所對應的全部進程

    往往復雜軟件的服務程序會有多個進程協同為用戶提供服務,使用killall能結束所有的進程

    語法:

    killall [參數] [進程名稱]

    系統狀態監測

    Linux系統作為服務器,我們需要具備快速查看Linux系統運行狀態的能力
    下面將講解與網卡網絡,系統內核,系統負載,內存使用情況,當前啟動終端數量,歷史登錄記錄,命令執行記錄及救援診斷等相關命令的使用方法

    ifconfig命令

    ifconfig命令用于獲取網卡配置與網絡狀態等信息

    語法:

    ifconfig [網絡設備] [參數]

    需要注意的是,Ubuntu中ifconfig命令并非安裝時自帶的,需要下載net-tools組件

    單純使用ifconfig命令查看本機當前的網卡配置與網絡狀態等信息,其實主要看的就是網卡名稱,inet參數后面的IP地址,ether參數后面的網卡物理地址(又稱為MAC地址),以及RX,TX的接收數據包與發送數據包的個數和累計流量

    eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.218.128 netmask 255.255.255.0 broadcast 192.168.218.255inet6 fe80::20c:29ff:fef3:b4e6 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:f3:b4:e6 txqueuelen 1000 (Ethernet)RX packets 445 bytes 38554 (37.6 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 1418 bytes 103785 (101.3 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>loop txqueuelen 0 (Local Loopback)RX packets 525 bytes 52048 (50.8 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 525 bytes 52048 (50.8 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

    uname命令

    uname命令用于查看系統內核與系統版本等信息

    語法:

    uname [參數]

    如果要查看系統內核與系統版本等信息,語法為

    uname -a

    uptime命令

    uptime命令用于查看系統的負載信息

    顯示當前系統時間,系統已運行時間,啟動終端數量以及平均負載值(1分鐘,5分鐘,15分鐘)等信息

    語法:

    uptime

    得到的結果如下

    08:50:50 up 2:07, 2 users, load average: 0.08, 0.07, 0.06

    free命令

    free命令用于顯示當前系統中內存的使用量信息

    語法:

    free [選項]

    通常為了更人性化的查看會加上==-h==參數(自動轉換單位)

    查看當前系統中的內存使用量:

    free -h

    得到結果如下:

    total used free shared buffers cached Mem: 1.8G 1.3G 516M 10M 1.1M 471M -/+ buffers/cache: 837M 989M Swap: 2.0G 0B 2.0G

    其中:

    • total:內存總量
    • used:已用量
    • free:可用量
    • shared:進程共享的內存量
    • buffers:磁盤緩存的內存量
    • cached:緩存的內存量

    who命令

    who命令用于查看當前登錄主機的用戶終端信息

    語法:

    who [參數]

    直接使用who得到的結果如下

    root :0 2020-06-28 06:54 (:0) root pts/0 2020-06-28 06:54 (:0)=

    其中:

    • 第一列為登錄的用戶名
    • 第二列為登錄的終端設備
    • 第三列為登錄到系統的時間

    last命令

    last命令用于查看所有系統的登錄記錄

    語法:

    last 參數

    得到的結果和who命令的結果類似

    history命令

    history命令用于顯示歷史執行過的前1000條命令

    如果覺得不夠,可以在/etc/profile文件中修改HISTSIZE變量值

    語法:

    history [參數]

    可以使用==-c==參數來清除歷史記錄

    sosreport命令

    sosreport命令用于手機系統配置及架構信息并輸出診斷文檔

    語法:

    sosreport

    和ifconfig一樣sosreport命令Ubuntu中不是自帶的,需要下載sosreport`

    工作目錄切換命令

    工作目錄是指用戶在當前系統中所處的位置
    由于工作目錄牽涉系統儲存結構相關的只是,因此在后面詳細講解.這里只是介紹下使用

    pwd命令

    pwd命令用于顯示用戶當前所處的工作目錄

    語法:

    pwd

    cd命令

    cd命令用于切換工作命令

    語法:

    cd 目錄名稱

    常用的用法:

    cd ~ //返回當前用戶的家目錄 cd.. //進入上級目錄 cd ~username //進入其他用戶的家目錄 cd - //返回上一次所處的目錄

    ls命令

    ls命令用于輸出當前目錄下的文件信息

    語法:

    ls 選項 文件

    文件編輯命令

    Linux系統中==“萬物皆文件”==,因此我們必不可少的需要對文本進行編輯

    下面就將講解文件編輯命令

    cat命令

    cat命令用于查看純文本文件(內容較少時候)

    語法:

    cat [選項] [文件]

    使用==-n==選項顯示行號

    more命令

    more命令用于查看純文本文件(內容較多的)

    使用more可以查看當前閱讀百分比和空格/回車向下翻頁

    語法:

    more [選項] [文件]

    head命令

    head命令由于查看純文本文檔的前n行

    具體使用就是使用==-n==參數指定看的行數

    語法

    head [選項] [文件]

    tail命令

    tail命令用于查看純文本文檔的后n行

    同樣也是加上==-n==參數指定看的行數

    可以使用-f參數來持續刷新文件

    語法:

    tail [選項] [文件]

    tr命令

    tr命令由于替換文本中的字符

    語法:

    tr [原始字符] [目的字符]

    一般和管道符結合起來進行快速修改

    wc命令

    wc用于統計指定文本的行數,字數,字節數

    語法:

    wc 參數 文本

    得到的結果分別是查詢文件的行數,字數和字節數

    stat命令

    stat命令用于查看文件的具體存儲信息和時間等信息

    語法:

    stat 文件名稱

    使用stat查看當下文件中的profile文件

    [root@Jack-linuxprobe Desktop]# stat profileFile: ‘profile’Size: 1750 Blocks: 8 IO Block: 4096 regular file Device: fd01h/64769d Inode: 102579774 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Context: unconfined_u:object_r:admin_home_t:s0 Access: 2020-06-28 09:30:16.847868217 -0400 Modify: 2020-06-28 09:30:08.916869121 -0400 Change: 2020-06-28 09:30:08.916869121 -0400Birth: -

    可以看到profile文件具有三種狀態: Access,Modify,Change

    這三種狀態在后面的touch命令講解中將會講到

    cut命令

    cut命令用于按列提取文本字符

    語法:

    cut 參數 文本

    diff命令

    diff命令多用于比較多個文本文件的差異

    語法:

    diff [參數] [文件]

    如果要比較兩個文本是否一樣,可以使用–brief參數

    如果兩個文件內容一樣,則不會產生任何信息

    如果文件不一樣,那么就用==-c==參數來描述文件內容的具體不同

    多出的內容會在這一行前面有加號,不同的內容會在這一行前面有嘆號

    文件目錄管理命令

    前面的講解更像是在打地基.在日常的linux運維中好需要掌握對文件的創建,修改,復制,剪切,更名與刪除等操作

    下面就將講解linux中的文件目錄管理命令

    touch命令

    touch命令用于創建空白文件或者設置文件時間

    語法:

    touch [選項] [文件]

    使用touch創建空白文件很簡單,不加選項直接后面加文件名即可,所以問題關鍵在于使用touch參數修改文件時間

    touch的參數如下

    參數作用
    -a僅修改讀取時間(atime)
    -m僅修改修改時間(mtime)
    -d同時修改atime和mtime

    所以我們可以先用ls查看一個文件修改時間然后修改這個文件,最后通過touch再改回修改之前的時間

    mkdir命令

    mkdir命令用于創建空白目錄

    語法:

    mkdir 選項 目錄

    可以使用-p選項來遞歸創建具有重疊關系的目錄

    cp命令

    cp命令用于復制文件或目錄

    語法:

    cp 選項 源文件 目標文件

    mv命令

    mv命令用于剪切文件或者將文件重命名

    語法:

    mv 選項 源文件 目標路徑/目標文件名

    rm命令

    rm命令用于刪除文件或目錄

    語法:

    rm 選項 文件

    dd命令

    dd命令用于按照指定大小和個數的數據塊來復制文件或者轉移文件

    語法:

    dd 參數

    file命令

    file命令用于查看文件的類型

    語法:

    file 文件名

    需要注意的是,linux中不能通過后綴名來查看文件類型,因此需要用file來查看

    打包與壓縮命令

    在網絡上,人們傾向于傳輸壓縮文件,因為體積更小,效率更高

    下面就將講解linux中的打包與壓縮命令

    但是由于每個都很復雜,所以還是需要看查看說明文檔

    tar命令

    tar命令用于對文件進行打包壓縮或解壓

    語法:

    tar 選項 文件

    tar命令常用參數如下:

    參數作用
    -c創建壓縮文件
    -x解開壓縮文件
    -t查看壓縮包內有哪些文件
    -z用Gzip壓縮或者解壓
    -j用bzip壓縮或解壓
    -v顯示壓縮或者解壓的過程
    -f目標文件名
    -p保留原始的權限和屬性
    -P使用絕對路徑來壓縮
    -C指定解壓到的目錄

    一般壓縮時候用==-czvf==,解壓縮用==-xzvf==

    grep命令

    grep命令用于在文本中執行關鍵詞搜索,并顯示匹配結果

    語法:

    grep 選項 文件

    常用選項如下:

    參數作用
    -b將可執行文件(binary)當做文本文件(text)搜索
    -c僅顯示找到的行數
    -i忽略大小寫
    -n顯示行號
    -v反向選擇,僅列出沒有關鍵詞的行

    例如,在/etc/passwd這個文本文件中匹配/sbin/nologin

    find命令

    find命令用于按照指定條件來查找文件

    格式:

    find [查找路徑] [尋找條件] [操作]

    其中找條件是使用參數實現的

    find命令常用的參數和作用如下:

    參數作用
    -name匹配名稱
    -perm匹配權限
    -user匹配所有者
    -group匹配所有組
    -mtime -n +n匹配修改內容的時間(-n指n天以內,+n指n天以前)
    -atime -n +n匹配訪問文件的時間(-n指n天以內,+n指n天以前)
    -ctime -n +n匹配修改文件權限的時間(-n指n天以內,+n指天以前)
    -nouser匹配無所有者的文件
    -nogroup匹配無所有組的文件
    -newer f1 !f2匹配比文件f1新但比文件f2舊的文件
    –type b/d/c/p/l/f匹配文件類型,后面的字母參數分別表示塊設備,目錄,字符設備,管道,鏈接文件,文本文件
    -size匹配文件的大小(+50KB表示大于50KB的文件,-50KB表示小于50KB的文件)
    -preune忽略某個目錄
    -exec … {};可用于后面進一步處理搜索結果的命令

    例如

    我們想要找出/etc文件夾下所有以host開頭的文件并打印出來

    [root@Jack-linuxprobe Desktop]# find /etc -name "host*" -print

    在整個系統中搜索權限包含SUID權限的所有文件 只需要使用-perm參數匹配-4000即可

    總結

    以上是生活随笔為你收集整理的第一章_常用命令的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。