linux常用指令总结一~~
目錄
- 1. 用戶指令
 - 2. 用戶組指令
 - 3. 文件目錄類
 - 4. 時間日期類
 - 5. 搜索查找類指令
 - 6. 壓縮和解壓類指令
 - 7. 組管理
 - 8. 權限
 
Linux常用指令總結二~~指路==》
1. 用戶指令
a. 添加一個新用戶:
 useradd 用戶名 : 當創建用戶成功后,會自動創建和用戶同名的家目錄;
 useradd -d 指定目錄 用戶名 : 給新創建的用戶指定家目錄
b. 指定/修改密碼:passwd 用戶名;
c. 刪除用戶:
 userdel 用戶名:刪除用戶,但保留家目錄;
 userdel -r 用戶名:刪除用戶,并刪除家目錄;
d. 查詢用戶信息:id 用戶名;
e. 切換用戶:如果用戶的權限不夠,可以通過 su- 指令,切換到高權限用戶,如root;
 su - 需切換的用戶名;
 當需要返回到原來的用戶時,exit即可;
f. 查看當前用戶
 whoami / who am i
2. 用戶組指令
添加組: groupadd 組名;
 刪除組:groupdel 組名;
 添加用戶時直接加上組:useradd -g 用戶組 用戶名;
 修改用戶的組: usermod -g 用戶組 用戶名;
用戶和組的相關文件:
 /etc/passwd 文件:user的配置文件,記錄用戶的各種信息;
 每行含義:用戶名:口令:用戶標識符:組標識符:注釋性描述:主目錄:登錄Shell;
 
 注:權限不夠,用vim打開;
/etc/shadow 文件:
 每行含義:登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告事件:不活動時間:失效時間:標志;
/etc/group 文件:group的配置文件,記錄linux包含的組的信息;
 每行含義:組名:口令:組標識號:組內用戶列表(不可見)
 
3. 文件目錄類
pwd:顯示當前工作目錄的絕對路徑;
ls:ls 目錄/文件
 -a:顯示當前目錄所有的文件和目錄,包括隱藏的;
 -l:以列表的方式顯示信息;
cd:絕對路徑(/home) / 相對路徑(…/home);
 cd~ / cd:回到家目錄;
 cd … :回到當前目錄的上一級目錄;
mkdir指令:
 mkdir:創建目錄(即文件夾);
 mkdir -p:創建多級目錄;
rmdir指令:
 rmdir:刪除空目錄;
 tips:如果目錄下有內容,則無法刪除;
rm -rf:刪除非空目錄;
touch指令:
 touch 文件名:創建文件;
 eg:touch hello.txt;
cp指令:指定拷貝文件到指定目錄;
 cp [選項] source dest;
eg:將english.txt復制到welcome目錄下:
 
 -r:遞歸復制整個文件夾(要精準定位 源目錄和目標目錄);
eg:將welcome文件夾中的內容復制到a文件夾中:cp -r welcome/ a/
 
 tips:強制復制不提示 \cp;
rm指令:
 rm:要刪除的文件 / 目錄;
 -r:遞歸刪除整個文件夾;
 -f:強制刪除不提醒;
mv指令:
 mv a b:如果b不存在,則a改名成b;若b存在,則a移動到b
cat指令:
 cat:查看文件內容。
 -n:顯示行號;
 tips:cat只能瀏覽文件,不能修改;為了瀏覽方便,一般會帶上 管道命令 |more;
more指令:
 more指令是一個基于VI編輯器的文本過濾器,它以全屏的方式按頁顯示文本文件的內容;
 more指令中的快捷鍵:
space:向下翻頁;
 Enter:向下翻行;
 q:立刻離開more,不再顯示該文件內容;
 Ctrl+F:向下滾動;
 =:輸出當前的行號;
 f:輸出文件名和當前行的行號;
less指令:
 less指令用來分屏查看文件內容,與more不同的是:less在顯示文件內容時,并不是一次性將整個文件加載完之后再顯示,而是根據顯示需要加載內容,對于顯示大型文件具有較高的效率。
快捷鍵:
space:向下翻頁;
 PgDn:向下翻頁;
 PgUp:向上翻頁;
 / abc 向下搜索abc;
 ? abc 向上搜索abc;(n:向下查找;N:向上查找)
 q:離開less;
>指令 和 >>指令
 1 >輸出重定向 >> 追加。
 ls -l > 文件 : 文件有覆蓋寫,文件無創建寫;
 eg:將ls -l 下顯示的內容覆蓋寫入到bala.txt中:ls -l > bala.txt
 
ls -al>>文件:追加寫;
 cat 文件1>文件2:將文件1中的內容覆蓋到文件2;
 echo"內容">>文件:追加寫;
 echo"內容">文件:覆蓋寫;
echo指令:
 echo:輸出內容到控制臺;
 echo $PATH:輸出當前環境變量的路徑;
 
 echo 輸出文本:echo “hello world”
 
