大連專(zhuān)業(yè)網(wǎng)站設(shè)計(jì)服務(wù)商合肥關(guān)鍵詞排名
目錄
- linux常用命令
- 〇、連接遠(yuǎn)程linux主機(jī)
- 一、日常使用命令
- 1、開(kāi)關(guān)機(jī)命令
- 2、常用快捷鍵命令
- 3、常用工具命令
- 二、常用目錄或文件操作命令
- 1、展示目錄列表命令ls(list)
- 2、切換目錄命令cd(change directory)
- 3、目錄的創(chuàng)建和刪除
- 4、文件的創(chuàng)建和刪除
- 5、文件打包或者解壓命令
- 三、linux中的權(quán)限問(wèn)題
- 四、文件/文件夾的復(fù)制、移動(dòng)、查看
- 五、文件內(nèi)容查看
- 六、系統(tǒng)常用操作命令
- 七、磁盤(pán)及分區(qū)管理
- 八、常用的功能性復(fù)合命令匯總
linux常用命令
注意:1、<>代表是必填項(xiàng),[]表示是選填項(xiàng)。真正填入的時(shí)候不需要加<>和[];2、本文命令以cenos7為例進(jìn)行測(cè)試。
〇、連接遠(yuǎn)程linux主機(jī)
- 使用ssh命令(linux主機(jī)需要開(kāi)啟ssh服務(wù)):
ssh <用戶(hù)名>@<主機(jī)IP>
,例:ssh root@101.32.155.100
之后會(huì)提示輸入用戶(hù)密碼,正確輸入密碼即可進(jìn)入。
一、日常使用命令
1、開(kāi)關(guān)機(jī)命令
shutdown -h now
:現(xiàn)在關(guān)機(jī)shutdown -r now
:現(xiàn)在重啟reboot
:現(xiàn)在重啟計(jì)算機(jī)su [用戶(hù)名]
:切換用戶(hù),不加用戶(hù)名的話(huà)默認(rèn)切換到root用戶(hù)password
:修改密碼 # 未成功logout
:用戶(hù)注銷(xiāo)
2、常用快捷鍵命令
tab
:補(bǔ)全ctrl+l
:清屏ctrl+r
:查找歷史命令ctrl+c
:終止ctrl+k
:刪除此處至末尾的所有內(nèi)容ctrl+u
:刪除此處至開(kāi)始的所有內(nèi)容
3、常用工具命令
-
man
-
wc
(wordcount):文本統(tǒng)計(jì)- 常見(jiàn)參數(shù)
- -l:只查看行數(shù)
- -w:只查看單詞數(shù)
- -c:只查看字符數(shù)
- 常見(jiàn)參數(shù)
-
du
:文件大小統(tǒng)計(jì)- 常用參數(shù):
- -s:只統(tǒng)計(jì)該文件目錄的大小,不遞歸
- -h:人性化顯示單位
- 常用參數(shù):
-
find:文件檢索命令
語(yǔ)法:find path [-option] [-exec|-ok command] {} \;注意:<>中的內(nèi)容是必填項(xiàng),[]中的內(nèi)容是選填項(xiàng);-exec command是對(duì)查找出來(lái)的文件執(zhí)行command命令;{} 花括號(hào)代表前面find查找出來(lái)的文件名,就是對(duì)他們執(zhí)行command;然后是一個(gè)空格;語(yǔ)句必須以分號(hào)結(jié)束,因?yàn)椴煌到y(tǒng)對(duì)分號(hào)解析可能有區(qū)別,所以前面價(jià)格轉(zhuǎn)義符。-ok和-exec作用相似,不同的是-ok在執(zhí)行內(nèi)一個(gè)命令之前都會(huì)提示用戶(hù)確認(rèn)參數(shù)說(shuō)明:find:find之后,第一個(gè)命令參數(shù)之前的內(nèi)容是搜索路徑,默認(rèn)為當(dāng)前路徑,命令參數(shù)默認(rèn)位[-print](. 表示當(dāng)前目錄及其子目錄)命令參數(shù)[-option]眾多:-amin n:在過(guò)去n分鐘內(nèi)被讀取過(guò)-atime n:在過(guò)去n天內(nèi)被讀取過(guò)-anewer file:比f(wàn)ile文件更晚被讀取過(guò)的文件-cmin n:在過(guò)去n分鐘內(nèi)被修改過(guò)-ctime n:在過(guò)去n天內(nèi)被修改過(guò)-cnewer file:比f(wàn)ile文件更晚被讀修改的文件-empty:空的文件-path p 和 -ipath p:路徑名符合p的文件,ipath會(huì)忽略大小寫(xiě)-name fileName 和 -iname fileName:文件名符合p的文件,iname會(huì)忽略大小寫(xiě)-type c:文件類(lèi)型是c的文件(c的取值:目錄d,一般文件f,符號(hào)鏈接l,socket s,)-size n單位:文件大小是n單位,例:10k例子:查找/var/log 目錄中更改時(shí)間在7日以前的普通文件,并在刪除他們以前詢(xún)問(wèn)用戶(hù):find /var/log -ctime +7 -type f -ok rm {} \;
-
grep命令:
? Grep 是 Global Regular Expression Print 的縮寫(xiě),它搜索指定文件的內(nèi)容,匹配指定的模式,默認(rèn)情況下輸出匹配內(nèi)容所在的行。注意,grep 只支持匹配而不能替換匹配到的內(nèi)容。
#### 常見(jiàn)用法 # 1、在當(dāng)前目錄中遞歸查詢(xún)所有文件中包含username字符的行 grep -r "username" ./ # 2、在指定文件中查找某字符串所在行的內(nèi)容 grep "被查找的字符串" 文件名 # 3、在制定文件查找符合某正則表達(dá)式的文本所在的行 grep –e "正則表達(dá)式" 文件名 # 4、忽略大小寫(xiě) grep –i "被查找的字符串" 文件名 # 5、在指定文件中查找某不匹配該字符串的行的內(nèi)容 grep –v "被查找的字符串" 文件名 # 6、從根目錄開(kāi)始查找所有擴(kuò)展名為 .log 的文本文件,并找出包含 "ERROR" 的行: find / -type f -name "*.log" | xargs grep "ERROR" # 7、 find . -name "*.in" | xargs grep "thermcontact"
-
I/O重定向:>, 覆蓋輸出 ;>>,追加輸出
-
管道:管道是將前一個(gè)命令的輸出作為后一個(gè)命令的輸入
-
xargs:是給其他命令傳遞參數(shù)的一個(gè)過(guò)濾器,它擅長(zhǎng)將標(biāo)準(zhǔn)輸入數(shù)據(jù)轉(zhuǎn)換成命令行參數(shù)
cat test.txt | xargs # 多行數(shù)據(jù)單行輸出
二、常用目錄或文件操作命令
1、展示目錄列表命令ls(list)
- ls;ls -a;ls -l;ll;ll -a;ll -h,友好的顯示當(dāng)前目錄下的文件信息;pwd
2、切換目錄命令cd(change directory)
- cd test;cd …;cd ~;cd -;
3、目錄的創(chuàng)建和刪除
- mkdir test:在當(dāng)前目錄創(chuàng)建test目錄
- mkdir -p test/a/b:在test目錄下的a目錄下創(chuàng)建b目錄,如果a目錄不存在一并創(chuàng)建
- rmdir test:刪除當(dāng)前目錄下的test目錄
4、文件的創(chuàng)建和刪除
- touch test.txt:創(chuàng)建text.txt文件
- rm test.txt:刪除test.txt文件,刪除前詢(xún)問(wèn)用戶(hù)
- rm -f test.txt:直接刪除,不詢(xún)問(wèn)
- rm -r test.txt:遞歸刪除,test目錄及其子目錄,刪除前詢(xún)問(wèn)用戶(hù)
- rm -rf test.txt:遞歸直接刪除
5、文件打包或者解壓命令
- 打包并壓縮文件(打包文件.tag,壓縮文件.gz),一般情況下,打包和壓縮是在一起的,打包壓縮后文件后綴為.tag.gz。
- 命令:tar -zcvf <指定打包壓縮后的文件名> <要打包的文件>
- z:壓縮
- c:打包
- v:顯示運(yùn)行過(guò)程
- f:指定文件名
- 注意:指定新文件名要自己加后綴,如
tar -zcvf test.txt.tag.gz aa
- 命令:tar -zcvf <指定打包壓縮后的文件名> <要打包的文件>
- 解壓壓縮包
- 命令:tar [-xvf] <壓縮文件>
- x:解壓縮
- v、f和打包壓縮的時(shí)候用法一致
- 主要:要解壓的壓縮文件名要寫(xiě)全,如
tar -xvf test.txt.tag.gz
- 命令:tar [-xvf] <壓縮文件>
- zip類(lèi)型:unzip <文件名>
- rar類(lèi)型
#1.安裝rar解壓工具
wget http://www.rarlab.com/rar/rarlinux-x64-5.0.0.tar.gz
tar -zxvf rarlinux-x64-5.0.0.tar.gz
mv rar /opt/
cd /opt/rar/
make && make install#2. 使用:#2.1、rar命令
rar a test.rar file1 file2 #壓縮#2.2、unrar命令
unrar e test.rar DestPath #解壓(會(huì)在把當(dāng)前壓縮包內(nèi)容解壓到當(dāng)前目錄內(nèi),容易造成解壓內(nèi)容和當(dāng)前目錄原文件混合,不容易區(qū)分,不建議使用)
unrar x test.rar DestPath #解壓(會(huì)在當(dāng)前解壓目錄內(nèi)產(chǎn)生一個(gè)以壓縮包名字命名的目錄,目錄內(nèi)是解壓內(nèi)容,推薦使用)
三、linux中的權(quán)限問(wèn)題
文件詳情:
因此可以得出,文件的權(quán)限問(wèn)題就是:所有者、同組用戶(hù)、無(wú)關(guān)用戶(hù)對(duì)文件的讀、寫(xiě)、執(zhí)行操作的管理。
注意:讀權(quán)限用數(shù)字4表示,寫(xiě)權(quán)限用數(shù)字2表示,執(zhí)行權(quán)限用數(shù)字1表示,同時(shí)擁有讀寫(xiě)權(quán)限則為數(shù)字6
- 修改文件/或目錄的權(quán)限:chmod
- 例:修改文件test.txt文件的權(quán)限為,所有者擁有讀寫(xiě)執(zhí)行權(quán)限、同組用戶(hù)可讀可執(zhí)行,其他用戶(hù)沒(méi)有權(quán)限,
chmod 730 test.txt
- 例:修改文件test.txt文件的權(quán)限為,所有者擁有讀寫(xiě)執(zhí)行權(quán)限、同組用戶(hù)可讀可執(zhí)行,其他用戶(hù)沒(méi)有權(quán)限,
- 修改文件的所屬用戶(hù)和所屬組
chown userName:groupName fileName
,修改文件所屬用戶(hù)和所屬用戶(hù)組chown userName: fileName
,修改文件所屬用戶(hù)chown :groupName fileName
,修改文件所屬用戶(hù)組
- 用戶(hù)管理
- 查看所有用戶(hù):users,或者查看
etc/password
- 添加用戶(hù):useradd <用戶(hù)名>,useradd -d <指定家目錄> <用戶(hù)名>,useradd -g <組名> <用戶(hù)名>
- 刪除用戶(hù):userdel <用戶(hù)名>,userdel -r <用戶(hù)名>
- 查詢(xún)用戶(hù)信息:id <用戶(hù)名>
- 修改用戶(hù)所在組:usermod -g <新組名> <用戶(hù)名>
- 查看所有用戶(hù):users,或者查看
- 用戶(hù)組管理
- 查看所有:
groups
,或者查看etc/group - 添加組:
groupadd <組名>
- 刪除組:
groupdel <組名>
- usermod -aG wheel username. #centos將用戶(hù)添加到wheel組即可執(zhí)行sudo
- 查看所有:
四、文件/文件夾的復(fù)制、移動(dòng)、查看
- 復(fù)制命令:cp
- 語(yǔ)法
cp [-option] source destination
cp [options] source1 source2 .... directory
- 選項(xiàng)和參數(shù)
- -d 若來(lái)源檔為連結(jié)檔屬性,則復(fù)制結(jié)檔屬性而非文件本身
- -p 連同文件的屬性一起復(fù)制過(guò)去
- -r 遞歸連續(xù)復(fù)制,用于目錄
- -a 相當(dāng)于-pdr
- -f 強(qiáng)制
- -i 若目標(biāo)檔已存在,詢(xún)問(wèn)用戶(hù)
- -l 復(fù)制文件的硬式鏈接,而不是文件
- -s 復(fù)制成為符號(hào)鏈接檔,快捷方式
- -u destination比source舊才升級(jí)
- 語(yǔ)法
- 刪除命令:rm
- 語(yǔ)法
rm [-option] 文件或者目錄
- 選項(xiàng)與參數(shù)
- -r -f -i
- 語(yǔ)法
- 移動(dòng)或改名:mv
- 語(yǔ)法
mv [-option] source destination
mv [options] source1 source2 .. directory
- 參數(shù)
- -rfi
- 語(yǔ)法
五、文件內(nèi)容查看
- cat 有第一行開(kāi)始顯示文件
- -b 顯示行號(hào)
- -n 顯示行號(hào) 包括空行
- -A = -vET
- -T tab顯示為見(jiàn) I
- -v 列出一些看不出來(lái)的特殊字符
- -E 結(jié)尾的斷行字節(jié)$顯示出來(lái)
- tac 從最后一行開(kāi)始顯示,cat倒過(guò)來(lái)寫(xiě)
- nl 顯示行號(hào)
- -b 制定行號(hào)顯示方式:-b a 忽略空行,-b t 不忽略空行
- -n 行號(hào)的表示方法:-n ln 左邊顯示,-n rn 右邊顯示且不加0 ,-n rz 右邊顯示且加0
- -w 行號(hào)占用的位數(shù)
- more 一頁(yè)一頁(yè)的看
- enter:下一行
- 空格:下一頁(yè)
- b:上一頁(yè)
- :f 顯示文檔名和目前的行數(shù)
- less 一頁(yè)一頁(yè)的看,可以翻頁(yè)
- B上一頁(yè)
- 空格下一頁(yè)
- /字串 向上搜索字串
- ?字串 向下搜索字串
- n 重復(fù)前一個(gè)搜索(/ or ?)
- N反向重復(fù)前一個(gè)搜索(/ or ?)
- head 只看頭幾行
- tail只看尾幾行:tail -n number;-f:表示持續(xù)偵測(cè)后面所接收的文檔名,ctrl+c結(jié)束偵測(cè)
六、系統(tǒng)常用操作命令
-
編輯sudo命令的配置:visudo
Linux sudo命令以系統(tǒng)管理者的身份執(zhí)行指令,也就是說(shuō),經(jīng)由 sudo 所執(zhí)行的指令就好像是 root 親自執(zhí)行。
使用權(quán)限:在 /etc/sudoers 中有出現(xiàn)的使用者。
#用戶(hù)名 登陸的主機(jī)= (以什么樣的身份運(yùn)行) 可以執(zhí)行什么樣的命令 # eg: lyx ALL=(root) NOPASSWD:ALL # allow lyx to run all commands anywhere
-
網(wǎng)絡(luò)管理:ping、ifconfig
-
服務(wù)管理:
- 服務(wù)啟動(dòng)|關(guān)閉|狀態(tài)查看|重啟:
service service_name start|stop|status|restart
- linux自帶的所有服務(wù)名稱(chēng)在:/etc/init.d/ 下
- 如:network(網(wǎng)絡(luò))、iptables(防火墻)、mysql(mysql5.5之前叫mysqld)
- 設(shè)置某服務(wù)是否開(kāi)機(jī)自啟
- 檢查:
chkconfig iptables --list
- 設(shè)置:
chkconfig iptables on|off
- 檢查:
- 服務(wù)啟動(dòng)|關(guān)閉|狀態(tài)查看|重啟:
-
進(jìn)程管理:ps
- 查看某進(jìn)程:
ps -ef | grep java
(如安裝了JDK可用jps
代替這條命令) - 殺死某個(gè)進(jìn)程:
kill -9 pid
- 查看某進(jìn)程:
-
端口管理
- netstat:netstat 是網(wǎng)絡(luò)狀態(tài)查看命令,既可以查看到本機(jī)開(kāi)啟的端口,也可以查看有哪些客戶(hù)端連接。netstat 命令的基本信息如下。
- 參數(shù)
-
-a:列出所有網(wǎng)絡(luò)狀態(tài),包括 Socket 程序;
-
-c秒數(shù):指定每隔幾秒刷新一次網(wǎng)絡(luò)狀態(tài);
-
-n:使用 IP 地址和端口號(hào)顯示,不使用域名與服務(wù)名;
-
-p:顯示 PID 和程序名;
-
-t:顯示使用 TCP 協(xié)議端口的連接狀況;
-
-u:顯示使用 UDP 協(xié)議端口的連接狀況;
-
-I:僅顯示監(jiān)聽(tīng)狀態(tài)的連接;
-
-r:顯示路由表;
-
- 常用:netstat -atunlp
七、磁盤(pán)及分區(qū)管理
1、Linux磁盤(pán)類(lèi)型
- IDE類(lèi)型:
- 個(gè)人電腦常用磁盤(pán)類(lèi)型,缺點(diǎn)是在讀寫(xiě)操作時(shí)都大量消耗CPU資源 ,優(yōu)點(diǎn)是性?xún)r(jià)比高適用面廣。
- 磁盤(pán)在系統(tǒng)中的標(biāo)識(shí):sd,例如第一塊IDE類(lèi)型磁盤(pán)的第一個(gè)分區(qū)為sda1 - SCSI類(lèi)型:
- 服務(wù)器常用磁盤(pán)類(lèi)型,缺點(diǎn)是貴,優(yōu)點(diǎn)是在大量數(shù)據(jù)讀寫(xiě)時(shí),自己的處理器會(huì)處理,占用CPU很少的資源;同時(shí)擴(kuò)充性好、穩(wěn)定、可靠。
- 磁盤(pán)在系統(tǒng)中的標(biāo)識(shí):hx,例如第一塊SCSI類(lèi)型磁盤(pán)的第三個(gè)分區(qū)為hxa3
2、常用分區(qū)類(lèi)型及特點(diǎn)
- mbr分區(qū):
- 最多支持4個(gè)主分區(qū)
- 系統(tǒng)只能安裝在主分區(qū)
- 擴(kuò)展分區(qū)站一個(gè)主分區(qū)(擴(kuò)展分區(qū)可有多個(gè)邏輯分區(qū))
- 最大支持2TB,但擁有較好的兼容性
- gtp分區(qū):
- 支持無(wú)限多個(gè)主分區(qū)
- 最大支持18EB的分區(qū)1024*1024TB
- win7 64為以后支持
3、查看磁盤(pán)分區(qū)及掛載信息
lsblk -f
案例:給linux增加一塊新的硬盤(pán)并且掛載到 /home/newdisk
- 步驟:虛擬機(jī)添加硬盤(pán);設(shè)置分區(qū);格式化分區(qū);掛載目錄
- 操作:
(1)虛擬機(jī)設(shè)置中添加一塊磁盤(pán),重啟虛擬機(jī)生效。
(2)lsblk -f
命令查看新添加的磁盤(pán)名稱(chēng)
(3)對(duì)磁盤(pán)進(jìn)行分區(qū):
1)fdisk /dev/sdb # 對(duì)第二塊mbr磁盤(pán)分區(qū)
2)n
3)p
4)默認(rèn)
5)默認(rèn)
6)w #寫(xiě)入
(4)格式化剛才的分區(qū):
mkfs -t ext4 /dev/sdb1 #mkfs = make file system
(5)設(shè)置掛載目錄
mount sdb1 /home/newdisk #卸載:unmount sdb1 /home/newdisk
(6)設(shè)置永久在動(dòng)掛載
vim /etc/fstab
4、磁盤(pán)狀態(tài)查詢(xún)
- df –lh:查新磁盤(pán)整體使用情況
- du -h 目錄:查詢(xún)某個(gè)目錄的磁盤(pán)使用情況
-s:指定目錄占用大小匯總
-h:帶計(jì)量單位
-a:含文件
-max-depth=1:子目錄深度
-c:列出明細(xì)的同時(shí)增加匯總值
八、常用的功能性復(fù)合命令匯總
# 統(tǒng)計(jì)某個(gè)目錄下面某種類(lèi)型(或多種類(lèi)型)的文件內(nèi)容的行數(shù)??捎脕?lái)統(tǒng)計(jì)代碼行數(shù)
# 例:統(tǒng)計(jì)當(dāng)前所在目錄下 .java文件和,xml文件的行數(shù) 注意:統(tǒng)計(jì)多種類(lèi)型的文件用 -or 連接,同時(shí)"("和")"不能缺,只統(tǒng)計(jì)一種類(lèi)型的話(huà)"("和")"可以省略。
find ./ "(" -name "*.java" -or -name "*.xml" ")" -print | xargs wc -l
#統(tǒng)計(jì)某目錄下文件的個(gè)數(shù):
ls –l /etc | grep “^-” |wc -l
#統(tǒng)計(jì)某目錄下目錄的個(gè)數(shù):
ls –l /etc | grep “^d” |wc -l
#統(tǒng)計(jì)某目錄下文件的個(gè)數(shù):
ls –lR /etc | grep “^-” |wc -l
#統(tǒng)計(jì)某目錄下目錄的個(gè)數(shù):
ls –lR /etc | grep “^-” |wc –l
#以樹(shù)狀展示目錄結(jié)構(gòu):
#Yam安裝tree:
yam instal tree
tree
#查看某個(gè)文件夾的大小
du -sh 文件夾名稱(chēng) #查看nginx配置文件位置
nginx -t#scp使用
#將當(dāng)前路徑下的pn-acess-0.0.1-SNAPSHOT.jar文件上傳到101.132.155.132服務(wù)器的root用戶(hù)的/home目錄下,命名為pn.jar
scp ./pn-acess-0.0.1-SNAPSHOT.jar root@101.132.155.132:/home/pn.jar#查看內(nèi)存使用情況:
free -m#查看內(nèi)存占用排行前10的進(jìn)程:
ps aux --sort -rss | head# 修改該時(shí)間為2024年4月9日11點(diǎn)
sudo date 040911002024.00