天天看點

【轉載】Linux常用指令大全

系統資訊 

arch 顯示機器的處理器架構(1) 

uname -m 顯示機器的處理器架構(2) 

uname -r 顯示正在使用的核心版本 

dmidecode -q 顯示硬體系統部件 - (SMBIOS / DMI) 

hdparm -i /dev/hda 羅列一個磁盤的架構特性 

hdparm -tT /dev/sda 在磁盤上執行測試性讀取操作 

cat /proc/cpuinfo 顯示CPU info的資訊 

cat /proc/interrupts 顯示中斷 

cat /proc/meminfo 校驗記憶體使用 

cat /proc/swaps 顯示哪些swap被使用 

cat /proc/version 顯示核心的版本 

cat /proc/net/dev 顯示網絡擴充卡及統計 

cat /proc/mounts 顯示已加載的檔案系統 

lspci -tv 羅列 PCI 裝置 

lsusb -tv 顯示 USB 裝置 

date 顯示系統日期 

cal 2007 顯示2007年的月曆表 

date 041217002007.00 設定日期和時間 - 月日時分年.秒 

clock -w 将時間修改儲存到 BIOS 

關機 (系統的關機、重新開機以及登出 ) 

shutdown -h now 關閉系統(1) 

init 0 關閉系統(2) 

telinit 0 關閉系統(3) 

shutdown -h hours:minutes & 按預定時間關閉系統 

shutdown -c 取消按預定時間關閉系統 

shutdown -r now 重新開機(1) 

reboot 重新開機(2) 

logout 登出 

檔案和目錄 

cd /home 進入 '/ home' 目錄' 

cd .. 傳回上一級目錄 

cd ../.. 傳回上兩級目錄 

cd 進入個人的主目錄 

cd ~user1 進入個人的主目錄 

cd - 傳回上次所在的目錄 

pwd 顯示工作路徑 

ls 檢視目錄中的檔案 

ls -F 檢視目錄中的檔案 

ls -l 顯示檔案和目錄的詳細資料 

ls -a 顯示隐藏檔案 

ls *[0-9]* 顯示包含數字的檔案名和目錄名 

tree 顯示檔案和目錄由根目錄開始的樹形結構(1) 

lstree 顯示檔案和目錄由根目錄開始的樹形結構(2) 

mkdir dir1 建立一個叫做 'dir1' 的目錄' 

mkdir dir1 dir2 同時建立兩個目錄 

mkdir -p /tmp/dir1/dir2 建立一個目錄樹 

rm -f file1 删除一個叫做 'file1' 的檔案' 

rmdir dir1 删除一個叫做 'dir1' 的目錄' 

rm -rf dir1 删除一個叫做 'dir1' 的目錄并同時删除其内容 

rm -rf dir1 dir2 同時删除兩個目錄及它們的内容 

mv dir1 new_dir 重命名/移動 一個目錄 

cp file1 file2 複制一個檔案 

cp dir0/g' example.txt 用單個零替換多個零 

cat -n file1 标示檔案的行數 

cat example.txt | awk 'NR%2==1' 删除example.txt檔案中的所有偶數行 

echo a b c | awk '{print $1}' 檢視一行第一欄 

echo a b c | awk '{print $1,$3}' 檢視一行的第一和第三欄 

paste file1 file2 合并兩個檔案或兩欄的内容 

paste -d '+' file1 file2 合并兩個檔案或兩欄的内容,中間用"+"區分 

sort file1 file2 排序兩個檔案的内容 

sort file1 file2 | uniq 取出兩個檔案的并集(重複的行隻保留一份) 

sort file1 file2 | uniq -u 删除交集,留下其他的行 

sort file1 file2 | uniq -d 取出兩個檔案的交集(隻留下同時存在于兩個檔案中的檔案) 

comm -1 file1 file2 比較兩個檔案的内容隻删除 'file1' 所包含的内容 

comm -2 file1 file2 比較兩個檔案的内容隻删除 'file2' 所包含的内容 

comm -3 file1 file2 比較兩個檔案的内容隻删除兩個檔案共有的部分 

字元設定和檔案格式轉換 

dos2unix filedos.txt fileunix.txt 将一個文本檔案的格式從MSDOS轉換成UNIX 

unix2dos fileunix.txt filedos.txt 将一個文本檔案的格式從UNIX轉換成MSDOS 

