Linux學習日誌(一)

###目錄管理

FHS:文件層次標準

    操作系統自身運行使用的

    

    /bin: 存放可執行的二進制程序,管理員和普通用戶都可以使用

    /sbin:管理員才能執行的命令

    運行正常功能的程序存放位置

    /usr/bin

    /usr/sbin

    用來存放第三方軟件的程序

    /usr/local/bin

    /usr/local/sbin

/boot:存放系統引導文件:內核、ramfs文件、bootloader(grub)

/dev:設備文件存放目錄

/etc:配置文件的集中存放目錄

    /etc/sysconfig:系統級別的應用

    /etc/init.d:系統服務腳本

/home :普通用戶,默認在/home下有一個與其名稱同名目錄,作爲用戶的家目錄

/root:管理員的家目錄

/lib,/lib64:庫文件

/media:專用掛載位置,通常用來掛載便攜式設備

/mnt:專用掛載位置,掛載額外的存儲設備

/misc:雜項,備用目錄

/opt:可選目錄,但通常用來安裝第三方軟件

/proc:所顯示的文件都不是文件,僞文件系統,運行中的內核參數的映射

/sys:僞文件系統,系統級別的用於配置硬件設備相關的參數

/srv:爲服務提供數據存放位置的

/tmp:臨時文件系統:默認存放30天

/usr:shared 所有遵循協議的系統都可以使用,readonly 只讀

  /usr/include:頭文件存放位置

/var:經常發生變化的文件

    /var/log

    /var/lock

    /var/run

    /var/cache

###命令的區分

 

  basename 顯示當前目錄的基名

  dirname  顯示當前目錄的目錄名


 


bash中,命令分爲:


內部命令:在bash中內部實現的命令叫做內置命令

外部命令:在文件系統上的某個位置有一個與命令名稱對應的可執行文件

 

<!-- 如何判斷內部還是外部:使用type命令-->


命令分析


shell 事先通過一個變量(PATH)設定好了多個路徑,當用戶輸入命令時,shell會自動到這些路徑(由左向右)下查找與命令名稱相同的可執行文件

    

    hash 用來保存以前曾經執行過的命令,以哈希表的方式保存,可以通過hash來查看

    

    查看一個可執行程序的具體路徑:使用 which+程序名來查看

    

命令的格式:


    command  options arguments

    命令 選項     參數  

    選項:   用來調整命名執行特性的;

            選項可以有多個;多個選項之間必須以空格分隔

            短選項 - char ;

            長選項 -- word

    短選項可以合併:長選項一般不可以合併;

    有些選項需要有參數

    

    命令參數:命令的作用對象

         有些命令可以帶多個參數:

         各參數間需要使用空格分開; 

查看某關鍵字在那些段落有使用幫助

     whatis Keyword 精確查找

     提示:如果whatis的數據庫尚未生成,可以使用makewhatis手動進行

     man -k keyword 模式查找


###文件和目錄管理類的命令

 目錄:

  

  當前所在的目錄:工作目錄

  用戶起始的目錄:家目錄,主目錄

 

  切換目錄

    cd ~[username]

    ~: 家目錄

    -: 回到上一次所在的目錄

路徑: 

    . 當前目錄

    .. 父目錄

 

pwd: 顯示當前目錄

mkdir:創建目錄   

  -p:先創建父目錄

  -v:顯示詳細信息

  rmdir:刪除空目錄

        -p:只能刪除一線單的目錄 


shell的引用:

    

        ‘’: 強引用,變量替換不會進行

"":弱引用,能夠執行變量替換

``:命令替換,引用命令的執行結果,另外一種方式$()  

   **命令行展開:能夠把一個特殊字符換成別的字符

{}展開爲多個條目**    

 

    變量替換:${變量名}

    echo 顯示

                     

###獲取幫助

內置命令:

      

        #help 命令名字

列如: help cd 

外部命令:

    

      #命令 --help

  #man 命令(先解壓後顯示) 

    裏面有很多段落:

        NAME  簡要使用幫助說明 名字

SYNOPSIS 使用格式

