[系統]常用的 Linux 指令
以下是一些常用的 Linux 指令,這些指令涵蓋了文件和目錄的管理、系統監控、網絡操作等方面。### 1. 檢查子文件夾大小
bash
du -h var | sort -h
- `du -h var`:顯示 `var` 目錄及其子目錄的大小,`-h` 參數使輸出以人類可讀的格式顯示(例如 KB、MB)。
- `sort -h`:根據大小對輸出進行排序。
### 2. 文件和目錄管理
- **列出目錄內容**
ls -l
- `-l`:以詳細格式列出文件和目錄。
- **複製文件**
cp source.txt destination.txt
- **移動或重命名文件**
mv oldname.txt newname.txt
- **刪除文件**
rm filename.txt
- **刪除目錄**
rm -r directory_name
- `-r`:遞歸刪除目錄及其內容。
### 3. 系統監控
- **查看當前目錄的磁碟使用情況**
df -h
- **查看系統內存使用情況**
free -h
- **查看正在運行的進程**
top
### 4. 網絡操作
- **檢查網絡連接**
ping example.com
- **查看網絡接口信息**
ifconfig
- **查看當前的網絡連接**
netstat -tuln
### 5. 文件查找
- **查找文件**
find /path/to/search -name "filename.txt"
- **查找包含特定內容的文件**
grep -r "search_term" /path/to/search
### 6. 文件權限管理
- **更改文件權限**
chmod 755 filename.txt
- **更改文件擁有者**
chown user:group filename.txt
`egrep` 是一個用於在文本中進行模式匹配的命令,通常用於搜尋符合正則表達式的行。`-v` 和 `-i` 是 `egrep` 的兩個常用選項,分別用於反向匹配和不區分大小寫的匹配。以下是這兩個選項的詳細用法:
## 🛠️ `egrep -v` 和 `-i` 的用法
### 1. `egrep -v`
- **功能**: 反向匹配,顯示不符合指定模式的行。
- **語法**:
```bash
egrep -v 'pattern' filename
```
- **示例**:
假設有一個名為 `file.txt` 的文件,內容如下:
```
Apple
Banana
Cherry
Date
```
如果您想顯示不包含 "Banana" 的行,可以使用:
```bash
egrep -v 'Banana' file.txt
```
**輸出**:
```
Apple
Cherry
Date
```
### 2. `egrep -i`
- **功能**: 不區分大小寫的匹配,顯示符合指定模式的行。
- **語法**:
```bash
egrep -i 'pattern' filename
```
- **示例**:
假設有一個名為 `file.txt` 的文件,內容如下:
```
Apple
banana
Cherry
date
```
如果您想顯示包含 "banana" 的行(不區分大小寫),可以使用:
```bash
egrep -i 'banana' file.txt
```
**輸出**:
```
banana
```
### 3. 結合使用 `-v` 和 `-i`
您也可以同時使用 `-v` 和 `-i` 來反向匹配不區分大小寫的行。
- **示例**:
如果您想顯示不包含 "banana"(不區分大小寫)的行,可以使用:
```bash
egrep -vi 'banana' file.txt
```
**輸出**:
```
Apple
Cherry
date
```
在 Linux 中,邏輯卷管理(LVM)提供了靈活的磁碟管理功能。以下是一些與邏輯卷(Logical Volume, LV)相關的常用指令:
## 🛠️ LVM 相關指令
| 指令 | 說明 |
|--------------------------|--------------------------------------------------------------|
| `lvcreate` | 創建新的邏輯卷。 |
| `lvremove` | 刪除現有的邏輯卷。 |
| `lvextend` | 擴展現有的邏輯卷大小。 |
| `lvreduce` | 縮小現有的邏輯卷大小。 |
| `lvdisplay` | 顯示邏輯卷的詳細資訊,包括大小、狀態等。 |
| `lvscan` | 掃描並顯示所有邏輯卷的狀態。 |
| `lvchange` | 改變邏輯卷的屬性,例如啟用或禁用。 |
| `lvrename` | 重新命名現有的邏輯卷。 |
| `lvconvert` | 將邏輯卷轉換為不同的類型,例如從普通卷轉換為鏡像卷。 |
| `lvmsync` | 同步鏡像邏輯卷的數據。 |
## 📋 指令簡介
### `lvcreate`
用於創建新的邏輯卷。基本語法如下:
```bash
lvcreate -n <lv_name> -L <size> <vg_name>
```
例如,創建一個名為 `my_lv` 的邏輯卷,大小為 10G,屬於名為 `my_vg` 的卷組:
```bash
lvcreate -n my_lv -L 10G my_vg
```
### `lvremove`
用於刪除現有的邏輯卷。基本語法如下:
```bash
lvremove <vg_name>/<lv_name>
```
例如,刪除名為 `my_lv` 的邏輯卷:
```bash
lvremove my_vg/my_lv
```
### `lvextend`
用於擴展現有的邏輯卷大小。基本語法如下:
```bash
lvextend -L +<size> <vg_name>/<lv_name>
```
例如,將 `my_lv` 擴展 5G:
```bash
lvextend -L +5G my_vg/my_lv
```
### `lvreduce`
用於縮小現有的邏輯卷大小。基本語法如下:
```bash
lvreduce -L -<size> <vg_name>/<lv_name>
```
例如,將 `my_lv` 縮小 2G:
```bash
lvreduce -L -2G my_vg/my_lv
```
### `lvdisplay`
顯示邏輯卷的詳細資訊。基本語法如下:
```bash
lvdisplay <vg_name>/<lv_name>
```
例如,查看 `my_lv` 的詳細資訊:
```bash
lvdisplay my_vg/my_lv
```
### `lvscan`
掃描並顯示所有邏輯卷的狀態,顯示所有邏輯卷的簡要資訊。
### `lvchange`
改變邏輯卷的屬性,例如啟用或禁用。基本語法如下:
```bash
lvchange -<attribute> <vg_name>/<lv_name>
```
### `lvrename`
重新命名現有的邏輯卷。基本語法如下:
```bash
lvrename <vg_name> <old_lv_name> <new_lv_name>
```
### `lvconvert`
將邏輯卷轉換為不同的類型,例如從普通卷轉換為鏡像卷。基本語法如下:
```bash
lvconvert --mirror <number_of_mirrors> <vg_name>/<lv_name>
```
### `lvmsync`
用於同步鏡像邏輯卷的數據,確保數據一致性。
這些指令可以幫助您有效地管理和操作邏輯卷。如果您需要更詳細的用法或有其他問題,請隨時告訴我!
頁:
[1]