recode ..HTML < page.txt > page.html 将一個文本檔案轉換成html 

recode -l | more 顯示所有允許的轉換格式 

檔案系統分析 

badblocks -v /dev/hda1 檢查磁盤hda1上的壞磁塊 

fsck /dev/hda1 修複/檢查hda1磁盤上linux檔案系統的完整性 

fsck.ext2 /dev/hda1 修複/檢查hda1磁盤上ext2檔案系統的完整性 

e2fsck /dev/hda1 修複/檢查hda1磁盤上ext2檔案系統的完整性 

e2fsck -j /dev/hda1 修複/檢查hda1磁盤上ext3檔案系統的完整性 

fsck.ext3 /dev/hda1 修複/檢查hda1磁盤上ext3檔案系統的完整性 

fsck.vfat /dev/hda1 修複/檢查hda1磁盤上fat檔案系統的完整性 

fsck.msdos /dev/hda1 修複/檢查hda1磁盤上dos檔案系統的完整性 

dosfsck /dev/hda1 修複/檢查hda1磁盤上dos檔案系統的完整性 

初始化一個檔案系統 

mkfs /dev/hda1 在hda1分區建立一個檔案系統 

mke2fs /dev/hda1 在hda1分區建立一個linux ext2的檔案系統 

mke2fs -j /dev/hda1 在hda1分區建立一個linux ext3(日志型)的檔案系統 

mkfs -t vfat 32 -F /dev/hda1 建立一個 FAT32 檔案系統 

fdformat -n /dev/fd0 格式化一個軟碟 

mkswap /dev/hda3 建立一個swap檔案系統 

SWAP檔案系統 

mkswap /dev/hda3 建立一個swap檔案系統 

swapon /dev/hda3 啟用一個新的swap檔案系統 

swapon /dev/hda2 /dev/hdb3 啟用兩個swap分區 

備份 

dump -0aj -f /tmp/home0.bak /home 制作一個 '/home' 目錄的完整備份 

dump -1aj -f /tmp/home0.bak /home 制作一個 '/home' 目錄的互動式備份 

restore -if /tmp/home0.bak 還原一個互動式備份 

rsync -rogpav --delete /home /tmp 同步兩邊的目錄 

rsync -rogpav -e ssh --delete /home ip_address:/tmp 通過SSH通道rsync 

rsync -az -e ssh --delete ip_addr:/home/public /home/local 通過ssh和壓縮将一個遠端目錄同步到本地目錄 

rsync -az -e ssh --delete /home/local ip_addr:/home/public 通過ssh和壓縮将本地目錄同步到遠端目錄 

dd bs=1M if=/dev/hda | gzip | ssh [email protected]_addr 'dd of=hda.gz' 通過ssh在遠端主機上執行一次備份本地磁盤的操作 

dd if=/dev/sda of=/tmp/file1 備份磁盤内容到一個檔案 

tar -Puf backup.tar /home/user 執行一次對 '/home/user' 目錄的互動式備份操作 

( cd /tmp/local/ && tar c . ) | ssh -C [email protected]_addr 'cd /home/share/ && tar x -p' 通過ssh在遠端目錄中複制一個目錄内容 

( tar c /home ) | ssh -C [email protected]_addr 'cd /home/backup-home && tar x -p' 通過ssh在遠端目錄中複制一個本地目錄 

tar cf - . | (cd /tmp/backup ; tar xf - ) 本地将一個目錄複制到另一個地方,保留原有權限及連結 

find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 從一個目錄查找并複制所有以 '.txt' 結尾的檔案到另一個目錄 

find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 結尾的檔案并做成一個bzip包 

dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一個将 MBR (Master Boot Record)内容複制到軟碟的動作 

dd if=/dev/fd0 of=/dev/hda bs=512 count=1 從已經儲存到軟碟的備份中恢複MBR内容 

CD光牒 

cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一個可複寫的CD光牒内容 

mkisofs /dev/cdrom > cd.iso 在磁盤上建立一個CD光牒的iso鏡像檔案 

mkisofs /dev/cdrom | gzip > cd_iso.gz 在磁盤上建立一個壓縮了的CD光牒iso鏡像檔案 

mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd 建立一個目錄的iso鏡像檔案 

cdrecord -v dev=/dev/cdrom cd.iso 刻錄一個ISO鏡像檔案 

gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - 刻錄一個壓縮了的ISO鏡像檔案 

