Linux學習(一)

目錄

1.Linux入門
2.使用幫助
3.文件管理
4.重定向和管道

一、Linux入門

1.用戶登錄

     root用戶   超級用戶,接近完整的系統控制  除非必要不要登錄  # 
     普通用戶  權限有限  $

2.終端 terminal

     tty 顯示當前終端

3.shell介紹

     接收用戶輸入的命令送去內核執行,人機交互的語言  
     echo $SHELL   顯示當前的shell的類型
     cat  /etc/shells   顯示當前系統所使用的所有shell

4.執行命令

     命令提示符prompt  
            [root@localhost~]#    
            echo $PS1  顯示當前的提示符格式

Linux學習(一)

            PS1=’\[\e[31m\][\u@\h\W]\\$\[\e[0m\] ‘  改變提示符                 
                      {顏色  31m-38m}
            輸入命令後回車執行命令

         shell中可執行的命令
            內部命令
                enable   顯示所有已激活的內部命令
                enable command   激活被禁用的內部命令
                enable |wc -l   顯示激活中的內部命令的數量
                enable -a   顯示所有內部命令
                enable -a  |wc -l    顯示所有內部命令的數量
                enable -n    顯示所有被禁用的內部命令
                enable -n command    禁用某個內部命令

            外部命令   
                whereis; which  -a  | -- skip - alias
                hash 緩存(執行外部命令)   
                hash   顯示所有被hash的命令路徑
                        -l   顯示所有被hash的命令路徑,包含別名
                        -d 別名   刪除指定別名的hash路徑
                        -r   清空所有的hash
                        -t 別名   顯示指定別名的hash路徑
                        -p 路徑 別名    手工增加一條hash

     執行一條命令時的查找順序 
             別名→內部命令→外部命令→hash→PATH

     type  區別命令類型    
              type command  顯示命令類型

     alias 別名
              alias  顯示所有的別名信息
            unalias  -a  別名   取消所有別名
                /etc/bashrc   對所有用戶將別名保存
              ~/.bashrc   對當前用戶將別名保存

     命令執行語法  
               -   短選項    例如  -p
               --  長選項   例如  --help
              ; 連接符  前一條命令執行結束再執行下一條命令
               \   命令換行符
               多個選項以及多參數和命令直接使用空白字符分隔

5.簡單命令

     date時間 
                 date +%Y   年
                         +%m  月
                         +%d   日 
                        +%H  小時
                        +%M  分
                         +%S   秒
                        +%w  星期  (0表示星期日)
                        +%A  顯示星期全名
                        +%F  年-月-日
                        +%T  時:分:秒
                 date  月日時分年[.秒]  改時間格式
                 date -s  ‘年-月-日 時:分:秒’   更改時間

      hwclock  硬時間
    clock   軟時間
      clock  -s   將軟時間寫入硬時間  關機是自動進行
                -w  將硬時間寫入軟時間  開機時自動進行
     cal -y  日曆
     nano  編輯內容 
     poweoff/init0  關機
     reboot/init 6   重啓
     shutdown  -r    重啓
                        -h    關機
                        time   指定時間關機
                        -c    取消關機計劃

     whoami   顯示當前用戶名
     who an /are/is 任意字符   顯示當前的終端信息
     who  顯示所有終端信息
     w      顯示所有終端的詳細信息及所做的操作

     screen 
                  下載

Linux學習(一)

                    screen -s 會話名  創建指定名的screen會話
                                -x 會話名  加入已創建的screen會話
                                -ls             查看所有已打開的screen會話

        echo  
                    echo $()   或  ``   引用命令執行的結果

Linux學習(一)

                     echo {}   重複字符的簡化形式

Linux學習(一)

                      echo $(()) 或 $[]  進行運算

Linux學習(一)

                      echo ${}   或 "$變量名" 劃定變量名的起止範圍

Linux學習(一)

6.tab鍵 補全

7.命令行歷史

         !n  重複某條歷史(此處n爲數字)

Linux學習(一)

          ↑   重複上一條命令
         !string   重複前一個以“string”開頭的命令
          !?string  重複前一個包含“string”的命令       string 字符串

Linux學習(一)

          history的命令     
                    history 查詢歷史記錄
                    history -c 清空當前的所有歷史記錄  
                    history -dn 刪除某條歷史(此處n爲數字)
                    history -a 將當前終端新執行的命令寫入歷史記錄文件   (默認爲~/.bash_history)
                    history -w /path/filename.txt 將歷史記錄寫入指定文件

Linux學習(一)

           調用歷史參數     
                     要重新調用前一個命令中最後一個參數:
                                !$  
                                Esc, .(點擊Esc鍵後鬆開,然後點擊 . 鍵)
                                Alt+ .(按住Alt鍵的同時點擊 . 鍵) 

8.bash快捷鍵

            ctrl + l  清屏
                  + o 執行當前命令 並重新顯示本命令
                  + s 鎖定屏幕 仍可以運行
                  + q 解鎖
                  + c 強制結束
                  + z 暫停命令(fg可以再切換回來,bg可以查看當前終端後臺有多少暫停的程序)
                  + a 光標起到命令行首
                  + e 光標移到命令行尾
                  + u 刪除光標之前的內容
                  + k 刪除光標之後的內容 
            ctrl+shift+c 複製選中的文本
            ctrl+shift+v 把文本粘帖到當前光標處   
            Alt  +r  刪除全部內容
                +N 提示輸入指定字符[後輸入]後,重複顯示該字符N次(N表示具體的數字)

三、使用幫助(獲取幫助的能力覺得了技術的能力)

1.whatis

     僅能提供命令基本的介紹。不提具體用法。
           whatis command                基於數據庫的查找
           man -f comman                  優點:檢索速度快
                                                          缺點:缺乏實時性

           makewhatis   在CentOS6
           mandb   在CentOS7

2.--help

3.man info

           man   統稱爲Linux手冊,常用於命令參考
                  man  cmd   查看此cmd的幫助
                  q  退出man
            info 適合通用文檔參考
                  info  cmd   查看此cmd的幫助

四、文件管理

1.文件系統結構元素

            Linux系統文件區分大小寫
            元數據 metadata   數據 data 

2.創建 查看文件

            pwd  當前目錄路徑  
                    pwd -P 當前目錄爲軟鏈接時,顯示其源目錄
                    oldpwd  上一次目錄路徑   
             cd 改變目錄  
                    cd ..  切換到父目錄
                    cd     切換到當前目錄

Linux學習(一)

             ls 查看目錄
                    ls -a 顯示所有文件
                     ls -l  長列出
                    ls -R  遞歸
                     ls -ld  顯示指定目錄的詳細信息
                    ls -1  豎顯示
                    ls -S  按文件大小降序 
                     ls -T  按修改時間從新到舊
                    ls -u  按訪問時間
                    ls -U  按文件存放的先後順序
                     ls -X  按文件後綴排序
                    ls -i    顯示inode號

             stat     
                                                    atime   讀取文件內容 訪問時間
                     三個時間戳             mtime   改變文件內容 修改時間
                                                    ctime   元數據發生改變   改變時間

             touch創建文件    
                     touch filename  
                                 當文件不存在時,則創建filename
                                 當文件已存在時,則更新全部時間戳 
                     touch -t [YY]MMDDhhmm[.ss] filename
                     touch -a    改變 atime ctime
                     touch -m   改變  mtime ctim
                     touch -c    文件存在更新全部時間,不存在不創建文件

              文件通配符
                     * 匹配零個或多個字符 
                    ? 匹配任何單個字符 *
                     [0-9]    [a-z]    [A-Z]   
                     ^ 託字符  除了
                     [:upper:]  大寫字母
                    [:lower:]   小寫字母 
                     [:alpha:]   大小寫字母
                    [:alnum:]   字母和數字 
                     [:space:]    水平或垂直空白字符
                    [:blank:]    空格

3.複製 轉移 刪除文件

              cp複製
                      cp A B

Linux學習(一)

                        cp -i   覆蓋前提示
                      cp -n  不覆蓋 注意順序
                        cp -r   -R 遞歸
                      cp -a  歸檔
                      cp -d  不復制原文件只複製鏈
                        cp -p  複製所有的
                      cp -v  顯示覆制的過程
                      cp -f   有權限 覆蓋在創建
                 mv -i  覆蓋前提示
                       -f  強制覆蓋
                 rm -i   刪除前提示
                      -f   強制刪除
                      -r   刪除目錄   
                 rename  .txt  .doc*  .txt

4.目錄操作

               tree  顯示目錄樹
                     -d 只顯示目錄
                     -L n  只列出指定層級的目錄(此處n爲數字)
                     -P通配符  只列出匹配到的文件和所有的目錄

               mkdir  創建目錄
                      -p  一次性創建多級目錄
                      -v  創建時顯示詳細信息
                    -m 創建時直接設置權限
               rmdir  刪除空目錄  
                       -p  一次性刪除多級空目錄
                    -v  顯示刪除的詳細信息     

5.inode

               128字節  64(類型,權限,鏈接數,大小,UID,GID,時間,其他信息) 
                索引節點     cp   rm   mv   

6.軟鏈接硬鏈接

                ln filename linkname  不能跨分區
                ln -s filename linkname  可以跨分區 源被刪除 鏈接也不可用

                file 確定類型,顯示文件名 
                       -b   查看文件類型時不顯示文件名
                       -f    列出文件中文件的文件類型
                       -f /path/filename   文件中每個文件路徑一行。從而可批量查看多個文件的類型
                    -F    符號 按指定符號做爲分隔符輸出 默認是  :
                    -L    當查詢的對象爲軟鏈接時,顯示源文件的類型
                    --help  查詢在線幫助 

五、重定向和管道

1.三種I/O設備

                 指令+數據
                 Input  讀入數據      Output  輸出數據  
                 stdin  標準輸入       stdout  標準輸出      stderr   標準錯誤 

2.把I/O重定向入文件

                 > 正確輸出  
                    文件不存在時直接創建新文件 
                    存在時  >  直接覆蓋    >>  追加
                 2>錯誤輸出
                 &>全部輸出
                 2>&1錯誤結果轉化正確
                 1>&2 正確的轉化錯誤    
                 ()合併多個程序     

3.tr 轉換和刪除

                 tr  -c    選取字符集的補集
                     -d    刪除
                     -s    連續重複的字符以一個字符表示
                  << EOF  
                  >EOF   終止符

Linux學習(一)

4.使用管道鏈接命令

                 | 管道符  使用前加空格  
                                連接命令   cmd1 | cmd2 | cmd3
                                將正確的結果傳遞給管道 
                                   錯誤的結果通過   2>&1  ;    |&   傳遞結果
                                組合多種工具

Linux學習(一)

                  less  一頁一頁查看
                         ls -l /etc | less
                  mail 通過mail發送輸出     
                          echo “test mail” | mail -s “test user”             

5.tee 重定向到多個目標

                  tee -a    追加
                          command1 |tee [-a] file |command2
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章