head指令:
 head指令用于顯示文件的開頭部分內容,默認情況下head指令顯示文件的前10行內容。
 head 文件:查看文件前10行內容;
 head -n 5 文件:查看文件前5行內容;
tail指令:
 tail指令用于輸出文件中尾部的內容,默認tail顯示后10行內容。
 tail 文件:查看文件后10行內容;
 tail -5 文件:查看文件后5行內容;
 tail -f 文件:實時追蹤該文檔的所有更新;(Ctrl+Z退出)
eg:實時監控mydate文件:tail -f mydate
 
ln指令:
 軟鏈接/符號鏈接,類似windows快捷方式,主要存放了鏈接其他文件的路徑。
 ln -s 原文件/目錄 軟鏈接名:給原文件創建一個軟鏈接;
 tips:使用pwd指令查看目錄時,看到的是軟鏈接所在目錄~
eg:給/dog文件夾創建一個軟鏈接:ln -s /dog linkAnimal
 
history指令:
 查看已經執行過歷史命令,也可以執行歷史指令。
 history:執行過的全部命令;
 history 10:顯示最近執行過的10個指令;
 !123:執行歷史編號為123的指令:
 
4. 時間日期類
a. date指令:顯示當前日期:
date:顯示當前時間;
 date +%Y:顯示當前年份;
 date +%m:顯示當前月份;
 date +%d:顯示當前天數;
 date “+%Y-%m-%d %H:%M:%S”:顯示年月日時分秒;(+不要忘哦~ )
 
 tips:連接符- : 可以換成其他的任意符號~
b. date指令設置時間:
date -s 字符串時間;
 eg:date -s “2021-6-6 23:57:00”
Cal指令:
 查看日歷指令。
 cal 無選項:顯示本月日歷;
 cal 2021:顯示2021年日歷;
5. 搜索查找類指令
find指令:
 find指令將從指定目錄向下遞歸遍歷其各個子目錄,將滿足條件的文件/目錄顯示在終端。
 find 搜索范圍 選項:
選項說明:
-name <查詢方式>:按照指定的文件名查找模式查找文件;
 -user<用戶名>:查找屬于指定用戶名所有文件;
 -size<文件大小>:按照指定的文件大小查找文件;
 tips: +n:大于n; -n:小于n; n:等于n;
eg:查找welcome目錄下name為xm.txt的文件:find welcome -name xm.txt;
 
 查找welcome目錄下user為xiaobai的所有文件:find welcome -user xiaobai;
 
 查找size=2k的文件:find -size 2k;
 
 使用通配符查找所有 .txt 文件:find -name “*.txt”;
 
locate指令:
 locate指令可以快速定位文件路徑。locate指令利用實現建立的系統中所有文件名稱及路徑的locate數據庫實現快速定位給定的文件。
 locate指令無需遍歷整個文件系統,查詢速度較快。
 為了保證查詢結果的準確度,管理員必須定期更新locate時刻。
locate 搜索文件;
tips:1. root用戶下先使用 yum -y install mlocate ;
 2. 由于locate指令基于數據庫進行查詢,所以第一次運行前,必須使用updatedb指令創建locate數據庫。
grep指令和管道符號 |:
 grep過濾查找,管道符“ | ”,表示將前一個命令的處理結果輸出傳遞給后面的命令處理。
grep 選項 查找內容 源文件
常用選項:
-n:顯示匹配行及行號;
 -i:忽略字母大小寫;
在mydate文件中過濾出bala字符串:cat mydate | grep bala;
 
 在mydate文件中過濾出bala字符串并顯示行號并不區分大小寫:cat mydate | grep -ni bala;
 
6. 壓縮和解壓類指令
gzip / gunzip指令:
gzip:用于壓縮文件,gunzip用于解壓,在項目打包發布中很有用。
gzip 文件:只能將文件壓縮為 *.gz 文件;
-r:遞歸壓縮;
gunzip 文件.gz:解壓縮文件;
-d<目錄>:指定壓縮后文件的存放目錄;
eg:將animal文件夾壓縮到mypackage.zip下:zip -r mypackage.zip /animal;
 
 將mypackage.zip解壓到/tmp/animal1目錄下:unzip -d /tmp/animal1 mypackage.zip;
 
tar指令:
 tar指令是打包指令,最后打包后的文件是.tar.gz的文件。
 tar [選項] xxx.tar.gz 打包的內容:打包目錄,壓縮后的文件格式tar.gz;
壓縮:tar -zcvf ;解壓縮:-zxvf ;
選項說明:
-c 產生.tar打包文件;
 -v:顯示詳細信息;
 -f:指定壓縮后的文件名;
 -z:打包同時壓縮;
 -x:解包.tar文件。
eg:壓縮多個文件,將a1.txt a2.txt壓縮成a.tar.gz中:tar -zcvf a.tar.gz a1.txt a2.txt;
 
將welcome的文件夾 壓縮成mytar.tar.gz:tar -zcvf mytar.tar.gz /welcome;
 
 將mytar.tar.gz解壓到當前目錄:tar -zxvf mytar.tar.gz;
 
 將mytar.tar.gz解壓到a目錄下:tar -zxvf mytar.tar.gz -C /a;
 tips:a目錄得存在;
 
