常用Linux 命令

(1) vi 命令模式下 :w 只保存不退出

(2)shell Ctrl + Z , 程序後臺執行   fg:後臺程序調到前臺


(3)在當前shell裏執行一個文件裏的命令:       
                           
   source /home/user/file.name
   
(4)列出包括子進程的進程樹:
            
   ps axwef    
   
(5)去之前的工作目錄:
         
   cd -
   
(6)Ctrl + r  search之前執行的命令


(7)history  列出之前執行的命令, history |tail -10 列出最近10條
執行其中某一條: ! + 命令號


1、刪除目錄及子目錄下的 .svn目錄


 
      find . -type d -name ".svn" | xargs rm -rf
 
2、/tmp 目錄的權限 drwxrwxrwt  
  rwt的意思是:對目錄有執行權限,但不能刪除,即sticky bit
  rwx : 可讀可寫可執行 4+2+1
 
3、改變羣組、用戶、權限
     chgrp   羣組名   改變的目錄
     groupadd -g gid gname
     groupdel  gname
     chown  用戶名:羣組名  改變的目錄
     chmod  權限代碼   改變的目錄
          r - 4
          w - 2
          x - 1
     useradd uname
     userdel  -r(連根目錄一起刪除) uname
     usermod -g(修改組名) -G(添加到組)  組名 用戶名
     
 
4、如何查看linux上的所有用戶羣組和用戶
     /etc/shadow   /etc/group  
 
5、linux下可以執行文件的地方
     /bin   /usr/bin
6、顯示文件內容的指令有哪些?
     head
     tail
     more
     less
     cat  -- 從頭開始  -n  輸入行號  -s(壓縮空白)
     tac  -- 於cat相反,從尾部開始
     nl  --  顯示同時輸出行號
     od  -- 二進制方式讀取文件內容
7、操作文件的指令有哪些?
     rm
     mv
     mkdir
     rmdir
     cp
     ls
 
     umask  002   --- 默認創建文件、目錄的權限 (777 - 002  、 touch 後 由666-002)
 
8、查找文件
     which   ls  
     whereis  文件名
     find  -type  -name  
     locate  文件名
     file  文件名   --- 查看文件屬性
9、查看磁盤容量、已用容量及inode的命令?
     df  -[ikm]
     du -h --max-depth=1 /home/iknow/   查看各文件所佔空間
 
10、日誌分割、分析相關的命令有哪些?
     cut   -d"分隔符" -cf  fields
     sort  -t "分隔符" -n(純數字) -r(反向排序) -u(相同的列,只出現一次)
     wc  -l(多少行) -m(字符) -w(字)
     uniq   
     split  -l 5  /etc/passwd test    ----  每五行分隔成一個文件
 
12、定時操作的命令有哪些?如何使用?
     
     crontab -e(eidt) -l(list) -r(delete all)
     /var/log/cron  --- 操作日誌保存在這裏
     分(0-59)  時(0-23) 日(1-31) 月(1-12) 周(0-6)
     eg:  59 23 13 2 * mail [email protected] < love.txt        每年的2月13日23:59分都發郵件給 郵箱
            */5 * * * * test.sh   每五分鐘運行一次腳本
 
     at   只運行一次的任務
 
13、如何執行背景任務?
      command  &  --- 背後執行
      fg --- 將任務拉回屏幕執行
     ctrl + z  --- 中斷指令
     
     jobs -- 查看當前任務
     kill -9  job--- 強制停止,即殺死程序
     
14、有哪些查看系統狀態的指令?
     ps -aux (all  user  tty - teletypewriters 的程序)
     top
     free
     uname -a     
     lsb_release -a
 
     sar -u(cpu) -r(mem) 描述 次數  ----- 查看CPU和mem使用情況
 
     1)、內核|操作系統|cpu信息
          uname -a
     2)、查看cup信息
          cat /proc/cpuinfo
     3)、操作系統版本
          head -n 1 /etc/issue
     4)、查看環境變量
          env
     5)、計算器
          bc
     6)、查看所有安裝的軟件
          rpm -qa
     7)、ct任務
          crontab -e    ---- 添加定時任務
          crontal -l   ----- 查看當前用戶的定時任務
     8)、查看所有進程情況
          ps -ef
          pstree
     9)、cpu idle
          vmstat -n
15、如何查看程序優先級並調整程序優先級?
     ps -l   --- 可以查看優先級
     nice -n(nice值) command
     renice  number(nice值) PID
16、查看一些主機信息
     uptime --  啓動時間
     who /w/whoami  -- 當前登錄用戶信息
     last --- 最近登錄用戶的信息
     
     hostname -i(ip address)
 
17、獲取遠端資源
     wget  -c(斷點續傳) ftp:://host/絕對路徑
     cUrl url  
 
18、壓縮與解壓縮
     .tar
     解包:tar xvf FileName.tar
     打包:tar cvf FileName.tar DirName
     (注:tar是打包,不是壓縮!)
     ———————————————
     .gz
     解壓1:gunzip FileName.gz
     解壓2:gzip -d FileName.gz
     壓縮:gzip FileName


     .tar.gz 和 .tgz
     解壓:tar zxvf FileName.tar.gz
     壓縮:tar zcvf FileName.tar.gz DirName
     ———————————————
     .bz2
     解壓1:bzip2 -d FileName.bz2
     解壓2:bunzip2 FileName.bz2
     壓縮: bzip2 -z FileName


     .tar.bz2
     解壓:tar jxvf FileName.tar.bz2
     壓縮:tar jcvf FileName.tar.bz2 DirName
     ———————————————
 
