如今不少公司項目部署都使用的是 Linux 服務器,互聯網公司更是如此。對於大一些的互聯網公司,系統可能會很是複雜,本地沒法啓動,通常都會採用專門的開發機給開發人員開發測試使用。我實習期間接觸的項目沒一個能夠在本地啓動的,都須要寫好代碼,把代碼更新到開發機上,而後編譯部署,並查看部署過程當中是否有錯誤或是查看訪問這臺機器的日誌。而這些操做,都須要對基本的 Linux 命令熟悉。node
今天總結下 Linux 的相關概念和基本操做,若是想了解更多,能夠去看看《鳥哥的私房菜》。同時但願你們多動手實踐,這樣理解得更深入。shell
Linux 知識總結如下部份內容:Linux 常見概念、Linux 經常使用命令、vi 操做和一個最簡單的 shell 腳本。數據庫
擴展分區編程
必須分區vim
推薦分區緩存
/usr 系統軟件資源目錄bash
根目錄下的 bin 和 sbin,usr 目錄下的bin 和 sbin,這四個目錄都是用來保存系統命令的。proc 和 sys 目錄不能直接操做,這兩個目錄保存的是內存的過載點。服務器
命令 [選項] [參數]
ls [選項] [文件或目錄]
選項:less
mkdir -p [目錄名]
-p 遞歸建立編程語言
命令英文原意:make directories
cd [目錄]
命令英文原意:change directory
cd ~ 進入當前用戶的家目錄cd
cd - 進入上次目錄
cd .. 進入上一級目錄
cd . 進入當前目錄
查詢所在目錄位置:pwd
命令英文原意:print working directory
rm -rf [文件或目錄]
選項:
cp [選項] [源文件或目錄] [目標目錄]
選項:
mv [原文件或目錄] [目標目錄]
ln -s [原文件] [目標文件]
生成連接文件
選項:-s 建立軟連接
硬連接特徵:
軟連接特徵:
locate 文件名
在後臺數據庫中按文件名搜索,搜索速度更快
/var/lib/mlocate
locate 命令所搜索的後臺數據庫
updatedb
更新數據庫。默認一天一更新。快。缺點:只能按文件名來搜索
find [搜索範圍] [搜索條件]
搜索文件
find / -name install.log
避免大範圍搜索,會很是耗費系統資源
find 是在系統當中搜索符合條件的文件名。若是須要匹配,使用通配符匹配,通配符是徹底匹配。
* 匹配任意內容 ? 匹配任意一個字符 [] 匹配任意一箇中括號內的字符
find /root -iname install.log
不區分大小寫
find /root -user root
按照全部者搜索
find /root -nouser
查找沒有全部者的文件
find /var/log -mtime +10
查找10天前修改的文件
find . -size 25k
查找文件大小是 25KB 的文件
find . -inum 262422
查找i結點是 262422 的文件
whereis 命令名
搜索命令所在路徑及幫助文檔所在位置
選項:
which 命令能看到目錄和別名
grep [選項] 字符串 文件名
在文件當中匹配符合條件的字符串
選項:
man 命令命令 --help
help shell內部命令
info 命令
zip 格式壓縮
zip 壓縮文件名 源文件
壓縮文件
zip -r 壓縮文件名 源目錄
壓縮目錄
zip格式解壓縮
unzip 壓縮文件
gz 格式壓縮
gzip 源文件
壓縮爲.gz 格式的壓縮文件,源文件會消失
gzip -c 源文件 > 壓縮文件
壓縮爲.gz 格式,源文件保留
gzip -r 目錄
壓縮目錄下全部的子文件,可是不能壓縮目錄
gz 格式解壓縮
gzip -d 壓縮文件
解壓縮文件
gunzip 壓縮文件
解壓縮文件
bz2 格式壓縮
bzip2 源文件
壓縮爲.bz2格式,不保留源文件
bzip2 -k 源文件
壓縮以後保留源文件
bzip2命令不能壓縮目錄
打包命令tar
tar -cvf 打包文件名 源文件
解打包命令
tar -xvf 打包文件名
.tar.gz壓縮格式
其實.tar.gz 格式是先打包爲.tar格式,再壓縮爲.gz格式
tar -zcvf 壓縮包名.tar.gz 源文件
.tar.gz 解壓縮
tar -zxvf 壓縮包名.tar.gz
.tar.bz2壓縮格式
tar -jcvf 壓縮包名.tar.bz2 源文件
.tar.bz2 解壓縮
tar -jxvf 壓縮包名.tar.bz2
shutdown [選項] 時間
選項:
haltpoweroff
init 0
rebootinit 6
cat /etc/inittab
修改系統默認運行級別
runlevel
查詢系統運行級別
logout
退出登陸
mount
查詢系統中已經掛載的設備
mount -a
依據配置文件/etc/fstab 的內容,自動掛載
mount [-t 文件系統] [-o 特殊選項] 設備文件名 掛載點
mkdir /mnt/cdrom
創建掛載點
mount -t iso9660 /dev/cdrom /mnt/cdrom/
掛載光盤
umount 設備文件名或掛載點umount /mnt/cdrom
w 用戶名
命令輸出:
who 用戶名
last
lastlog
history [選項] [歷史命令保存文件]
選項
歷史命令默認會保存 1000 條,能夠在環境變量配置文件 /etc/profile 中進行修改
wc [選項] [文件名]
選項
分頁查看輸出內容
ls -l /etc | morenetstat -an | grep ESTABLISHED
/etc/group:存儲當前系統中全部用戶組信息
/etc/gshadow:存儲當前系統中用戶組的密碼信息
/etc/passwd:存儲當前系統中全部用戶的信息
/etc/shadow 存儲當前系統中全部用戶的密碼信息
vim + abc
打開文件並把光標定位到最後一行
vim +2 abc
第二行
vim +/xxx abc
跳到指定字符串第一次出現的地方
同時打開多個文件 可用n N prev來切換
:w
:q
:!
/xxx
?xxx
echo [選項] [輸出內容]
首行
#!/bin/bashecho "hello world"
賦予執行權限,直接運行
chmod 755 hello.sh./hello.sh
經過bash 執行腳本
bash hello.sh