根文件系統基礎

       根文件系統基礎介紹

  1. 程序編譯方式:

        動態編譯:在程序編譯需要時調用庫文件,移到別的系統上程序無法執行,具有依賴性;

        靜態編譯:在程序編譯時複製需要的庫文件,可移動,

 進程的類型:

   與終端相關:就是通過終端啓動的

   與終端無關:操作引導自己運行啓動

操作系統的組成:

 靜態:kernel ,application

 

文件系統:FHS(Filesystem Hierarchy Standard) 層次結構


從 / 開始,/下面的是一級目錄,然後其他分區關聯在/ 下面的的目錄是二級目錄;

構成了一個從/開始的目錄樹;

 /bin:所有用戶可用的基本程序文件

 /sbin:管理員使用的的工具程序

 /boot:引導啓動加載文件

 /dev:設備文件及特殊文件

     b:塊設備 隨機(硬盤)

     c:字符設備 線性,有時序的 (鍵盤)

 /etc:主機特有的配置文件

 /home:用戶的家目錄

 /lib:基本的共享庫和內核模塊

   libc.so.*:動態鏈接的c庫

   ld*:運行時鏈接器

   modules:用於存放內核模塊的目錄

 /lib64:64位系統特有的存放64位共享的路徑

 /media:便攜式掛載點,cdrom,floppy

 /mnt:其他文件系統的臨時掛載點

 /opt:附加應用程序的安裝位置:可選路徑;

 /srv:爲服務提供的數據;

 /tmp:臨時文件存放

 /usr:全局共享的只讀數據路徑:

   bin ,sbin

   lib ,lib64

   include:c程序頭文件:

   share:命令手冊和自帶文檔等架構特有的文件的儲存位置

   locale:另一個層級目錄:

   X11r6:x-Windows程序的安裝位置

   src:程序源碼文件的儲存位置

 /usr/local:讓系統管理員安裝本地應用程序:或第三方的程序、

 /var:可變化的文件如日誌

 /proc:虛擬文件系統信息,爲內核和進程存儲相關信息:多爲內核參數。

 /sys:比proc更爲理想的訪問內核數據的途徑;主要作用爲管理Linux設備提供一種統一模型的接口;

   

2.Linux系統上的文件類型:

  ls命令可以查看

 -(f):常規文件

 d:目錄文件

 b:塊設備,以塊爲單位,進行的隨機訪問

 c:字符設備,線性,有時序的

   major:主設備號,表示設備類型

   number次設備號;同類型設備的不同個設備

 l:符號鏈接文件,類似Windows的快捷方式,軟鏈接文件

 p:命名管道文件

 s:套接字文件;(TT?)


3.基本命令:

 命令類型:

    外部命令

    內部命令

  type COMMAND:查看命令是內還是外

   內部:是builtin

   外部:顯示文件路徑或者顯示它的命令別名

  想運行原命令可使用\command,

命令別名: 

 ~]#alias 查看當前系統上的命令的別名的

定義命令別名:

  ~]#alias name=command 

作用範圍是當前登錄的shell


撤消:~]#unalias name

which 命令:

  顯示命令的完整路徑

which  [options] progranmname

  --skip-alias:忽略別名

whereis命令:

 顯示手冊頁、二進制、

whereis [options] name

 -b:僅搜二進制程序路徑

 -m:僅顯示手冊頁

who命令: 

  查看當前誰在登錄

 -b:系統此次啓動的時間

  -r:運行級別

w命令:

  類似於who命令


4.bash的基本特性:

命令歷史:shell進程會在其會話中保存提交執行過的命令

~]#history 查看執行過的命令

[root@localhost ~]# echo $HISTSIZE

1000  可保存命令歷史的條數

.bash_history 保存的歷史文件

[root@localhost ~]# echo $HISTFILESIZE

1000   命令歷史文件大小


history:

history [-c] [-d offset] [n] or history -anrw [filename] or history -ps arg 

[arg...]    Display or manipulate the history list.

      -cclear the history list by deleting all of the entries

            刪除所有條目從而清空歷史列表

      -d offsetdelete the history entry at offset OFFSET.

         偏移量  從指定位置刪除歷史列表

      -aappend history lines from this session to the history file

          將當前繪畫的歷史行追加到歷史文件中

      -nread all history lines not already read from the history file

          從歷史文件中讀取所有未被讀取的行

      -rread the history file and append the contents to the history

    list   讀取歷史文件並將內容追加到歷史列表中

      -wwrite the current history to the history file

    and append them to the history list

        將當前歷史寫入到歷史文件中並追加到歷史列表中

      -pperform history expansion on each ARG and display the result

    without storing it in the history list

          對每一個ARG參數展開歷史,顯示結果,不儲存歷史列表中

      -sappend the ARGs to the history list as a single entry

           以單條記錄追加ARG到歷史列表中

調用歷史列表中的命令

[root@localhost ~]# !2   再一次執行命令歷史列表中的第2條命令

[root@localhost ~]# !!    在一次執行上一次命令

[root@localhost ~]# !he   執行歷史列表中最近一次以he開頭的命令

[root@localhost ~]# !?he  執行歷史列表中最近一次含有he字符的命令

重複前一個命令,幾種方法:

重複前一個命令使用上方向鍵,並回車執行。

按!! 並回車執行。

輸入!-1 並回車執行。

按Ctrl+p 並回車執行。


調用歷史參數

COMMAND !^:利用上一個命令的第一個參數

COMMAND !$:利用上一個命令的最後一個參數

COMMAND !*:利用上一個命令的全部參數

COMMAND !:n  :利用上一個命令的第n個參數


command !n:^ 調用第n條命令的第一個參數

command !n:$ 調用第n條命令的最後一個參數

command !n:m 調用第n條命令的第m個參數

command !n:* 調用第n條命令的所有參數


命令歷史相關環節變量

  顯示時間

  951  2016-07-28 15:59:09    histroy

  952  2016-07-28 15:59:15    history

  953  2016-07-28 16:14:10    HISTTIMEFORMAT=“%F %T  ”

  

[root@localhost ~]# HISTCONTROL=ignoredups

[root@localhost ~]# echo $HISTCONTROL

ignoredups      忽略重複的命令;連續且相同的命令


[root@localhost ~]# HISTCONTROL=ignorespace

[root@localhost ~]# echo $HISTCONTROL

ignorespace     忽略所有以空白開頭的命令


[root@localhost ~]# HISTCONTROL=ignoreboth

[root@localhost ~]# echo $HISTCONTROL

ignoreboth      是,ignoredups,ignorespace


[root@localhost ~]# HISTCONTROL=erasedups

[root@localhost ~]# echo $HISTCONTROL 

erasedups      刪除重複命令


export 變量名="值“

存放在/etc/profile 或~/.bash_profile

 

bash的快捷鍵


 Ctrl+l 清屏,相當於clear命令

Ctrl+c取消命令的執行

Ctrl-a 會移動到命令行的最前面

Ctrl-e 會移動到命令行的最後面

Ctrl-u 會刪除到行首

Ctrl-k 會刪除到行尾

arrow ctrl-b ctrl-f會向左或向右移動一個字符

Esc-b左移一個單詞

Esc-f右移一個單詞


tks


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