1. 程式人生 > 其它 >【形式化方法】Part B: LA/LP Applications(子集和問題)

【形式化方法】Part B: LA/LP Applications(子集和問題)

技術標籤:linux

Linux基本目錄結構

在這裡插入圖片描述
Linux 檔案系統是一個目錄樹的結構,檔案系統結構從一個根目錄開始,根目錄下可以有任意多個檔案和子目錄,子目錄中又可以有任意多個檔案和子目錄

bin 存放二進位制可執行檔案(ls,cat,mkdir等)
boot 存放用於系統引導時使用的各種檔案
dev 用於存放裝置檔案
etc 存放系統配置檔案
home 存放所有使用者檔案的根目錄
lib 存放跟檔案系統中的程式執行所需要的共享庫及核心模組
mnt 系統管理員安裝臨時檔案系統的安裝點
opt 額外安裝的可選應用程式包所放置的位置
proc 虛擬檔案系統,存放當前記憶體的對映
root 超級使用者目錄

sbin 存放二進位制可執行檔案,只有root才能訪問
tmp 用於存放各種臨時檔案
usr 用於存放系統應用程式,比較重要的目錄/usr/local 本地管理員軟體安裝目錄
var 用於存放執行時需要改變資料的檔案

命令基本格式

cmd [options] [arguments],options稱為選項,arguments稱為引數

選項和引數都作為Shell命令執行時的輸入,它們之間用空格分隔開。

Linux是區分大小寫的
一般來說,後面跟的選項如果單字元選項前使用一個減號-。單詞選項前使用兩個減號–

這是一般的情況,有些命令還是不歸屬這種規律的(相對較少)~~~
例子:ls -a和ls -all,a 單個字元使用一個-,一個單詞all 使用兩個–

在Linux中,可執行的檔案也進行了分類:

內建命令:出於效率的考慮,將一些常用命令的解釋程式構造在Shell內部。
外接命令:存放在/bin、/sbin目錄下的命令
實用程式:存放在/usr/bin、/usr/sbin、/usr/share、/usr/local/bin等目錄下的實用程式
使用者程式:使用者程式經過編譯生成可執行檔案後,可作為Shell命令執行
Shell指令碼:由Shell語言編寫的批處理檔案,可作為Shell命令執行

[[email protected]~]
root為使用者名稱
~表示當前所在位置
localhost主機名
‘#’超級使用者
'$" 普通使用者

檔案的型別

在Linux下檔案的型別有這麼多:
普通檔案 -
目錄 d
符號連結 l
硬連結: 與普通檔案沒什麼不同,inode 都指向同一個檔案在硬碟中的區塊
軟連結: 儲存了其代表的檔案的絕對路徑,是另外一種檔案,在硬碟上有獨立的區塊,訪問時替換自身路徑(簡單地理解為 Windows 中常見的快捷方式)。
字元裝置檔案 c
塊裝置檔案b
套接字s
命名管道p
我們常見的就是普通檔案,目錄和符號連結。

使用者主目錄

Linux是多使用者的網路系統!所以,我們可以在Linux下建立多個使用者,每個使用者都會有自己專屬的空間。

所以,在建立使用者時,系統管理員會給每個使用者建立一個主目錄,通常在/home/目錄下
比如:使用者osmond的主目錄為:/home/osmond
使用者對自己主目錄的檔案擁有所有權,可以在自己的主目錄下進行相關操作

shell基礎

什麼是shell
shell是命令列直譯器。

echo 輸出命令

echo[選項][輸出內容]

選項:
-e:支援轉義

建立一個指令碼

vim hello.sh
進入編輯:
#!/bin/bash
# the first program

echo "hello world!"
建立一個指令碼

執行:

chmod 755 hello.sh

./hello.sh     #或者bash hello.sh