03-Linux常用命令[Python]

一、常用命令補充

  • gedit文本編輯工具

     $ gedit hello.c
    
  • ln建立鏈接文件
    建立鏈接文件相當(dāng)于windows上創(chuàng)建一個快捷方式。

     軟鏈接:不占用磁盤空間的,源文件刪除則軟連接失效【-s】
     硬鏈接:可以占用磁盤空間,源文件刪除對硬鏈接沒有影響
    
     $ ln -s hello.txt hello
     $ ls
        lrwxrwxrwx  1 libin libin    5 6月  27 15:21 hello -> hello.txt  
     $ cat hello  // 和cat hello.txt 一樣
    
     $ ln hello.txt hello  
    

    對于軟連接而言,如果軟連接和源文件不在同一個目錄下,則原文件使用絕對路徑,不能使用相對路徑
    對于硬鏈接而言,兩個文件占用相同大小的磁盤空間,如果源文件被刪除,硬鏈接不受任何影響,正常使用

  • ls文件查看

     例如:
       $ ls -l  // 查看文件信息
     簡寫:
       $ ll
    
  • rm刪除操作

     語法:
       $ rm -rfi   // -r追層刪除  -f強制刪除  -i用戶交互刪除,詢問是否刪除
    
  • chmod權(quán)限添加

     u(user): 當(dāng)前用戶
     a(all): 所有用戶
     g(group):同組用戶
     o(other): 其他用戶
    
     例如: 
       $ chmod g+w hello.c    // 給文件中同組用戶添加一個可讀權(quán)限  
       $ chmod go+w file2.txt 
       $ chmod ugo+w file2.txt
    
  • ssh通道
    SSH 為 Secure Shel的縮寫,SSH 是目前較可靠,專為遠程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。

     語法:
       ssh 用戶名@IP地址
     例如:
       $ ssh zhangsan@192.168.1.133
     備注:
       連接服務(wù)器可以借助xShell、putty等工具,也可以通過ssh方式。
    
  • date查看系統(tǒng)時間

     $ date  // 查看系統(tǒng)時間
     $ date -s "2018-01-01 00:00:00"  // 修改系統(tǒng)時間
    
  • cal顯示一個日歷

     $ cal
    
  • 查看系統(tǒng)信息

     $ cat /etc/issue    // 查看系統(tǒng)版本
     $ file /sbin/init      // 查看系統(tǒng)位數(shù)
    
  • history查看歷史命令

     $ history  // 終端輸入的歷史命令,最近1000條記錄
     $ history 5  // 顯示最后5條記錄
    
  • tree以樹形結(jié)構(gòu)去顯示目錄結(jié)構(gòu)

     $ tree -d     // 只顯示文件夾
     $ tree -f // 顯示文件的完整路徑
     $ tree -L 2   // 只看前兩級的內(nèi)容
    

    需要安裝tree: sudo apt-get install tree

  • ps查看進程

     語法:
       ps -ef 
     例如:
       $ ps -ef
       $ ps -ef | grep mysql  // 查看MySQL進程是否起來
     備注:
       UID    // 用戶名 
       PID    // 進程的ID 
       PPID   // 父進程ID 
       C      // 進程占用CPU的百分比 
       STIME  // 進程啟動到現(xiàn)在的時間 
       TTY    // 該進程在那個終端上運行,若與終端無關(guān),則顯示?
       CMD    //命令的名稱和參數(shù)
    
  • pkill進程管理

     語法:
       pkill 服務(wù)名
       kill 進程號
       kill -9 進程號 // 強制殺死進程
     例如:
       $ pkill 服務(wù)名  // 殺死對應(yīng)服務(wù)名的所有進程
    
  • df磁盤空間

       $ df   // 磁盤空間大小
       $ df   -hl  // 磁盤空間大小
    
  • free內(nèi)存占用

       $ free
    
  • who用戶登錄信息

       $ who
    
  • which查找其他命令所在的位置

     $ which python
     $ which ls
    
  • whereis用于程序名的搜索

     $ whereis python
    
  • type尋找命令所在的位置,包括命令別名

     $ type python
    
  • 查看網(wǎng)絡(luò)狀態(tài)信息

     $ netstat -anp  
     $ netstat -anp | grep 3333  // 查看端口被哪個服務(wù)占用
    
  • 系統(tǒng)相關(guān)

     $ reboot  // 重啟系統(tǒng)
     $ shutdown   // 關(guān)閉系統(tǒng)
     $ init 0  // 關(guān)機
     $ init 6  // 重啟
    
  • zip打包解包

     打包語法:
       zip -r xxx.zip  文件1 文件2...
     例如:
       $ zip -r source.zip a.txt b.txt  // 將多個文件打包
       $ zip -r source.zip .   // 將當(dāng)前路徑下文件打包
       $ zip -r source.zip Test/  // 將Test目錄打包
    
     解包語法:
       unzip xxx.zip
       unzip 包名 -d 目錄  // 解壓zip包到指定目錄
     例如: 
        unzip source.zip
        unzip source.zip -d aaa/
    
  • gzip壓縮解壓

     壓縮語法:
       gzip  需要打包的文件  // 把文件進行壓縮,原來的文件則沒有了,解  壓縮也一樣 
     例如:
       $ gzip test.txt     //  test.txt.gz
       $ gzip test.zip    // test.zip.gz
       $ gzip 
    
     解壓語法:
       gunzip xxx.gz
     例如:  
       $ gunzip 01-test.c.gz
    
     備注: 
       只能壓縮文件,不能壓縮目錄
    
  • tar壓縮解壓

     打包語法:
       tar -cvf xxx.tar 文件1 文件2...
     例如:
       $ tar -cvf source.tar a.txt b.txt
    
     解包語法:
       tar -xvf 包名
       tar -xvf 包名 -C 目錄   // 指定目錄
     例如:
       $ tar -xvf source.tar
    
     打包并壓縮語法:
       tar -zcvf xxx.tar.gz 文件1 文件2...    // 打包并壓縮
     例如:
       $ tar -zcvf source.tar.gz a.txt b.txt
    
     解壓語法:
       tar -zxvf xxx.tar.gz
       tar -zxvf 包名 -C 目錄   // 指定目錄
     例如:
       tar -zxvf source.tar.gz
    
     備注打包:
       -c 產(chǎn)生.tar打包文件,在使用tar打包目錄的時候,-c是必要的選項,表示create創(chuàng)建一個打包文件
       -v 顯示詳細(xì)信息,可選項,是在命令執(zhí)行的時候,顯示命令執(zhí)行的過程
       -f 指定壓縮后的文件名,必選項,該選項必須放在所有選項的后面,后面跟住新的文件名
       -z 打包同時壓縮
     備注解包: 
       -x 解包.tar文件
       -v 顯示詳細(xì)信息
       -f 指定解壓文件
       -z 解壓縮
    
  • 創(chuàng)建用戶

     語法:
       useradd 用戶名
       // 默認(rèn)是不會創(chuàng)建對應(yīng)用戶目錄
       -m 強制建立用戶主文件夾,并將/etc/skel/當(dāng)中的文件復(fù)制到用戶的根目錄下 
       -s 用戶登錄所使用的shell  
     例如:
       $ useradd zhangsan  // 需要手動設(shè)置密碼 passwd zhangsan
       $ useradd -m lisi  // 默認(rèn)無密碼
       $ useradd -m -s /bin/bash wangwu  // 默認(rèn)用戶的密碼
    
       
     建議使用adduser命令:
       $ sudo adduser
    

    /etc/skel是配置文件, bash是GNU操作系統(tǒng)的shell,或命令語言解釋器
    按下ctrl+ d 注銷用戶【exit命令】!
    查看用戶 cat /etc/passwd

  • 刪除用戶

     語法:
       userdel 用戶名  
       // 默認(rèn)只是刪除普通用戶,不會自動刪除用戶所在的主目錄,需要手動 rm -rf xxx
       -r 刪除普通用戶,同時自動刪除用戶所在的主目錄
     例如:
       $ userdel zhangsan
       $ userdel -r lisi
     備注:
       如果提示`userdel: user zhangsan is currently logged in`,就強制刪除`userdel -r -f  zhangsan`
    
  • 修改用戶密碼

     語法:
       passwd 用戶名
     例如:
       $ passwd zhangsan    // 輸入兩次密碼
    
  • 查看所屬

     語法:  
       groups 用戶名
     例如:
       $groups zhangsan
    
  • 創(chuàng)建用戶組

     語法:
       groupadd 組名
     例如:
       $ groupadd cxy
    

    查看組 cat /etc/group

  • 刪除用戶組

     語法:
       groupdel 組名
     例如:
       $ groupdel cxy
    
  • 添加到組

     語法:
       gpasswd -a 用戶名 組名
     例如:
       $ gpasswd -a zhangsan cxy
    
  • 從組中刪除

     語法:
       gpasswd -d 用戶名 組名
     例如:
       $ gpasswd -d zhangsan cxy
    
  • 修改文件所屬者所屬組

     語法:
       chown -R 用戶名:組名 文件名
     例如:
       chown -R libin:love yhy/
    

    cat /etc/group文件包含所有組
    cat /etc/shadow和cat /etc/passwd系統(tǒng)存在的所有用戶名

  • 文件傳輸

     語法:
       scp 用戶名@遠程服務(wù)器的IP:/文件路徑  想要存放的路徑
    

    Windows與Linux中,文件傳輸可以使用xftp;
    Linux與Linux之間,可以使用scp;
    其他方式: GitHub;

