1,命令基本格式
2绅喉,文件處理命令
3渠鸽,文件搜索命令
4,幫助命令
5柴罐,壓縮與解壓縮命令
6徽缚,關(guān)機與重啟命令
7,其他常用命令
root登錄用戶
localhost 主機名
~ 當(dāng)前所在目錄 家目錄
pwd 家目錄
-rw -r —r —
-文件類型(-文件 d目錄 |軟鏈接文件)
rw- r— r—
u所有者 g所屬組 o其他人
r讀 w寫 x執(zhí)行
建立目錄
遞歸
mkdir -p
cd ~家目錄
簡化操作:
cd ~ 進入當(dāng)前用戶的家目錄
cd
cd - 進入上次目錄
cd ..進入上一級目錄
cd . 進入當(dāng)前目錄
相對路徑:參照當(dāng)前所在目錄革屠,進行查找
如: [root@imooc ~]# cd ../usr/local/src/
絕對路徑:從根目錄開始指定凿试,一級一級遞歸查找。在任何目錄下似芝,都能進入指定位置
如:[root@imooc ~]# cd /etc/
刪除目錄
rmdir
touch abc
rm -rf 強制刪除
-r 刪除目錄
-f 強制
復(fù)制命令:cp
cp [選項] [原文件或目錄] [目標(biāo)目錄]
-r復(fù)制目錄
-p連帶文件屬性復(fù)制
-d若源文件是鏈接文件那婉,則復(fù)制鏈接屬性
-a相當(dāng)于-pdr (所有內(nèi)容都一樣)
剪切或改名命令:mv
mv [原文件或目錄] [目標(biāo)目錄]
常用目錄的作用
/ 根目錄
/bin 命令保存目錄
/boot 啟動目錄、啟動相關(guān)文件
/dev 設(shè)備文件保存目錄
/etc 配置文件保存目錄
/home 普通用戶的家目錄
/lib 系統(tǒng)庫保存目錄
/mnt 系統(tǒng)掛載目錄
/media 掛載目錄
根目錄下的bin和sbin党瓮,usr目錄下的bin和sbin详炬,這四個目錄都是用來保存系統(tǒng)命令的
/root 超級用戶的家目錄
/tmp 臨時目錄
/sbin命令保存目錄(超級用戶才能使用的目錄)
/proc直接寫上內(nèi)存的
/sys
/usr 系統(tǒng)軟件資源目錄
/usr/bin/系統(tǒng)命令(普通用戶)
/usr/sbin/系統(tǒng)命令(超級用戶)
/var 系統(tǒng)相關(guān)文檔內(nèi)容
鏈接命令
ln -s [原文件] [目標(biāo)文件]
硬鏈接特征
1,擁有相同的i節(jié)點和存儲block塊寞奸,可以看做是同一個文件
2痕寓,可通過i節(jié)點識別 ls -i
3,不能跨分區(qū)
4蝇闭,不能針對目錄使用
軟鏈接特征:
1呻率,類似Windows快捷方式
2,軟鏈接擁有自己的i節(jié)點和block塊呻引,但是數(shù)據(jù)塊中只保存原文件的文件名和i節(jié)點好礼仗,并沒有實際的文件數(shù)據(jù)
3,lrwxrwxrwx l 軟鏈接
軟鏈接文件權(quán)限都為rwxrwxrwx
4,修改任意文件元践,另一個都改變
5韭脊,刪除原文件,軟鏈接不能使用
軟鏈接 原文件需要絕對路徑
Linux中文件搜索命令locale
文件搜索命令locate
命令搜索命令whereis與which
文件搜索命令find
字符串搜索命令grep
find命令與grep命令的區(qū)別
locate命令格式
locate文件名
在后臺數(shù)據(jù)庫中按文件名搜索单旁,搜索速度很快
/var/lib/mlocate
locate命令所搜索的后臺數(shù)據(jù)庫 (每天更新)
updatedab
更新數(shù)據(jù)庫
/etc/updatedb.conf 配置文件
locate速度快但只能按文件名搜索
搜索命令的命令whereis
搜索命令所在路徑及幫助文檔所在位置
選項:
-b:只查找可執(zhí)行文件
-m:只查找?guī)椭募?/p>
which可看到別名
系統(tǒng)環(huán)境命令:
echo $PATH
find [搜索范圍] [搜索條件]
搜索文件
find / -name install.log
避免大規(guī)模搜索沪羔,會非常耗費系統(tǒng)資源
find是在系統(tǒng)當(dāng)中搜索符合條件的文件名。如果需要匹配象浑,使用通配符匹配蔫饰,通配符是完全匹配
Linux中的通配符
*匹配任意內(nèi)容
?匹配任意一個字符
[]中括號匹配任意一個中括號內(nèi)的字符
find /root -iname install.log
不區(qū)分大小寫
find /root -user root
按照所有者搜索
find /root -nouser
查找沒有所有者的文件
find /var/log/ -mtime +10
查找10天前修改的文件
-10 10天內(nèi)修改的文件
10 10當(dāng)天修改的文件
+10 10前修改的文件
atime 文件訪問時間
ctime改變文件屬性
mtime修改文件內(nèi)容
find . -size 25k
find . -size 25M
查找當(dāng)前目錄(.)文件大小是25k的文件
-25k 小于25k的文件
25k 等于25k的文件
+25k 大于25k的文件
find . -inum 262422
查找i節(jié)點是26422的文件
ls -i i節(jié)點
find /etc -size +20k -a -size -1M
查找/etc/目錄下愉豺,大于20kb并且小于1Mb的文件
-a and 邏輯與篓吁,兩個條件都滿足
-o or 邏輯或,兩個條件滿足一個即可
find /etc -size +20k -a -size -1M -exec ls -lh {} ;
查找/etc/目錄下蚪拦,大于20kb并且小于1Mb的文件杖剪,并顯示詳細信息
-exec/-ok 命令{} ; 對搜索結(jié)果執(zhí)行操作
比如找到文件并刪除
find /root -inum 262421 -exec rm -rf {} ;
字符串搜索grep
grep [選項] 字符串 文件名
在文件當(dāng)中匹配符合條件的字符串
選項:
-i 忽略大小寫
-v 排除指定字符串
find命令:在系統(tǒng)當(dāng)中搜索符合條件的文件名,如果需要匹配驰贷,使用通配符匹配盛嘿,通配符是完全匹配。
grep命令:在文件中搜索符合條件的字符串括袒,如果需要匹配次兆,使用正則表達式進行匹配,正則表達式時包含匹配
幫助命令man
幫助命令
man 命令
獲取指定命令的幫助
man ls
查看ls的幫助
man -f 命令
相當(dāng)于
whatis 命令
shell內(nèi)部命令幫助
help shell內(nèi)部命令
獲取shell內(nèi)部命令的幫助
例如:
whereis cd
確定是否是shell內(nèi)部命令 沒有可執(zhí)行文件 就是shell自帶的
help cd
獲取內(nèi)部命令幫助
壓縮有解壓縮命令
常用壓縮格式:.zip .gz .bz2 .tar.gz .tar.bz2
zip 壓縮文件名 源文件
壓縮文件
zip -r 壓縮文件名 源目錄
壓縮目錄
unzip壓縮文件
.gz格式壓縮
gzip源文件
gzip 源文件
壓縮為.gz格式的壓縮文件箱熬,源文件會消失
gzip -c 源文件 > 壓縮文件
壓縮為.gz格式类垦,源文件保留
gzip -r 目錄
壓縮目錄下所有的子文件狈邑,但是不能壓縮目錄
gzip -d 壓縮文件
解壓縮文件
gunzip 壓縮文件
解壓縮文件
bz2壓縮方法或命令 同 gzip
打包命名tar
tar -cvf 打包文件名 源文件
選項:
-c:打包
-v:顯示過程
-f:指定打包后的文件名
例如:
tar -cvf longzls.tar longzls
目錄城须,先打包再壓縮
解打包命令
tar -xvf 打包文件名
選項:
-x:解大包
例如:
tar -xvf longzls.tar
tar -zcvf 壓縮包名.tar.gz 源文件
選項:
-z:壓縮為.tar.gz格式
tar -zxvf 壓縮名.tar.gz
選項:
-x:解壓縮.tar.gz格式
壓縮多個文件 空格隔開
1,shutdown命令
[root@localhost ~] # shutdown [選項] 時間
選項:
-c:取消前一個關(guān)機命令
-h:關(guān)機
-r:重啟
2米苹,其他關(guān)機命令
halt
poweroff
init 0
不保存數(shù)據(jù)
3糕伐,其他重啟命令
reboot
init 6
4,系統(tǒng)運行級別
0蘸嘶,關(guān)機
1良瞧,單用戶
2,不完全用戶训唱,不含nfs服務(wù)
3褥蚯,完全多用戶
4,未分配
5况增,圖形界面
6赞庶,重啟
run level
5,退出登錄命令
logout
掛載命令
用戶登錄查看和用戶交互命令
1,查詢與自動掛載
[root@localhost ~] # mount
查詢系統(tǒng)中已經(jīng)掛載的設(shè)備
[root@localhost ~] # mount -a
以及配置文件/etc/fstab的內(nèi)容歧强,自動掛載
2澜薄,掛載命令格式
mount [-t 文件系統(tǒng)] [-o 特殊選項] 設(shè)備文件名 掛載點
選項:
-t 文件系統(tǒng):加入文件類型系統(tǒng)來指定掛載的類型,可以ext3摊册、ext4肤京、iso9660等文件系統(tǒng)
-o 特殊選項:可以指定掛載的額外選項
例如:
exec/noexec 執(zhí)行/不執(zhí)行,設(shè)定是否允許在文件系統(tǒng)中執(zhí)行可執(zhí)行的文件茅特,默認是exec允許
rw/ro 讀寫/只讀忘分,文件系統(tǒng)掛載時,是否具有讀寫權(quán)限温治,默認是rw
3饭庞,掛載光盤
mkdir /mnt/cdrom/
建立掛載點
mount -t iso 9660 /dev/cdrom /mnt/cdrom
掛載光盤
mount /dev/sr0 /mnt/cdrom/
掛載光盤
sr0或cdrom
4,卸載命令
unmount /mnt/cdrom/
5熬荆,掛載u盤
fdisk -l
查看U盤設(shè)備文件名
mount -t vfat /dev/sdb1 /mnt/usb/
注意:Linux默認是不支持NTFS文件系統(tǒng)的
fdisk -l
查看登錄用戶信息
[root@localhost ~] # w
w
命令輸出:
USER:登錄的用戶名
TTY:登錄終端
FROM:從哪個IP地址登錄
LOGIN@:登錄時間
IDLE:用戶閑置時間
JCPU舟山;指的是和改終端連接的所有進程中占用的時間。這個時間里并不包括過去的后臺作業(yè)時間卤恳,但卻包括當(dāng)前正在運行的后臺作業(yè)所占用的時間累盗。
PCPU:是指當(dāng)前進程所占用的時間;
WHAT:當(dāng)前正在運行的命令
[root@localhost ~] # who
[root@localhost ~] # last
默認是讀取/var/log/wtmp文件數(shù)據(jù)
系統(tǒng)中所有登錄的信息
[root@localhost ~] # lastlog
查看所有用戶的最后一次登錄時間
默認是讀取/var/log/lastlog文件數(shù)據(jù)
Shell基礎(chǔ)
一突琳,shell概述
二若债,腳本執(zhí)行方式
三,bash的基本功能
1拆融,shell是什么
shell是一個命令行解釋器蠢琳,它為用戶提供了一個向Linux內(nèi)核發(fā)送請求以便運行程序的界面系統(tǒng)程序,用戶也用shell來啟動镜豹、掛起傲须、停止甚至是編寫一些程序。
shell還是一個功能相當(dāng)強大的編程語言趟脂、易編寫泰讽、易調(diào)試,靈活性強昔期。shell是解釋執(zhí)行的腳本語言已卸,在shell中可以直接調(diào)用Linux系統(tǒng)命令
shell的兩種主要語法類型有Bourne和C,這兩種語法彼此不兼硼一。Bourne家族主要包括sh累澡、ksh、Bash般贼、psh愧哟、zsh惑申;C家族主要包括:csh、tcsh
看自己的shell是哪個
echo $SHELL
二翅雏,基本執(zhí)行
1圈驼,echo輸出命令
echo [選項] [輸出內(nèi)容]
選項:
-e:支持反斜線控制的字符轉(zhuǎn)換
2,第一個腳本
3望几,腳本執(zhí)行
賦予執(zhí)行權(quán)限绩脆,直接運行
chmod 755 hello.sh
./hello.sh
通過Bash調(diào)用執(zhí)行腳本
bash hello.sh
alias
別名永久生效與刪除別名
vi ~/.bashrc
寫入環(huán)境變量配置文件
unalias 別名
刪除別名
source .bashrc
立即生效
命令生效順序
第一順位執(zhí)行用絕對路徑或相對路徑執(zhí)行的命令
第二順位執(zhí)行別名
第三順位執(zhí)行bash的內(nèi)部命令
第四順位執(zhí)行按照$PATH環(huán)境變量定義的目錄查找順序找到的第一個命令
常用快捷鍵
ctrl+c 強制終止當(dāng)前命令
ctrl+l 清屏
ctrl+a 光標(biāo)移動到命令行行首
ctrl+e 光標(biāo)移動到命令行行尾
ctrl+u 從光標(biāo)所在位置刪除行首
ctrl+z 把命令放入后臺
ctrl+r 在歷史命令中搜索
1,歷史命令
history [選項] [歷史命令保存文件]
選項:
-c:清空歷史命令
-w:把緩存中的歷史命令寫入歷史命令保存文件 ~/.bash_history
文件中和 history展示的并不一樣
history -w 強制寫入 ~/.bash_history
歷史命令默認會保存1000條橄抹,可以在環(huán)境變量配置文件/etc/profile中進行修改
HISTSIZE=10000
歷史命令的調(diào)用:
使用上下箭頭調(diào)用以前的歷史命令
使用 !n 重復(fù)執(zhí)行第n條歷史命令
使用!! 重復(fù)執(zhí)行上一條命令
使用!字符串 重復(fù)執(zhí)行最后條以該字符串開頭的命令
標(biāo)準輸入輸出
鍵盤 /dev/stdin 0
顯示器 /dev/sdtout 1
顯示器 /dev/stderr 2
2靴迫,輸出重定向
命令 > 文件 以覆蓋的方式,把命令的正確輸出輸出到指定的文件或設(shè)備當(dāng)中
命令 >> 文件 以追加的方式楼誓,把命令的正確輸出輸出到指定的文件或設(shè)備當(dāng)中
錯誤命令 2>文件 以覆蓋的方式玉锌,把命令的錯誤輸出輸出到指定的文件或設(shè)備中
錯誤命令 2>>文件 以追加的方式,把命令的錯誤輸出輸出到指定的文件或設(shè)備中
正確輸出和錯誤輸出同時保存
命令 > 文件 2 >&1
命令 >> 文件2>&1
命令 &>文件
命令 &>>文件
命令 >>文件1 2>> 文件2 把正確的輸出追加到文件1中疟羹,把錯誤的輸出追加到文件2中
3主守,輸入重定向
[root@localhost ~] # wc [選項] [文件名]
選項:
-c統(tǒng)計字節(jié)數(shù)
-w統(tǒng)計單詞數(shù)
-l統(tǒng)計行數(shù)
管道符:
1,多命令順序執(zhí)行
; 命令1榄融;命令2
多個命令順序執(zhí)行参淫,命令直接沒有任何邏輯關(guān)系
&& 命令1&&命令2
邏輯與 當(dāng)命令1正確執(zhí)行,則命令2才會執(zhí)行愧杯;當(dāng)命令1執(zhí)行不正確涎才,則命令2不會執(zhí)行
|| 命令1||命令2
邏輯或 當(dāng)命令1執(zhí)行不正確,則命令2才會執(zhí)行力九;當(dāng)命令1正確執(zhí)行耍铜,則命令2才會執(zhí)行
利用正確輸出后 輸出yes 判斷執(zhí)行成功與否
ls && echo yes || echo no
2,管道符
命令格式:
命令1 | 命令2
命令1的正確輸出作為命令2的操作對象
eg:
ls -l /etc/ | more
對結(jié)果分屏顯示
eg:
netstat -an | grep ESTABLISHED
判斷服務(wù)器上多少客戶端在連接
1跌前,通配符
? 匹配一個任意字符
*匹配0個或任意多個字符
[]匹配括號中任意一個字符
[-]匹配括號中任意一個字符棕兼,-代表一個范圍
[^]邏輯非,表示匹配不是括號中的一個字符
ls dzp*
2舒萎,bash中其他特殊符號
’’ 單引號程储,在單引號中所有的特殊符號蹭沛,如“$”和“`”都沒有特殊含義
“”雙引號臂寝,在雙引號中特殊符號都沒有特殊含義,但是“$”摊灭、“`”和“\”是例外咆贬,擁有“調(diào)用變量的值”、“引用命令”和”轉(zhuǎn)義符“的特殊含義
``反引號帚呼,括起來的內(nèi)容是系統(tǒng)命令掏缎,在bash中會先執(zhí)行它皱蹦。和$()作用一樣
$() 和反引號作用一樣,用來引用系統(tǒng)命令眷蜈。
$ 用于調(diào)用變量的值
\ 轉(zhuǎn)義符沪哺,跟蹤\之后的特殊符號將失去特殊含義
直接覆蓋原來的文件?
使用ssh命令行傳輸文件到遠程服務(wù)器
1酌儒,上傳本地文件到服務(wù)器
scp /path/filename username@servername:/path/
例如scp /var/www/test.php root@192.168.0.101:/var/www/
把本機/var/www/目錄下的test.php文件上傳到這臺服務(wù)器上的/var/www/目錄中
2辜妓,從服務(wù)器上下載文件
下載文件我們經(jīng)常使用wget,但是如果沒有http服務(wù)忌怎,如何從服務(wù)器上下載文件呢籍滴?
scp username@servername:/path/filename /var/www/local_dir
例如scp root@192.168.0.101:/var/www/test.txt /var/www/local_dir
3,從服務(wù)器下載整個目錄
scp -r username@servername:/var/www/remote_dir/ /var/www/local_dir
4榴啸,上傳目錄到服務(wù)器
scp -r local_dir username@servername:remote_dir
scp -r /Users/xhzh/yxFiles/pythonProj/CFlaskProj root@10.106.158.192:/root/zhxh_proj
ModuleNotFoundError: No module named 'flask_sqlalchemy'
1孽惰,命令基本格式
2,文件處理命令
3鸥印,文件搜索命令
4勋功,幫助命令
5,壓縮與解壓縮命令
6库说,關(guān)機與重啟命令
7酝润,其他常用命令
root登錄用戶
localhost 主機名
~ 當(dāng)前所在目錄 家目錄
pwd 家目錄
-rw -r —r —
-文件類型(-文件 d目錄 |軟鏈接文件)
rw- r— r—
u所有者 g所屬組 o其他人
r讀 w寫 x執(zhí)行
建立目錄
遞歸
mkdir -p
cd ~家目錄
簡化操作:
cd ~ 進入當(dāng)前用戶的家目錄
cd
cd - 進入上次目錄
cd ..進入上一級目錄
cd . 進入當(dāng)前目錄
相對路徑:參照當(dāng)前所在目錄,進行查找
如: [root@imooc ~]# cd ../usr/local/src/
絕對路徑:從根目錄開始指定璃弄,一級一級遞歸查找要销。在任何目錄下,都能進入指定位置
如:[root@imooc ~]# cd /etc/
刪除目錄
rmdir
touch abc
rm -rf 強制刪除
-r 刪除目錄
-f 強制
復(fù)制命令:cp
cp [選項] [原文件或目錄] [目標(biāo)目錄]
-r復(fù)制目錄
-p連帶文件屬性復(fù)制
-d若源文件是鏈接文件夏块,則復(fù)制鏈接屬性
-a相當(dāng)于-pdr (所有內(nèi)容都一樣)
剪切或改名命令:mv
mv [原文件或目錄] [目標(biāo)目錄]
常用目錄的作用
/ 根目錄
/bin 命令保存目錄
/boot 啟動目錄疏咐、啟動相關(guān)文件
/dev 設(shè)備文件保存目錄
/etc 配置文件保存目錄
/home 普通用戶的家目錄
/lib 系統(tǒng)庫保存目錄
/mnt 系統(tǒng)掛載目錄
/media 掛載目錄
根目錄下的bin和sbin,usr目錄下的bin和sbin脐供,這四個目錄都是用來保存系統(tǒng)命令的
/root 超級用戶的家目錄
/tmp 臨時目錄
/sbin命令保存目錄(超級用戶才能使用的目錄)
/proc直接寫上內(nèi)存的
/sys
/usr 系統(tǒng)軟件資源目錄
/usr/bin/系統(tǒng)命令(普通用戶)
/usr/sbin/系統(tǒng)命令(超級用戶)
/var 系統(tǒng)相關(guān)文檔內(nèi)容
鏈接命令
ln -s [原文件] [目標(biāo)文件]
硬鏈接特征
1浑塞,擁有相同的i節(jié)點和存儲block塊,可以看做是同一個文件
2政己,可通過i節(jié)點識別 ls -i
3酌壕,不能跨分區(qū)
4,不能針對目錄使用
軟鏈接特征:
1歇由,類似Windows快捷方式
2卵牍,軟鏈接擁有自己的i節(jié)點和block塊,但是數(shù)據(jù)塊中只保存原文件的文件名和i節(jié)點好沦泌,并沒有實際的文件數(shù)據(jù)
3糊昙,lrwxrwxrwx l 軟鏈接
軟鏈接文件權(quán)限都為rwxrwxrwx
4,修改任意文件谢谦,另一個都改變
5释牺,刪除原文件萝衩,軟鏈接不能使用
軟鏈接 原文件需要絕對路徑
Linux中文件搜索命令locale
文件搜索命令locate
命令搜索命令whereis與which
文件搜索命令find
字符串搜索命令grep
find命令與grep命令的區(qū)別
locate命令格式
locate文件名
在后臺數(shù)據(jù)庫中按文件名搜索,搜索速度很快
/var/lib/mlocate
locate命令所搜索的后臺數(shù)據(jù)庫 (每天更新)
updatedab
更新數(shù)據(jù)庫
/etc/updatedb.conf 配置文件
locate速度快但只能按文件名搜索
搜索命令的命令whereis
搜索命令所在路徑及幫助文檔所在位置
選項:
-b:只查找可執(zhí)行文件
-m:只查找?guī)椭募?/p>
which可看到別名
系統(tǒng)環(huán)境命令:
echo $PATH
find [搜索范圍] [搜索條件]
搜索文件
find / -name install.log
避免大規(guī)模搜索没咙,會非常耗費系統(tǒng)資源
find是在系統(tǒng)當(dāng)中搜索符合條件的文件名猩谊。如果需要匹配,使用通配符匹配祭刚,通配符是完全匹配
Linux中的通配符
*匹配任意內(nèi)容
预柒?匹配任意一個字符
[]中括號匹配任意一個中括號內(nèi)的字符
find /root -iname install.log
不區(qū)分大小寫
find /root -user root
按照所有者搜索
find /root -nouser
查找沒有所有者的文件
find /var/log/ -mtime +10
查找10天前修改的文件
-10 10天內(nèi)修改的文件
10 10當(dāng)天修改的文件
+10 10前修改的文件
atime 文件訪問時間
ctime改變文件屬性
mtime修改文件內(nèi)容
find . -size 25k
find . -size 25M
查找當(dāng)前目錄(.)文件大小是25k的文件
-25k 小于25k的文件
25k 等于25k的文件
+25k 大于25k的文件
find . -inum 262422
查找i節(jié)點是26422的文件
ls -i i節(jié)點
find /etc -size +20k -a -size -1M
查找/etc/目錄下,大于20kb并且小于1Mb的文件
-a and 邏輯與袁梗,兩個條件都滿足
-o or 邏輯或宜鸯,兩個條件滿足一個即可
find /etc -size +20k -a -size -1M -exec ls -lh {} ;
查找/etc/目錄下,大于20kb并且小于1Mb的文件遮怜,并顯示詳細信息
-exec/-ok 命令{} ; 對搜索結(jié)果執(zhí)行操作
比如找到文件并刪除
find /root -inum 262421 -exec rm -rf {} ;
字符串搜索grep
grep [選項] 字符串 文件名
在文件當(dāng)中匹配符合條件的字符串
選項:
-i 忽略大小寫
-v 排除指定字符串
find命令:在系統(tǒng)當(dāng)中搜索符合條件的文件名淋袖,如果需要匹配,使用通配符匹配锯梁,通配符是完全匹配即碗。
grep命令:在文件中搜索符合條件的字符串,如果需要匹配陌凳,使用正則表達式進行匹配剥懒,正則表達式時包含匹配
幫助命令man
幫助命令
man 命令
獲取指定命令的幫助
man ls
查看ls的幫助
man -f 命令
相當(dāng)于
whatis 命令
shell內(nèi)部命令幫助
help shell內(nèi)部命令
獲取shell內(nèi)部命令的幫助
例如:
whereis cd
確定是否是shell內(nèi)部命令 沒有可執(zhí)行文件 就是shell自帶的
help cd
獲取內(nèi)部命令幫助
壓縮有解壓縮命令
常用壓縮格式:.zip .gz .bz2 .tar.gz .tar.bz2
zip 壓縮文件名 源文件
壓縮文件
zip -r 壓縮文件名 源目錄
壓縮目錄
unzip壓縮文件
.gz格式壓縮
gzip源文件
gzip 源文件
壓縮為.gz格式的壓縮文件,源文件會消失
gzip -c 源文件 > 壓縮文件
壓縮為.gz格式合敦,源文件保留
gzip -r 目錄
壓縮目錄下所有的子文件初橘,但是不能壓縮目錄
gzip -d 壓縮文件
解壓縮文件
gunzip 壓縮文件
解壓縮文件
bz2壓縮方法或命令 同 gzip
打包命名tar
tar -cvf 打包文件名 源文件
選項:
-c:打包
-v:顯示過程
-f:指定打包后的文件名
例如:
tar -cvf longzls.tar longzls
目錄,先打包再壓縮
解打包命令
tar -xvf 打包文件名
選項:
-x:解大包
例如:
tar -xvf longzls.tar
tar -zcvf 壓縮包名.tar.gz 源文件
選項:
-z:壓縮為.tar.gz格式
tar -zxvf 壓縮名.tar.gz
選項:
-x:解壓縮.tar.gz格式
壓縮多個文件 空格隔開
1充岛,shutdown命令
[root@localhost ~] # shutdown [選項] 時間
選項:
-c:取消前一個關(guān)機命令
-h:關(guān)機
-r:重啟
2保檐,其他關(guān)機命令
halt
poweroff
init 0
不保存數(shù)據(jù)
3,其他重啟命令
reboot
init 6
4崔梗,系統(tǒng)運行級別
0夜只,關(guān)機
1,單用戶
2蒜魄,不完全用戶扔亥,不含nfs服務(wù)
3,完全多用戶
4谈为,未分配
5旅挤,圖形界面
6,重啟
run level
5峦阁,退出登錄命令
logout
掛載命令
用戶登錄查看和用戶交互命令
1谦铃,查詢與自動掛載
[root@localhost ~] # mount
查詢系統(tǒng)中已經(jīng)掛載的設(shè)備
[root@localhost ~] # mount -a
以及配置文件/etc/fstab的內(nèi)容耘成,自動掛載
2榔昔,掛載命令格式
mount [-t 文件系統(tǒng)] [-o 特殊選項] 設(shè)備文件名 掛載點
選項:
-t 文件系統(tǒng):加入文件類型系統(tǒng)來指定掛載的類型驹闰,可以ext3、ext4撒会、iso9660等文件系統(tǒng)
-o 特殊選項:可以指定掛載的額外選項
例如:
exec/noexec 執(zhí)行/不執(zhí)行嘹朗,設(shè)定是否允許在文件系統(tǒng)中執(zhí)行可執(zhí)行的文件,默認是exec允許
rw/ro 讀寫/只讀诵肛,文件系統(tǒng)掛載時屹培,是否具有讀寫權(quán)限,默認是rw
3怔檩,掛載光盤
mkdir /mnt/cdrom/
建立掛載點
mount -t iso 9660 /dev/cdrom /mnt/cdrom
掛載光盤
mount /dev/sr0 /mnt/cdrom/
掛載光盤
sr0或cdrom
4褪秀,卸載命令
unmount /mnt/cdrom/
5,掛載u盤
fdisk -l
查看U盤設(shè)備文件名
mount -t vfat /dev/sdb1 /mnt/usb/
注意:Linux默認是不支持NTFS文件系統(tǒng)的
fdisk -l
查看登錄用戶信息
[root@localhost ~] # w
w
命令輸出:
USER:登錄的用戶名
TTY:登錄終端
FROM:從哪個IP地址登錄
LOGIN@:登錄時間
IDLE:用戶閑置時間
JCPU薛训;指的是和改終端連接的所有進程中占用的時間媒吗。這個時間里并不包括過去的后臺作業(yè)時間,但卻包括當(dāng)前正在運行的后臺作業(yè)所占用的時間乙埃。
PCPU:是指當(dāng)前進程所占用的時間闸英;
WHAT:當(dāng)前正在運行的命令
[root@localhost ~] # who
[root@localhost ~] # last
默認是讀取/var/log/wtmp文件數(shù)據(jù)
系統(tǒng)中所有登錄的信息
[root@localhost ~] # lastlog
查看所有用戶的最后一次登錄時間
默認是讀取/var/log/lastlog文件數(shù)據(jù)
Shell基礎(chǔ)
一,shell概述
二介袜,腳本執(zhí)行方式
三甫何,bash的基本功能
1,shell是什么
shell是一個命令行解釋器遇伞,它為用戶提供了一個向Linux內(nèi)核發(fā)送請求以便運行程序的界面系統(tǒng)程序辙喂,用戶也用shell來啟動、掛起鸠珠、停止甚至是編寫一些程序加派。
shell還是一個功能相當(dāng)強大的編程語言、易編寫跳芳、易調(diào)試芍锦,靈活性強。shell是解釋執(zhí)行的腳本語言飞盆,在shell中可以直接調(diào)用Linux系統(tǒng)命令
shell的兩種主要語法類型有Bourne和C娄琉,這兩種語法彼此不兼。Bourne家族主要包括sh吓歇、ksh孽水、Bash、psh城看、zsh女气;C家族主要包括:csh、tcsh
看自己的shell是哪個
echo $SHELL
二测柠,基本執(zhí)行
1炼鞠,echo輸出命令
echo [選項] [輸出內(nèi)容]
選項:
-e:支持反斜線控制的字符轉(zhuǎn)換
2缘滥,第一個腳本
3,腳本執(zhí)行
賦予執(zhí)行權(quán)限谒主,直接運行
chmod 755 hello.sh
./hello.sh
通過Bash調(diào)用執(zhí)行腳本
bash hello.sh
alias
別名永久生效與刪除別名
vi ~/.bashrc
寫入環(huán)境變量配置文件
unalias 別名
刪除別名
source .bashrc
立即生效
命令生效順序
第一順位執(zhí)行用絕對路徑或相對路徑執(zhí)行的命令
第二順位執(zhí)行別名
第三順位執(zhí)行bash的內(nèi)部命令
第四順位執(zhí)行按照$PATH環(huán)境變量定義的目錄查找順序找到的第一個命令
常用快捷鍵
ctrl+c 強制終止當(dāng)前命令
ctrl+l 清屏
ctrl+a 光標(biāo)移動到命令行行首
ctrl+e 光標(biāo)移動到命令行行尾
ctrl+u 從光標(biāo)所在位置刪除行首
ctrl+z 把命令放入后臺
ctrl+r 在歷史命令中搜索
1朝扼,歷史命令
history [選項] [歷史命令保存文件]
選項:
-c:清空歷史命令
-w:把緩存中的歷史命令寫入歷史命令保存文件 ~/.bash_history
文件中和 history展示的并不一樣
history -w 強制寫入 ~/.bash_history
歷史命令默認會保存1000條,可以在環(huán)境變量配置文件/etc/profile中進行修改
HISTSIZE=10000
歷史命令的調(diào)用:
使用上下箭頭調(diào)用以前的歷史命令
使用 !n 重復(fù)執(zhí)行第n條歷史命令
使用!! 重復(fù)執(zhí)行上一條命令
使用!字符串 重復(fù)執(zhí)行最后條以該字符串開頭的命令
標(biāo)準輸入輸出
鍵盤 /dev/stdin 0
顯示器 /dev/sdtout 1
顯示器 /dev/stderr 2
2霎肯,輸出重定向
命令 > 文件 以覆蓋的方式擎颖,把命令的正確輸出輸出到指定的文件或設(shè)備當(dāng)中
命令 >> 文件 以追加的方式,把命令的正確輸出輸出到指定的文件或設(shè)備當(dāng)中
錯誤命令 2>文件 以覆蓋的方式观游,把命令的錯誤輸出輸出到指定的文件或設(shè)備中
錯誤命令 2>>文件 以追加的方式搂捧,把命令的錯誤輸出輸出到指定的文件或設(shè)備中
正確輸出和錯誤輸出同時保存
命令 > 文件 2 >&1
命令 >> 文件2>&1
命令 &>文件
命令 &>>文件
命令 >>文件1 2>> 文件2 把正確的輸出追加到文件1中,把錯誤的輸出追加到文件2中
3懂缕,輸入重定向
[root@localhost ~] # wc [選項] [文件名]
選項:
-c統(tǒng)計字節(jié)數(shù)
-w統(tǒng)計單詞數(shù)
-l統(tǒng)計行數(shù)
管道符:
1异旧,多命令順序執(zhí)行
; 命令1;命令2
多個命令順序執(zhí)行提佣,命令直接沒有任何邏輯關(guān)系
&& 命令1&&命令2
邏輯與 當(dāng)命令1正確執(zhí)行吮蛹,則命令2才會執(zhí)行;當(dāng)命令1執(zhí)行不正確拌屏,則命令2不會執(zhí)行
|| 命令1||命令2
邏輯或 當(dāng)命令1執(zhí)行不正確潮针,則命令2才會執(zhí)行;當(dāng)命令1正確執(zhí)行倚喂,則命令2才會執(zhí)行
利用正確輸出后 輸出yes 判斷執(zhí)行成功與否
ls && echo yes || echo no
2每篷,管道符
命令格式:
命令1 | 命令2
命令1的正確輸出作為命令2的操作對象
eg:
ls -l /etc/ | more
對結(jié)果分屏顯示
eg:
netstat -an | grep ESTABLISHED
判斷服務(wù)器上多少客戶端在連接
1,通配符
? 匹配一個任意字符
*匹配0個或任意多個字符
[]匹配括號中任意一個字符
[-]匹配括號中任意一個字符端圈,-代表一個范圍
[^]邏輯非焦读,表示匹配不是括號中的一個字符
ls dzp*
2,bash中其他特殊符號
’’ 單引號舱权,在單引號中所有的特殊符號矗晃,如“$”和“`”都沒有特殊含義
“”雙引號,在雙引號中特殊符號都沒有特殊含義宴倍,但是“$”张症、“`”和“\”是例外,擁有“調(diào)用變量的值”鸵贬、“引用命令”和”轉(zhuǎn)義符“的特殊含義
``反引號俗他,括起來的內(nèi)容是系統(tǒng)命令,在bash中會先執(zhí)行它阔逼。和$()作用一樣
$() 和反引號作用一樣兆衅,用來引用系統(tǒng)命令。
$ 用于調(diào)用變量的值
\ 轉(zhuǎn)義符,跟蹤\之后的特殊符號將失去特殊含義
直接覆蓋原來的文件羡亩?
使用ssh命令行傳輸文件到遠程服務(wù)器
1摩疑,上傳本地文件到服務(wù)器
scp /path/filename username@servername:/path/
例如scp /var/www/test.php root@192.168.0.101:/var/www/
把本機/var/www/目錄下的test.php文件上傳到這臺服務(wù)器上的/var/www/目錄中
2,從服務(wù)器上下載文件
下載文件我們經(jīng)常使用wget夕春,但是如果沒有http服務(wù)未荒,如何從服務(wù)器上下載文件呢专挪?
scp username@servername:/path/filename /var/www/local_dir
例如scp root@192.168.0.101:/var/www/test.txt /var/www/local_dir
3,從服務(wù)器下載整個目錄
scp -r username@servername:/var/www/remote_dir/ /var/www/local_dir
4,上傳目錄到服務(wù)器
scp -r local_dir username@servername:remote_dir
scp -r /Users/xhzh/yxFiles/pythonProj/CFlaskProj root@10.106.158.192:/root/zhxh_proj
ModuleNotFoundError: No module named 'flask_sqlalchemy'