天天看點

運維基礎--Linux基礎指令

   Linux基礎指令

  剛接觸Linux,往往會有一個印象就是Linux操作起來比我們熟悉的windows難,其實不然,隻要了解熟知了Linux的CLI界面諸多的指令的用法就能使很多在GUI界面下的操作變的無比簡單;以下是Linux使用中的幾個基礎指令:

   1.cd:

     cd [-L|-P] [dir]  改變shell 的工作目錄,預設是使用者的家目錄;

        cd DIR:切換到DIR目錄;

        cd:   切換至目前使用者的家目錄;

        cd - :将工作目錄切換至上一次的工作目錄;兩個目錄之間的來回切換!

              原理: shell中的兩個變量:

                     $PWD

                     $OLDPWD

        cd ~ :将工作目錄切換至家目錄;root使用者可以切換到指定普通使用者的家目錄下;

                  cd ~USRNAME;

   2.pwd:

        顯示PWD變量的内容,即顯示目前目錄;pwd [-LP]

   3.ls:

        顯示目錄内容(檔案名)

        在Linux檔案系統中,所有以“.”開始的檔案稱為隐藏檔案;

        選項:

          -A :顯示除了“.”和“..”的所有檔案,包括隐藏檔案

          -d :不顯示目錄的内容,隻顯示該目錄名;

          -l,--long:以長格式顯示檔案的詳細屬性資訊

            /*例如:drwxr-xr-x. 2 whj1 whj1 4096 Mar  4 14:15 Desktop

               d:檔案類型辨別

               rwxr-xr-x:檔案權限

                rwx:檔案的屬主所具備的權限;

                r-x:檔案的屬組所具備的權限;

                r-x:其他使用者對該檔案所具備的權限;

               . :表示該檔案是否具有特殊屬性;.表示特殊屬性

               2:該檔案被硬連接配接的次數;

               whj1:檔案的屬主;

               whj1:檔案的數組;

               4096:檔案的大小;

               Mar 4 14:15-- 檔案最後一次被修改的時間;

               Desktop:檔案名稱(檔案名不屬于檔案的屬性資訊-中繼資料)

               *除了檔案名以外的所有資訊都是檔案的屬性;

               裝置的詳細資訊:

               8:主裝置号(major)用于辨別裝置類型,進而确定要加載何種驅動程式;

               0:次裝置号(minor)用于辨別同一種裝置類型的不同裝置;

               裝置号使用8位二進制表示,預設表示範圍:0-255;*/

           -h:易于人讀取的檔案大小格式,1024進制換算;

           -F:--classify 檔案類型辨別(/@*|=)

           -r: 按字母順序倒順序輸出結果

           -R:--recursive 遞歸顯示目錄及子目錄的内容 (Ctrl+C 結束程序)

           -S:根據檔案大小排序顯示

           -1:每行顯示一個檔案

           -Z:顯示檔案的SELinux的安全上下文(Security Context)

           Exit Status:

            0: if OK,成功執行

            1: if minor problems(e.g. cannot access subdirectory)

            2: if serious problems(e.g. 目标檔案或目錄不存在等等)

   4.mkdir:

        mkdir [opt] DIRECTORY...

        -p:在建立目錄時,如果父目錄不存在則優先建立之;

        -v:在執行指令時顯示指令的執行過程;

   5.rmdir: 

        隻可以删除空目錄; 選項同mkdir

   6.rm: 移除檔案或目錄;

        rm [opt]... FILE...

           -i:與使用者進行互動式删除;

           -f:強制删除;

           -r,-R:遞歸删除目錄;

   7.touch:

        change file timestamps 修改時間戳,可以使檔案的三個時間一緻。

        touch [opt]... FILE...

   8.stat:

        display file or file system status

        stat [opt]... FILE...

         Access: 通路時間

         Modify: 修改時間,檔案内容變化時改變

         Change: 中繼資料變化,改變時間變化

          -c FORMAT:以特定的格式顯示檔案指定屬性;

                例如:%a,access rights in octal

   9.nano:

        全屏編輯工具,

        ^表示Ctrl鍵;

          o:儲存

          x:退出

          ……

   10.cat:

        concatenate(連接配接) files and print on the standard output

          -E:顯示末尾隐藏的行結束“$”符号;

          -n:所有行進行行編号;

          -b:對于非空行内容進行行編号,即不顯示空行的行号;

          -s:合并多行空白行為一行;

          注意:如沒有參數,則通過标準輸入進行操作,Ctrl+D退

   11.tac:

        concatenate and print files in reverse

        實際上就是cat的逆序輸出;

   12.head:

         output the first part of files

         選項:

          -c #[b|k|m|g]:

             顯示檔案的前#多個字元;

             b:512Byte;K:1024;

          -n, --lines=[-]K

             顯示檔案的前n行内容,也可以簡寫為-#;

        注意:不加選項時預設顯示前十行;不足十行全部輸出;

   13.tail:

         output the last part of files

         選項幾乎和head相同:

           -f:實時監測檔案末尾變化情況;^+c退出;

   ★分頁顯示内容;

   14 more:man指令顯示的格式  空格翻頁,回車進行;

            more隻能下翻頁,不能回翻;

   15 less:可以回翻頁

   ★日期時間相關指令:

        有兩個時鐘:

         硬體時鐘:hwclock,clock。精确到1微秒

         系統時鐘:date

        cal

   16.date [OPTION]... [+FORMAT]

        date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

        設定方法有很多:

            如 date "031211012017.40"

               date -s "2017/10/10 10:10:10"

        格式:

            %F:完整格式的日期;

            %T:完整格式的時間;

            %Y:年;

            %m:月;

            %d:日;

            %HMS:時分秒;1day 24h 1440m 86400s

            %s:時間戳;從1970-1-1 00:00:00到目前系統時間所經過的秒數;

            ……

   17.hwclock:

        -s,--hctosys : 

              Set the System Time from the Hardware Clock. 

              以硬體時鐘為參考設定系統時鐘; 

        -w, --systohc

              Set the Hardware Clock to the current System Time.

              以系統時鐘為參考設定硬體時鐘

        --set --date "TIME":

              将硬體時鐘設定為"TIME";

   18.cal:顯示月曆;        

    NTP伺服器:網絡時間協定,誤差控制在ms;自動同步;

  關機指令:

   19.halt、poweroff:

   20.shutdown:較前面兩者更為安全;

         shutdown [OPTIONS...] [TIME] [WALL...]

        TIME:

          絕對時間:12:00;

          相對時間:+#,在#分鐘之後執行;

                    +0相當于now

          -h:關閉系統;

          -r:重新開機;(reboot);

          -c;Cancel a pending shutdown.

   21.登出,登出:

      exit:登出一個shell

      logout:退出一個登入 shell.

   22.cp:

      拷貝檔案和目錄:

        cp [OPTION]...  SOURCE DEST(單源複制)

        cp [OPTION]... SOURCE... DIRECTORY(多源複制)

        單源複制可以修改檔案名;

      選項:

        -d 複制符号連結檔案本身,而非源檔案;

        -p 在複制檔案時,能夠保留檔案的權限、所有權及時間戳資訊;

        -r、R:遞歸的複制目錄及目錄中的檔案;

        -a:相當于-dpr的組合;

    注意:1.cp指令至少需要兩個參數;

          2.通常情況下,最後一個參數是此次拷貝行為的目标;

          3.如果進行單源複制,目标可以不存在,目标可以為非目錄檔案;

          4.如果進行多源複制,目标必須為多源目錄,且過程中無法更改檔案名;

   23.mv:

        mv [OPTION]... SOURCE DEST

        mv [OPTION]... SOURCE... DIRECTORY

        -f : 強制覆寫目标位置中的重名檔案;

   24.which:

      shows the full path of (shell) commands.

       檢視可執行指令的路徑

      【文法】which COMMAND

      【選項】:

            -a,--all:顯示所有比對的可執行檔案,而不僅僅是第一個。

   25.whatis:

        search the whatis database for complete words

        在 whatis庫裡查找完整的指令

        是一個輔助的指令,輔助man這個幫助指令

   26.whereis:

       locate the binary, source, and manual page files for a command

       查找檔案、手冊頁、指令等的相關位置,

      【文法】whereis [options]  argument

      【選項】

         -b:隻查找二進制檔案位置

         -m:隻查找手冊頁部分

         -s:隻查找源代碼部分

   27.w who whoami:

      w - 顯示已經登入的使用者及正在進行的操作

      who - 顯示已經登入的使用者

         【選項】:

          -q, --count顯示全部的登入名和登入數

      whoami - 顯示登入系統的時候的使用者名,即使已經切換到其他使用者也顯示登入時的使用者

   28.du:報告磁盤空間使用情況

      POSIX 選項

       -a 顯示所有檔案的統計,不隻是包含子目錄

       -k 用1024位元組作為計數機關 

       -x 隻輸出指定參數的實際使用空間,而不包括其下的子目錄

     GNU 選項

       -a, --all

         顯示對所有檔案的統計,而不隻是包含子目錄

繼續閱讀