7. 組管理
所有者user;
 文件所在組group;
 其他組other;
文件/目錄所有者:
一般情況下,誰創建該文件,誰就成為該文件的所有者。
查看文件的所有者:ls -ahl;
 修改文件所有者:chown 用戶名 文件名;
 遞歸修改文件所有者:chown -R username 文件/目錄(所有子文件/目錄都遞歸生效);
 遞歸修改文件所有者/所有組:chown -R username :用戶組名稱 文件/目錄;
 tips:chown詳見“8.權限-修改文件所有者-chown”(下翻)。
eg:創建一個組police,創建一個用戶Tom存放在police組中,使用Tom創建一個文件ok.txt:
 groupadd police;
 useradd -g police Tom
 passwd Tom:1234657;
 
 登錄Tom,創建ok.txt:touch ok.txt;
 如圖:最后一欄ok.txt所在行最前端的Tom顯示了ok.txt文件所有者是Tom;ok.txt所在組是police;
 
 修改ok.txt所在組為xiaobai:chown xiaobai ok.txt;(使用root用戶進入home/Tom中執行)
 
tips:文件ok.txt所在組不一定是文件所有者Tom所在組;
文件/目錄所在組:
一般情況下,當某個用戶Tom創建了一個文件ok.txt后,默認這個文件ok.tx所在組就是該用戶Tom所在的組。
查看文件/目錄所在組:ls -ahl;
 修改文件所在的組:chgrp 組名 文件名;
 tips:修改組詳見“8.權限-修改文件所在組-chgrp”(下翻)。
其他組:
 除文件所有者和所在組的用戶外,系統的其他用戶都是文件的其他組。
 在添加用戶時,可以指定將該用戶添加到哪個組中,也可使用root管理權限改變某個用戶所在的組。
改變用戶所在組:usermod -g 組名 用戶名;
 usermod -d 目錄名 用戶名:改變該用戶登錄的初始目錄;
8. 權限
ls -l中顯示的內容如下:
-rw-r--r--. 1 xiaobai police 0 May 11 23:37 ok.txt;
0-9位說明:
rwx權限:
a. rwx作用到文件:
b. rwx作用到目錄:
eg:
 
 -rw-r--r--. 1 xiaobai police 0 May 11 23:37 ok.txt;表示:
 第一個字符代表文件類型:文件 (-),目錄 (d),鏈接 (l);
 其余字符每3個一組(rwx) 讀?寫(w)執行(x);
 1.第一組rw-:文件擁有者的權限是讀、寫;
 2.第二組r--:文件所在組即與文件擁有者所屬組內的用戶的權限是du;
 3.第三組r--:不予文件擁有者同組的其他用戶的權限是讀;
c. 可用數組表示為:r=4, w=2, x=1.所以-rw-r--r--.,對應數值:644;
1 文件:硬鏈接數/ 目錄:子目錄數; xiaobai 用戶; police 組; 0 文件大小[字節]; May 11 23:37 最后修改日期; ok.txt 文件名;修改權限:-chmod
通過chmod指令,可以修改文件或目錄的權限。
a. 通過+、-、=變更權限:
u:所有者 g:所在組 o:其他組 a:所有人(u、go總和);
 1.chmod u=rwx,g=rx,o=x 文件目錄名;
 2.chmod o+w 文件目錄名:給other組增減權限w;
 chmod a-x 文件目錄名:給所有目錄減掉權限x;
eg:給hi.txt文件的所有者增加執行權限x,組除去寫權限w:chmod u+x,g-w hi.txt;
 
 
b. 通過數字變更權限:
r=4,w=2,x=1; rwx=7;
 chmod u=rwx,g=rx,o=x 文件目錄名;
 相當于 chmod 751 文件目錄名;
eg:將hi.txt文件權限修改成rwxr-xr-x,使用數字方式實現:chmod 755 hi.txt;
 
 
修改文件所有者-chown:
chown newowner file:改變文件的所有者;
 chown newowner:newgroup file 改變用戶的所有者和所有組
 -R 如果是目錄,則使其下所有子文件/目錄遞歸生效。
eg1:將ok.txt文件的所有者改成Tom: chown Tom ok.txt;
 
 
 eg2:將/home/abcd目錄下所有文件和目錄(包括子目錄/子目錄下的文件)的所有者都修改為xiaobai: chown -R xiaobai abcd/;
 tips:root用戶才有權限。
 
修改文件所在組-chgrp:
chgrp newgroup file:改變文件的所有組;
eg1:將/home/liudehua.txt文件的所在組修改成police:chgrp police liudehua.txt;
 
 
eg2:將/home/abcd 目錄下所有文件和目錄的所在組都修改成character:chgrp -R character /home/abcd(或在home下直接改);
 
 
總結
以上是生活随笔為你收集整理的linux常用指令总结一~~的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 实现数据排序的几种方法
 - 下一篇: USACO crypt1