mount -o loop cd.iso /mnt/iso 挂載一個ISO鏡像檔案 

cd-paranoia -B 從一個CDCD光牒轉錄音軌到 wav 檔案中 

cd-paranoia -- "-3" 從一個CDCD光牒轉錄音軌到 wav 檔案中(參數-3) 

cdrecord --scanbus 掃描總線以識别scsi通道 

dd if=/dev/hdc | md5sum 校驗一個裝置的md5sum編碼,例如一張 CD 

網絡 - (以太網和WIFI無線) 

ifconfig eth0 顯示一個以太網卡的配置 

ifup eth0 啟用一個 'eth0' 網絡裝置 

ifdown eth0 禁用一個 'eth0' 網絡裝置 

ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP位址 

ifconfig eth0 promisc 設定 'eth0' 成混雜模式以嗅探資料包 (sniffing) 

dhclient eth0 以dhcp模式啟用 'eth0' 

route -n show routing table 

route add -net 0/0 gw IP_Gateway configura default gateway 

route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure static route to reach network '192.168.0.0/16' 

route del 0/0 gw IP_gateway remove static route 

echo "1" > /proc/sys/net/ipv4/ip_forward activate ip routing 

hostname show hostname of system 

host www.example.com lookup hostname to resolve name to ip address and viceversa(1) 

nslookup www.example.com lookup hostname to resolve name to ip address and viceversa(2) 

ip link show show link status of all interfaces 

mii-tool eth0 show link status of 'eth0' 

ethtool eth0 show statistics of network card 'eth0' 

netstat -tup show all active network connections and their PID 

netstat -tupl show all network services listening on the system and their PID 

tcpdump tcp port 80 show all HTTP traffic 

iwlist scan show wireless networks 

iwconfig eth1 show configuration of a wireless network card 

hostname show hostname 

host www.example.com lookup hostname to resolve name to ip address and viceversa 

nslookup www.example.com lookup hostname to resolve name to ip address and viceversa 

whois www.example.com lookup on Whois database 

JPS工具

jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一個顯示目前所有java程序pid的指令,簡單實用,非常适合在linux/unix平台上簡單察看目前java程序的一些簡單情況。

    我想很多人都是用過unix系統裡的ps指令,這個指令主要是用來顯示目前系統的程序情況,有哪些程序,及其 id。 jps 也是一樣,它的作用是顯示目前系統的java程序情況,及其id号。我們可以通過它來檢視我們到底啟動了幾個java程序(因為每一個java程式都會獨占一個java虛拟機執行個體),和他們的程序号(為下面幾個程式做準備),并可通過opt來檢視這些程序的詳細啟動參數。

     使用方法:在目前指令行下打 jps(需要JAVA_HOME,沒有的話,到改程式的目錄下打) 。

jps存放在JAVA_HOME/bin/jps,使用時為了友善請将JAVA_HOME/bin/加入到Path.

$> jps

23991 Jps

23789 BossMain

23651 Resin

比較常用的參數:

-q 隻顯示pid,不顯示class名稱,jar檔案名和傳遞給main 方法的參數

$>  jps -q

28680

23789

23651

-m 輸出傳遞給main 方法的參數,在嵌入式jvm上可能是null

$> jps -m

28715 Jps -m

23789 BossMain

23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log

-l 輸出應用程式main class的完整package名 或者 應用程式的jar檔案完整路徑名

$> jps -l

28729 sun.tools.jps.Jps

23789 com.asiainfo.aimc.bossbi.BossMain

23651 com.caucho.server.resin.Resin

-v 輸出傳遞給JVM的參數

$> jps -v

23789 BossMain

28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/data/aoxj/jd

k15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m

23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -

Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl

sudo jps看到的程序數量最全

jps 192.168.0.77

列出遠端伺服器192.168.0.77機器所有的jvm執行個體,采用rmi協定,預設連接配接端口為1099

(前提是遠端伺服器提供jstatd服務)

注:jps指令有個地方很不好,似乎隻能顯示目前使用者的java程序,要顯示其他使用者的還是隻能用unix/linux的ps指令。

詳細情況請參考sun官方文檔。

http://java.sun.com/j2se/1.7.0/docs/tooldocs/share/jps.html

[轉載連結]https://www.cnblogs.com/yjd_hycf_space/p/7730690.html

繼續閱讀