<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • linux系統編程手冊pdf(分享c語言核心技術pdf)


    一、文件和目錄的基本概念

    1、Linux 的目錄結構

    Linux 系統的優勢:多用戶多任務的系統 安全性更高 開源免費

    在 Linux 系統中,將所有的目錄和文件數據組織為一個樹型的目錄結構,整個系統中只存在一個根目錄,所有的分區、目錄、文件都在同一個根目錄下面。

    2、命令提示符

    [root@localhost~]#

    root:當前登錄的用戶名

    localhost:本機的主機名

    ~:用戶當前所在目錄,~代表家目錄

    root 用戶的家目錄是:/root

    普通用戶的家目錄是:/home

    #:當前登錄的用戶為管理員用戶

    $:當前登錄的用戶為普通用戶

    3、切換用戶用:su 用戶名

    由 root 用戶切換到普通用戶不需要輸入密碼

    由普通用戶切換到其他用戶就必須輸入密碼

    4、顯示當前目錄所在的完整路徑:pwd

    5、目錄切換命令:cd

    cd /etc 切換到/etc/目錄

    cd .. 返回上一級目錄

    cd 返回家目錄

    根目錄:/

    家目錄:普通用戶的家目錄在/home 下面,root 的家目錄是:/root

    6、絕對路徑和相對路徑

    相對路徑:是當前目錄下的某個文件或路徑

    絕對路徑:是指目錄或文件的完整路徑

    7、命令行編輯的幾個輔助操作

    Tab 鍵:自動補齊

    分號“;”:在同一行中輸入多個命令,中間用;隔開

    反斜杠“\”:在一行命令后加上\,表示另起一行繼續輸入上下方向鍵:找出曾經執行過的歷史命令查看歷史命令:history

    快捷鍵 Ctrl+U:清空至行首

    快捷鍵 Ctrl+K:清空至行尾

    快捷鍵 Ctrl+L:清屏

    快捷鍵 Ctrl+C:終止命令的執行

    8、關機命令:shutdown (安全地將系統關機)

    shutdown 參數說明:

    [-t] 在改變到其它 runlevel 之前﹐告訴 init 多久以后關機。

    [-r] 重啟計算器。

    [-k] 并不真正關機﹐只是送警告信號給每位登錄者〔login〕。

    [-h] 關機后關閉電源〔halt〕。

    [-n] 不用 init﹐而是自己來關機。不鼓勵使用這個選項﹐而且該選項所產生的后果往往不總是你所預期得到的。

    [-c] cancel current process 取消目前正在執行的關機程序。所以這個選項當然沒有時間參數﹐但是可以輸入一個用來解釋的訊息﹐而這信息將會送到每位使用者。

    [-f] 在重啟計算器〔reboot〕時忽略 fsck。

    [-F] 在重啟計算器〔reboot〕時強迫 fsck。

    [-time] 設定關機〔shutdown〕前的時間。

    例如:

    /sbin/shutdown -h now-----立即關機;

    /sbin/shutdown -h 20:49----20:49 分關機

    /sbin/shutdown -h +10-----10 分鐘后關機

    /sbin/shutdown -r now -----立即重啟

    /sbin/shutdown -r +10 ‘The system will reboot’----10 分鐘后系統

    重啟并給每個登錄用戶發通知

    /sbin/shutdown -k now ‘The system will reboot’----僅給每個登錄用

    戶發通知并不真關機

    reboot init 6

    二、常用 shell 命令介紹

    shell 命令格式:命令名 [選項] [參數]

    1、文件管理命令

    ls–列表顯示目錄內容

    ls 顯示結果以不同的顏色來區分文件類別。

    藍色代表目錄(文件夾)

    灰色代表普通文件

    綠色代表可執行文件

    紅色代表壓縮文件

    淺綠色代表鏈接文件(快捷方式)

    選項說明:

    -a 顯示所有文件,包括隱藏文件(以.號開頭的文件)。

    -l 以長格式(內容更詳細)顯示文件或目錄的詳細信息。

    -h 以 K、M、G 等單位顯示文件大?。?/p>

    默認為字節),提高可讀性

    -lh

    2、通配符的使用:

    “?”可以匹配文件名中的一個任意字符,

    “*”可以匹配文件名中的任意多個字符。

    舉例:顯示/etc 目錄下文件名以 ns 開頭,擴展名是 conf 的文件的詳細信息 ls –l /etc/ns*.conf

    顯示/etc 目錄下文件名以 v 開頭,文件名一共是 4 個字符的文件的詳細信息 ls –l /etc/v???

    3、創建目錄(就是新建文件夾):要考慮權限問題 mkdir –p -m

    例 1:在當前目錄創建名為 test 的子目錄

    [root@localhost /]:#mkdir /mnt/test

    例 2:在根目錄中創建名為 public 的子目錄

    [root@localhost /]:#mkdir /public

    例 3:在當前目錄中同時創建 3 個子目錄

    [root@localhost /]:#mkdir mp3 mp4 mp5

    當前目錄為/,此時在/mnt 目錄下同時創建 2 個子目錄 y1 y2 [root@localhost /]:#mkdir /mnt/y1/ y2/y3

    例 4:創建連續目錄

    [root@localhost /]:#mkdir – p /media/cdrom 例 5:創建目錄,同時設置權限

    [root@localhost /]:#mkdir – m 775 test

    4、刪除目錄或文件

    刪除空目錄:rmdir

    例 1:刪除當前目錄下的空目錄 mytest [root@localhost /]:#rmdir mytest

    例 2:刪除連續目錄

    [root@localhost /]:#rmdir – p /media/cdrom/aa

    刪除文件:rm 默認只刪除文件,不刪除目錄

    例 1:刪除當前目錄下文件 1.txt

    [root@localhost /]:#rm 1.txt 有提示,確認刪除請輸入 y [root@localhost /]:#rm -f 1.txt 無提示,直接刪除

    例 2:刪除當前目錄下的 student 目錄

    [root@localhost /]:#rm -rf /student

    5、復制文件或目錄

    復制文件

    [root@localhost ~]# cp /bin/touch /root/test/toch1

    [root@localhost ~]# cp /etc/inittab /etc/inittab.bat 將文件進行備份

    復制目錄

    [root@localhost ~]# cp –R /tmp /root/mnt

    6、移動(剪切–粘貼)文件或目錄

    [root@localhost ~]# mv /root/test/test1.txt /root/test/test2.txt 重命名 [root@localhost ~]# mv /root/test/test2.txt /tmp/

    7、新建文件

    touch /1.txt 在/目錄下新建一個 1.txt 文件

    三、查看文件內容命令

    1、cat–顯示文件的內容

    cat –n 顯示行號

    cat 在顯示文本文件的內容時不進行停頓,因此不適合查看長文件。

    2、more 或 less 分頁顯示文件內容

    采用全屏的方式分頁顯示文件內容,當內容滿屏時便會暫停,按空格鍵繼續顯示下一畫面,或按 q 鍵跳離,適于閱讀長文件。

    區別:

    當文件內容顯示到文件尾時,more 命令會自動退出閱讀環境,而 less 命令不自動退出,需在提示符“:”后按 q 鍵退出。

    3、head 和 tail–查看文件開頭或末尾的部分內容

    默認情況下,head 顯示前 10 行內容,tail 顯示后 10 行內容。

    舉例:查看/etc/inittab 文件的前 3 行內容

    查看/etc/inittab 文件的后 5 行內容

    4、wc 命令——文件內容統計

    作用:用于統計指定文件中的行數、單詞數、字節數。

    語法:wc(選項)(參數)

    常用選項:

    -l 統計行數

    -w 統計單詞數

    -c 統計字節數

    舉例:依次統計/mnt/test/1.txt 文件中的行數、單詞數、字節數分別統計/mnt/test/1.txt 文件中的行數、單詞數、字節數

    四、查找命令

    1、find 命令:搜索文件與目錄

    作用:是在某個指定的路徑下找我們需要的文件或目錄,目標是文件或目錄。

    類似于在 Windows 系統中執行的“搜索”操作。

    語法:find [查找范圍] [查找條件表達式]

    常用選項:

    -name 按名稱查找,允許使用通配符。

    -type 按文件類型查找文件類型包括:普通文件(f)、目錄(d)、塊設備

    文件(b)、字符設備文件(c)

    -user 按文件所有者查找,根據文件是否屬于某個目標用戶進行查找。

    -size 按文件大小查找,使用“+”、“-”號設置超過或小于指定的大小作為查找條件。常用的容量單位包括 k(注意是小寫)、M、G

    # find /etc -size +1024k -name “init*” #find /etc -name 1.txt

    2、grep 命令:查找文件內容

    作用:是在某個文件中找我們所需要的某部分內容,目標是字符串。則類似于在

    WORD 中執行的“查找”操作。

    語法:grep [選項] 查找條件 目標文件

    常用選項:

    -c :計算找到 ‘搜尋字符串’ 的次數

    -i :忽略大小寫的不同,所以大小寫視為相同

    -n :順便輸出行號

    -v :反向選擇,亦即顯示出沒有 ‘搜尋字符串’ 內容的那一行!

    –color=auto :可以將找到的關鍵詞部分加上顏色的顯示!

    注意:grep 不支持通配符,而是使用正則表達式:

    ^ 表示以什么字符開頭

    $ 表示以什么字符結尾

    如:“^word”表示以“word”開頭

    “word$”表示以“word”結尾

    “^$”表示空行

    五、其他輔助命令

    1、查看歷史命令:history

    作用:linux 的 history 命令的作用是,記錄執行過的命令。

    用法:history [n] n 為數字,列出最近的 n 條命令

    使用! 執行歷史命令。

    ! number 執行第幾條命令

    ! command 從最近的命令查到以 command 開頭的命令執行 !! 執行上一條

    2.help 命令:只能查看內部命令的幫助信息

    舉例:查看 pwd 命令的幫助信息

    pwd –help

    如果使用 help 命令查看外部命令的幫助信息時則會報錯

    使用–help 選項查以查看外部命令的幫助信息

    3.man 命令:查看命令的幫助手冊

    使用“↑ ”、“↓ ”方向鍵滾動文本

    使用 Page Up 和 Page Down 鍵翻頁

    按 Q 或 q 鍵退出閱讀環境、按“/”鍵后查找內容舉例:查看 ls 的幫助手冊

    4.輸入輸出重定向

    Linux 系統中標準的輸入設備為鍵盤,標準輸出設備為屏幕,但在某些情況下,我們希望能從鍵盤以外的其他輸入設備讀取數據,或者將數據送到屏幕外的其他輸出設備,這種情況稱為重定向。

    輸入重定向:<

    輸出重定向:>或>>

    輸出重定向是將命令的輸出結果重定向到一個文件中,而不是顯示在屏幕上。

    “>”后面指定的文件如果不存在,將先建立該文件,再保存命令結果到文件中。

    “>”后面指定的文件如果存在,將先清空文件的內容,再保存命令結果到文件中。

    “>>”可以將命令結果重定向并追加到指定文件的末尾保存,而不覆蓋文件中原有的內容。

    舉例:將 1.txt 的內容輸出重定向到 a.txt

    Cat 1.txt > a.txt

    將 1.txt 的內容追加到 a.txt

    將錯誤信息輸出到文件

    ls /etc/hhh 2> erro

    cat > newfile

    ls > newfile

    cat > newfile < 1.txt

    5.管道符“|”

    通過管道符“|”,可以把多個簡單的命令連接起來實現更加復雜的功能。

    管道符用于將“|”左邊命令的執行結果作為“|”右邊命令的輸入。

    [root@localhost ~]# ls -lh /etc | more

    分頁顯示/etc 目錄下所有文件和子目錄的詳細信息。

    [root@localhost ~]# ls -lh /etc | grep net

    顯示/etc 目錄下包含有“net”關鍵字的所有文件和子目錄的詳細信息。

    [root@localhost ~]# ls -l /etc/*.conf | wc –l

    統計/etc 目錄下所有以“.conf”結尾的文件的個數。

    [root@localhost ~]# grep -v “^#”
    /etc/httpd/conf/httpd.conf | gerp –v “^$” 查看/etc/httpd/conf/httpd.conf 文件中除了以“#”開頭的行和空行以外的內容。

    6. clear 命令–清屏

    Ctrl+l

    六、文件權限

    1、文件屬性說明

    第 1 組:文件類型,其中第一個字符代表文件的類別。

    – 普通文件 d 目錄 l 符號鏈接

    c 字符設備 b 塊設備

    文件的權限

    r:可讀 w:可寫 x:可執行 -:沒有權限

    第 2 組:文件件的連接數第 3 組:文件所有者

    第 4 組:文件屬組

    第 5 組:文件大小,默認單位為字節第 6 組:文件創建時間

    第 6 組:文件名稱

    2、修改文件的權限:chmod

    字母方式修改權限

    文件所有者權限(u)

    所屬組權限(g)

    其他用戶權限(o)

    所有用戶(a)

    舉例:/mnt 的權限是 drwxr-x—

    chmod u-w /mnt 權限變為:dr-xr-x—

    chmod o+rx /mnt 權限變為:dr-xr-xr-x

    chmod g+w /mnt 權限變為:dr-xrwxr-x

    chmod a+w /mnt 權限變為:drwxrwxrwx

    3、數字方式修改權限

    r=4 w=2 x=1 -=0

    4、修改文件的所有者與所屬組:chown

    舉例:chown teacher:teacher /test1 同時修改所有者與所屬組

    chown root /test1 修改所有者

    chown :student /test1 修改所屬組

    5、特殊權限:

    1)ACL:訪問控制【針對其他用戶當中的部份或個別用戶設置特殊權限】

    setfacl -m u:stu1:rwx A

    創建一個 ACL 規則,使 stu1 用戶對 A 目錄具有 rwx 權限

    getfacl A 查看 ACL 規則

    setfacl -x u:stu3 A

    刪除 stu3 對 A 目錄的 ACL 權限,只刪除了一條規則 setfacl -b A

    刪除 A 目錄的所有 ACL 規則

    (2)SBIT:粘滯位權限(強制位權限)【針對其他用戶,只能刪除自己的文件,不能刪除其他的用戶的文件】

    chmod o+t A

    (3)SGID:針對其他用戶設置,以所屬組的身份去執行。

    hmod g+s A

    (4)SUID:以文件所有者的身份執行文件,只針對可執行文件。

    chmod u+s A

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费