二、文件處理
     1、查看當前目錄下文件總數
          ls | wc -l
     2、同時提取符合兩個屬性的東西
          egrep "Baiduspider|Googlebot" example.log > spider.txt #其他以此類推
     3、按格式輸出
          awk 'print{$1,$2}'   xxx.log  
     4、sort  排序  -r (reverse)  
     5、uniq 唯一性
          uniq -c   --- 行首出現重複的次數
     6、cut
          cut -d "分隔符" -f  NUM 
     7、wc  統計
          wc -l      
          wc -m      
          wc -w   --- 單詞出現的次數
 
      eg : 統計訪問請求“req=xxx" 的各IP出現次數,並逆序排列
   grep 'req=xxx' apache_access_log  |cut -d ' ' -f1 " | sort |uniq -c|sort -r
 
     8、sed(stream editor)
     sed "s/\w\+\[&]/2g"   filename






三、linux解壓命令大全     
     
 .tar 
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是壓縮!)
———————————————
.gz
解壓1:gunzip FileName.gz
解壓2:gzip -d FileName.gz
壓縮:gzip FileName
.tar.gz 和 .tgz
解壓:tar zxvf FileName.tar.gz
壓縮:tar zcvf FileName.tar.gz DirName
———————————————
.bz2
解壓1:bzip2 -d FileName.bz2
解壓2:bunzip2 FileName.bz2
壓縮: bzip2 -z FileName
.tar.bz2
解壓:tar jxvf FileName.tar.bz2
壓縮:tar jcvf FileName.tar.bz2 DirName
———————————————
.bz
解壓1:bzip2 -d FileName.bz
解壓2:bunzip2 FileName.bz
壓縮:未知
.tar.bz
解壓:tar jxvf FileName.tar.bz
壓縮:未知
———————————————
.Z
解壓:uncompress FileName.Z
壓縮:compress FileName
.tar.Z
解壓:tar Zxvf FileName.tar.Z
壓縮:tar Zcvf FileName.tar.Z DirName
———————————————
.zip
解壓:unzip FileName.zip
壓縮:zip FileName.zip DirName
———————————————
.rar
解壓:rar x FileName.rar
壓縮:rar a FileName.rar DirName
———————————————
.lha
解壓:lha -e FileName.lha
壓縮:lha -a FileName.lha FileName
———————————————
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
———————————————
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
———————————————
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解壓:sEx x FileName.*
壓縮:sEx a FileName.* FileName
sEx只是調用相關程序,本身並無壓縮、解壓功能,請注意!
gzip 命令 
減少文件大小有兩個明顯的好處,一是可以減少存儲空間,二是通過網絡傳輸文件時,可以減少傳輸的時間。gzip 是在 Linux 系統中經常使用的一個對文件進行壓縮和解壓縮的命令,既方便又好用。
語法:gzip [選項] 壓縮(解壓縮)的文件名該命令的各選項含義如下:
-c 將輸出寫到標準輸出上,並保留原有文件。-d 將壓縮文件解壓。-l 對每個壓縮文件,顯示下列字段:     壓縮文件的大小;未壓縮文件的大小;壓縮比;未壓縮文件的名字-r 遞歸式地查找指定目錄並壓縮其中的所有文件或者是解壓縮。-t 測試,檢查壓縮文件是否完整。-v 對每一個壓縮和解壓的文件,顯示文件名和壓縮比。-num 用指定的數字 num 調整壓縮的速度,-1 或 --fast 表示最快壓縮方法(低壓縮比),-9 或--best表示最慢壓縮方法(高壓縮比)。系統缺省值爲 6。指令實例:
gzip *% 把當前目錄下的每個文件壓縮成 .gz 文件。gzip -dv *% 把當前目錄下每個壓縮的文件解壓,並列出詳細的信息。gzip -l *% 詳細顯示例1中每個壓縮的文件的信息,並不解壓。gzip usr.tar% 壓縮 tar 備份文件 usr.tar,此時壓縮文件的擴展名爲.tar.gz。


    
    
    
四、Unix find 大文件
find /opt  -xdev  -size +100000 -exec ls -l {} \; | sort -nrk 5 | more


du . -h


df . -h






五、Linux進程查看


(1)查看包含某一關鍵字的進程


ps -ef | grep -i "weblogic"  //查看進程路徑包含weblogic的所有進程




ptree 4567   //查看進程號爲4567 的進程樹,包含父進程,子進程




pargs -l 4567  //查看進程號4567 的啓動參數




jmap -heap 4567 //查看java進程4567的jvm內存使用情況




jmap -histo 4567  //查看java 進程4567 生成的所有實例數量


jmap -dump:file=c:\dump.txt 4567  將進程4567的內存dump到dump.txt文件中


jhat -J -Xmx512m [file]  //file是dump出來的文件路徑和文件名稱, jhat內置一個簡單的web服務器,生成完以後
//可以通過一個web地址訪問,可以使用-port選項指定端口




jstat -gcutil 16540 5s 10  //查看 java 進程4567的內存使用情況,包含年輕代,老年代使用百分比,
 // gc次數,gc使用時間等信息,沒5s刷新一下情況,輸出10次.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章