二、Linux其他

  • 磁盤分區(qū)
    在Windows操作系統(tǒng)中,是先將物理地址分開,再在分區(qū)上建立目錄.在Windows操作系統(tǒng)中,所有路徑都是從盤符開始,如C://program file。
    Linux正好相反,是先有目錄,再將物理地址映射到目錄中。在Linux操作系統(tǒng)中,所有路徑都是從根目錄開始。Linux默認(rèn)可分為3個分區(qū),分別是boot分區(qū)、swap分區(qū)和根分區(qū)。
    無論是Windows操作系統(tǒng),還是Linux操作系統(tǒng),每個分區(qū)均可以有不同的文件系統(tǒng),如FAT32、NTFS、Yaffs2等。

boot分區(qū): 該分區(qū)對應(yīng)于/boot目錄,存放Linux的bootloader和內(nèi)核源碼,用戶對/boot目錄的操作就是操作該分區(qū);
swap分區(qū): Linux下的虛擬內(nèi)存.虛擬內(nèi)存用于當(dāng)系統(tǒng)內(nèi)存空間不足時,先將臨時數(shù)據(jù)存放在swap分區(qū),等待一段時間后,然后再將數(shù)據(jù)調(diào)入到內(nèi)存中執(zhí)行.所以說,虛擬內(nèi)存只是暫時存放數(shù)據(jù),在該空間內(nèi)并沒有執(zhí)行(大小為物理內(nèi)存的2倍);
根分區(qū): 在Linux操作系統(tǒng)中,除/boot目錄外的其它所有目錄都對應(yīng)于該分區(qū).因此,用戶可通過訪問除/boot目錄外的其它所有目錄來訪問該分區(qū);
備注: 在創(chuàng)建Linux分區(qū)時,一定要創(chuàng)建SWAP/根分區(qū)!

  • 文件系統(tǒng)
    文件系統(tǒng),即在存儲設(shè)備上組織文件的方法;
    Windows: FAT16、FAT32、NTFS
    Linux: EXT2、EXT3、VFAT
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容