---
# System prepended metadata

title: Linux常用指令

---

# Linux常用指令
基本觀念
==
### Bash 和 Shell差在哪
> Bash和Shell之间的具体差异在于它们的语法和功能。Bash是一种更强大和功能更丰富的Shell，它支持命令历史记录、命令补全、别名、函数、条件语句、循环和其他高级功能。相比之下，Shell的功能较为基本，但它更加轻量级和快速。在Linux系统中，Bash是默认的Shell，但是在某些情况下，Shell可能更适合特定的任务。


![](https://hackmd.io/_uploads/r1LN7Cz1n.png)

基礎指令
==
### 常見
```bash=
pwd #查看當前所在目錄
mkdir ${資料夾名稱}
mkdir -p aa/bb #創建多層級
touch test.txt #新建檔案
mv ${檔名} ${搬移路徑} #也可以用來改檔案名稱
cp ${檔名} ${新檔案名} #複製檔案
rm #刪除檔案
rm -r #遞迴刪除
cat xxx.file # 打印所有檔案內容
less -M {file} 
# g 跳轉第一頁
# G 跳轉最末頁
# /{搜尋關鍵字} , 按下n能夠跳轉指定的搜索關鍵字
```

### 用戶
``` bash=
useradd ${name} #添加用戶最基礎,需要手動添加客製化 
adduser ${name} #可以自動幫新建用戶設定東西,像是添加home路徑
userdel ${name} #刪除用戶
```

### 搜尋檔案路徑
``` sh=
find / -name .bashrc
```
命令 find / -name .bashrc 告訴 find,
從根目錄 / 開始，搜索名稱為 .bashrc 的文件,
這裡的 -name 是一個表達式，它指示 find 命令按照文件名進行匹配。

## .bashrc檔案修改,並配置永久alias變數
在/root資料夾底下輸入ls -al(顯示隱藏檔案)
即可看到.bashrc檔案,找到
``` sh=
# some more ls aliases
alias ll='ls -alF'
```
接著新增 alias xx='xxxxx'


## 校正時區
```bash=
sudo timedatectl set-timezone Asia/Taipei
```


## 安裝vim
安装vim：根据容器的Linux发行版使用相应的包管理工具，例如在Ubuntu中可以执行
```
apt-get update
apt-get install vim。
```


系統狀態 System Status
==
## 系統版本
```sh=
lsb_release -a
这个命令用于显示关于Linux标准基础（Linux Standard Base）和特定的发行版信息
```


## 查看指定port占用狀況
``` sh=
sudo lsof -i :8082
```

## 查看CPU 記憶體使用狀況
``` sh=
top
```

網路狀態 Network Status
## 查看 port 轉發服務地址
``` sh=
sudo iptables -t nat -nvxL
```


zsh配置
==
* 安裝 ohmyzsh
[https://github.com/ohmyzsh/ohmyzsh](https://github.com/ohmyzsh/ohmyzsh)
* 打印當前 SHELL 版本
``` sh=
echo $SHELL
```


別名 Alias
==
操作終端機時經常需要打目錄路徑來切換,
可以把常用目錄取一個別名,
來加快切換目錄的時間
* 列出所有別名
```bash=
alias
```
* 建立別名
```bash=
alias test='cd /path...'
```
* 使用別名
```bash=
test
```
* 刪除別名
```bash=
unalias test
```

網路操作
==
## wget 獲取json數據 而不是下載檔案
```
wget -q -O - http://localhost:3087/todolist
```