DESCRIPTION: 詳細功能描述

        OPTIONS   : 選項

        EXAMPLES:  

        DESCRIPTION:

        使用幫助中命令格式中的字符意義:

    []:可選的部分

      {a|b}:分組,a和b作爲一個使用單元來使用

      |:或者,只能選其一

       <>:必不可少的部分

    ...:同類內容可以出現多個

    

    man的簡要使用機制

      翻屏:

         空格鍵:向文件尾部翻一屏

         b:向文件首部翻一屏

         回車鍵:向文件尾部翻一行

         k:向文件首部翻一行

              ctrl+d:向文件尾部翻半屏

              ctrl+u:向文件首部翻半屏

              1G:第一行

              G:最後一行


文本搜索:

  /keyword : 順向,向文件尾部搜索

    查看下一個被匹配到的

  n 跟搜索命令方向一致

  N 跟搜索命令方向相反

?keyword : 逆向,向文件首部搜索

q:退出

補充:man其實能爲命令(普通命令、管理命令)、程序的配置文件格式、系統調用、庫調用、遊戲及其他不便歸類的文件提供幫助手冊 

  man命令的分段機制:

1:用戶命令:

2:系統調用

3:庫調用

4:設備文件

5:文件格式

6:遊戲

7:雜項

8:管理命令 

  #info 命令:獲取在線文檔

  #很多應用程序自帶的有文檔: /usr/share/doc/

        ChangeLog INSTALL README  

  #google:

          linux filetype:ppt 特定格式

          keyword site:magedu.com

     #Redhat官方文檔  

          www.redhat.com/docs

    

  **程序由 二進制文件,庫文件,配置文件,幫助文件**


###系統管理類的命令:

   將語言設置爲en

        

         export LANG=en

   

   shutdown

      

     shutdown [option]...TIME

      -r :重啓

      -h :關機

      -c :取消重 或關機命令

     時間格式:

      now

      +#:#分鐘以後

      hh:mm

   

   

   reboot    重啓 

   poweroff  斷電

   half  關機

      

###日期時間管理

date 顯示當前系統時間

   

date MMDDhhmm[cc]YY.ss

date [+FORMAT] 設置時間 

%Y:四位年份

%y:兩位年份

%m:月

%M:分鐘

%d:日

%h:英文簡寫的月

%H:時

%S:秒

%s:現在距離1970年1月1號0點0分(unix元年)的秒數,timestamp(時間戳)

%D:月/日/年

%F:年-月-日

%T:時:分:秒        


hwclock

    

    -s: 以硬件時鐘爲準 --hctosys

    -w:以軟件時鐘爲準 --systoh

     硬件時鐘:主板上的時鐘    

     軟件時鐘:開機時讀取硬件時鐘


cal 日曆

 


##shell的特性之三:命令歷史

bash默認會保持此前執行過的命令列表


使用上下箭頭鍵可以翻看此前執行過的命令  .bash_history



history:


  !數字:執行history中第數字條的命令

  !!:上一條命令

  !-數字:表示執行命令列表中的倒數第數字條命令

  !$:執行上個命令中的最後一個參數:ESC,.

  !string:執行命令列表中的最近一次以string開頭的命令

  -d  數字 刪除第數字條記錄

  -c 清空history列表

  -a:追加當前回話的命令到歷史列表中去

  -n:讀取所有在回話列表中的 但是不在當前回話列表中的

   

命令歷史相關的環境變量

  HISTSIZE:歷史命令中可以保存的個數

  HISTFILE: 歷史命令保存的文件

  HISTFILESIZE:歷史文件中可以保存的命令個數

  HISTCONTROL:控制命令歷史的生成機制

          ignoredups:忽略記錄重複的命令,連續的相同命令

      ignorespace:以空格開頭的命令不會被記錄

      ignoreboth:同時具有上面兩種特性


補充:Linux文件系統的另一個特性:以點開頭的文件爲隱藏文件 通過ls -a 查看


shell中的變量賦值


     變量名=值

     注意:變量在賦值是不能再前面帶$

           變量名只能包含字母、數字和下劃線,並且不能以數字開頭

  變量名區分大小寫

  儘量能見名知義




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章