天天看點

Ubuntu常用指令[轉]

在 2009年6月30日(星期二) 下午2:03 說:檢視軟體xxx安裝内容

dpkg -L xxx

查找軟體庫中的軟體

apt-cache search 正規表達式

aptitude search 軟體包

查找檔案屬于哪個包

dpkg -S filename

apt-file search filename

查詢軟體xxx依賴哪些包

apt-cache depends xxx

查詢軟體xxx被哪些包依賴

apt-cache rdepends xxx

增加一個CD光牒源

sudo apt-cdrom add

系統更新

sudo apt-get update;sudo apt-get dist-upgrade

清除已删除包的殘馀配置檔案

dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

編譯時缺少h檔案的自動處理

sudo auto-apt run ./configure

檢視安裝軟體時下載下傳包的臨時存放目錄

ls /var/cache/apt/archives

備份目前系統安裝的所有包的清單

dpkg --get-selections | grep -v deinstall > ~/somefile

從備份的安裝包的清單檔案恢複所有包

dpkg --set-selections < ~/somefile;sudo dselect

清理舊版本的軟體緩存

sudo apt-get autoclean

清理所有軟體緩存

sudo apt-get clean

删除系統不再使用的孤立軟體

sudo apt-get autoremove

檢視包在伺服器上面的位址

apt-get -qq --print-uris install ssh | cut -d\\' -f2

檢視核心

uname -a

檢視Ubuntu版本

cat /etc/issue 或 lsb_release -a

檢視核心加載的子產品

lsmod

檢視PCI裝置

lspci

檢視USB裝置

lsusb -v

檢視網卡狀态

sudo ethtool eth0

檢視CPU資訊

cat /proc/cpuinfo

顯示目前硬體資訊

sudo lshw

顯示系統運作時間

uptime

檢視硬碟的分區

sudo fdisk -l

硬碟分區

sudo fdisk /dev/sda

硬碟格式化

sudo mkfs.ext3 /dev/sda1

硬碟檢查(請不要檢查已經挂載的分區,否則容易損壞資料)

sudo fsck /dev/sda1

分區挂載

sudo mount -t 檔案系統類型 (-o nls=utf8 或 -o iocharset=utf8) 裝置路經 通路路經

分區解除安裝

sudo umount 目錄名或裝置名

檢視IDE硬碟資訊

sudo hdparm -i /dev/hda

檢視STAT硬碟資訊

sudo hdparm -I /dev/sda 或 sudo blktool /dev/sda id

檢視硬碟剩馀空間

df

檢視目錄占用空間

du -hs 目錄名

優盤沒法解除安裝

sync;fuser -km /media/usbdisk

檢視硬碟目前讀寫情況

sudo iostat -x 2

檢視目前的記憶體使用情況

free

動态顯示程序執行情況

top

檢視目前有哪些程序

ps -A

檢視目前程序樹

pstree

中止一個程序

kill 程序号 或 killall 程序名

強制中止一個程序

kill -9 程序号 或 killall -9 程序名

圖形方式中止一個程式

xkill 出現骷髅标志的滑鼠,點選需要中止的程式即可

檢視程序打開的檔案

lsof -p

顯示開啟檔案abc.txt的程序

lsof abc.txt

顯示22端口現在運作什麼程式

lsof -i :22

顯示nsd程序現在打開的檔案

lsof -c nsd

在背景運作程式,登出後,并不結束程式

nohup 程式 &

詳細顯示程式的運作資訊

strace -f -F -o outfile <cmd>

增加系統最大打開檔案個數

ulimit -n 4096 或 echo 4096 > /proc/sys/fs/file-max

配置 ADSL

sudo pppoeconf

ADSL手工撥号

sudo pon dsl-provider

激活 ADSL

sudo /etc/ppp/pppoe_on_boot

斷開 ADSL

sudo poff

檢視撥号日志

sudo plog

如何設定動态域名

w3m -no-cookie -dump 'http://usere:[email protected]/dyndns/update?system=dyndns&hostname=yourdns.3322.org'

根據IP查網卡位址

arping IP位址

根據IP查電腦名

nmblookup -A IP位址

檢視目前IP位址

ifconfig eth0 |awk '/inet/ {split($2,x,\":\");print x[2]}'

檢視目前外網的IP位址

w3m -no-cookie -dump www.123cha.com|grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}'

檢視目前監聽80端口的程式

lsof -i :80

檢視目前網卡的實體位址

arp -a | awk '{print $4}'

同一個網卡增加第二個IP位址

sudo ifconfig eth0:0 1.2.3.4 netmask 255.255.255.0

立即讓網絡支援nat

echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward; sudo iptables -t nat -I POSTROUTING -j MASQUERADE

檢視路由資訊

netstat -rn 或 sudo route -n

手工增加一條路由

sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

手工删除一條路由

sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1

修改網卡MAC位址的方法

sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE

統計目前IP連接配接的個數

netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n

屏蔽IPV6

echo 'blacklist ipv6' | sudo tee /etc/modprobe.d/blacklist-ipv6

察看目前網絡連接配接狀況以及程式

sudo netstat -atnp

檢視ADSL的目前流量

sudo ethstatus -i ppp0

檢視域名的注冊備案情況

whois baidu.cn

檢視到某一個域名的路由情況

tracepath baidu.cn

重新從伺服器獲得IP位址

sudo dhclient

下載下傳網站文檔

wget -r -p -np -k http://www.xxx.com

如何5個線程下載下傳

axel -n 5 http://www.xxx.com/downloadfile.zip

添加一個服務

sudo update-rc.d 服務名 defaults 99

删除一個服務

sudo update-rc.d 服務名 remove

臨時重新開機一個服務

/etc/init.d/服務名 restart

臨時關閉一個服務

/etc/init.d/服務名 stop

臨時啟動一個服務

/etc/init.d/服務名 start

增加使用者

sudo adduser 使用者名

删除使用者

sudo deluser 使用者名

修改目前使用者的密碼

passwd

修改使用者密碼

sudo passwd 使用者名

修改使用者資料

sudo chfn userid

如何禁用某個帳戶

sudo usermod -L 使用者名 或 sudo passwd -l 使用者名

如何啟用某個帳戶

sudo usermod -U 使用者名 或 sudo passwd -u 使用者名

增加使用者到admin組

sudo usermod -G admin -a 使用者名

配置預設Java使用哪個

sudo update-alternatives --config java

終端設定代理

export http_proxy=http://xx.xx.xx.xx:xxx

修改系統登入資訊

sudo vim /etc/motd

使用sun的java編譯器

sudo update-java-alternatives -s java-6-sun

切換輸入法引擎

im-switch -c

轉換檔案名由GBK為UTF8

convmv -r -f cp936 -t utf8 --notest --nosmart *

轉換檔案内容由GBK到UTF8

iconv -f gbk -t utf8 $i > newfile

轉換 mp3 标簽編碼

sudo apt-get install python-mutagen;find . -iname '*.mp3' -execdir mid3iconv -e GBK {} \\;

控制台下顯示中文

sudo apt-get install zhcon;zhcon --utf8 --drv=vga

lftp 登入遠端Windows中文FTP 

lftp :~>set ftp:charset GBK

PDF 檔案亂碼

sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional poppler-data

一屏檢視檔案内容

cat 檔案名

分頁檢視檔案内容

more 檔案名

可控分頁檢視檔案内容

less 檔案名

根據字元串比對來檢視檔案部分内容

grep 字元串 檔案名

顯示包含字元串的檔案名

grep -l -r 字元串 路徑

顯示不包含字元串的檔案名

grep -L -r 字元串 路徑

快速查找某個檔案

find 目錄 -name 檔案名

建立兩個空檔案

touch file1 file2

遞歸式建立一些嵌套目錄

mkdir –p /tmp/xxs/dsd/efd

遞歸式删除嵌套目錄

rm –fr /tmp/xxs

回目前使用者的宿主目錄

cd ~

檢視目前所在目錄的絕對路經

pwd

列出目前目錄下的所有檔案

ls -a

移動路徑下的檔案并改名

mv 路徑/檔案 /新路徑/新檔案名

複制檔案或者目錄

cp -av 原檔案或原目錄 新檔案或新目錄

檢視檔案類型

file filename

對比兩個檔案之間的差異

diff file1 file2

顯示xxx檔案倒數6行的内容

tail -n 6 xxx

不停地顯示最新的内容

tail -n 10 -f /var/log/apache2/access.log

檢視檔案第五行到第10行的内容

sed -n '5,10p' /var/log/apache2/access.log

查找關于xxx的指令

apropos xxx 或 man -k xxx

通過ssh傳輸檔案

scp -rp /path/filename

把所有檔案的後辍由rm改為rmvb

rename 's/.rm$/.rmvb/' *

把所有檔案名中的大寫改為小寫

rename 'tr/A-Z/a-z/' *

删除特殊檔案名 --help.txt 的檔案

rm -- --help.txt 或 rm ./--help.txt

檢視目前目錄的子目錄

ls -d */. 或 echo */.

将最近30天通路過的檔案移動到上級back目錄

find . -type f -atime -30 -exec mv {} ../back \\;

顯示一小時以内的包含 xxxx 的檔案

find . -type f -mmin -60|xargs -i grep -l xxxx '{}'

顯示最近2小時到8小時之内的檔案

find . -mmin +120 -mmin -480 -exec more {} \\;

删除修改時間在30天之前的檔案

find . -type f -mtime +30 -mtime -3600 -exec rm {} \\;

删除建立時間在30天之前的檔案

find . -type f -ctime +30 -ctime -3600 -exec rm {} \\;

删除掉guest的以avi或rm結尾的檔案

find . -name '*.avi' -o -name '*.rm' -user 'guest' -exec rm {} \\;

删除掉不以java和xml結尾7天沒有使用的檔案

find . ! -name *.java ! -name '*.xml' -atime +7 -exec rm {} \\;

删除所有的 .svn 目錄

find . -name .svn -type d -exec rm -fr {} \\;

删除所有以“~”結尾的臨時檔案

find . -name '*~' -exec rm {} \\;

統計目前檔案個數

ls .|wc -w

統計目前目錄個數

ls -l |grep ^d|wc -l

顯示目前目錄下2006-01-01的檔案名

ls -l |grep 2006-01-01 |awk '{print $8}'

使用ssh方式同步遠端資料到本地目錄

rsync -Pa -I --size-only --delete --timeout=300 Remote_IP:/home/ubuntu /backup

增加 7Z 壓縮軟體

sudo apt-get install p7zip p7zip-full p7zip-rar

增加 rar 軟體壓縮和解壓縮支援

sudo apt-get install rar unrar

解壓縮 xxx.tar.gz

tar -zxvf xxx.tar.gz

解壓縮 xxx.tar.bz2

tar -jxvf xxx.tar.bz2

壓縮aaa bbb目錄為xxx.tar.gz

tar -zcvf xxx.tar.gz aaa bbb

壓縮aaa bbb目錄為xxx.tar.bz2

tar -jcvf xxx.tar.bz2 aaa bbb

增加 lha 支援

sudo apt-get install lha

增加解 cab 檔案支援

sudo apt-get install cabextract

顯示月曆

cal

設定日期

date -s mm/dd/yy

設定時間

date -s HH:MM

将時間寫入CMOS

hwclock --systohc

檢視CMOS時間

hwclock --show

讀取CMOS時間

hwclock --hctosys

從伺服器上同步時間

sudo ntpdate ntp.ubuntu.com

設定電腦的時區為上海

sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

關閉UTC,将目前時間寫入CMOS。

sudo sed -ie 's/UTC=yes/UTC=no/g' /etc/default/rcS;sudo hwclock --systohc

修改mysql的root密碼

sudo mysqladmin -u root -p password '你的新密碼'

如何使用指令關閉顯示器

xset dpms force off

設定CPU的頻率

sudo apt-get install cpufrequtils;sudo cpufreq-info

指令關機

sudo halt

現在關機

sudo shutdown -h now

晚上11點自動關機

sudo shutdown -h 23:00

60分鐘後關機

sudo shutdown -h +60

指令重新開機電腦

sudo reboot

現在重新開機電腦

sudo shutdown -r now

關閉筆記本的觸摸闆

synclient touchpadoff=1

開啟筆記本的觸摸闆

synclient touchpadoff=0

統計每個單詞的出現頻率并排序

awk '{arr[$1]+=1 }END{for(i in arr){print arr[i]\"\\t\"i}}' FILE_NAME | sort -rn

統計80端口的連接配接并排序

netstat -na|grep :80|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n

把終端加到右鍵菜單

sudo apt-get install nautilus-open-terminal

如何删除Totem電影播放機的播放曆史記錄

rm ~/.recently-used

vim 如何顯示彩色字元

sudo cp /usr/share/vim/vimcurrent/vimrc_example.vim /usr/share/vim/vimrc

讓 vim 直接支援編輯 .gz 檔案

sudo apt-get install vim-full

vim 如何顯示行号

:set number

檢視在會話設定的啟動程式

ls ~/.config/autostart

提高wine的反應速度

sudo sed -ie '/GBK/,/^}/d' /usr/share/X11/locale/zh_CN.UTF-8/XLC_LOCALE

制作ISO檔案

mkisofs -o test.iso -Jrv -V test_disk /home/carla/

延遲10秒抓圖

gnome-screenshot -d 10

延遲5秒抓目前激活視窗

gnome-screenshot -w -d 5

如何指令行刻錄

cdrecord -scanbus;cdrecord -v -eject speed=8 dev=1,1,0 test.iso

資源回收筒在哪裡

~/.local/share/Trash/

預設打開方式的配置檔案在哪裡

~/.local/share/applications/mimeapps.list

如何檢視HTTP頭

w3m -dump_head http://www.xxx.com

連續監視記憶體使用情況

watch -d free

如何切換到root帳号

sudo -Hs

隻讀挂載ntfs分區

sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c

可寫挂載ntfs分區

sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c

挂載fat32分區

sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c

挂載共享檔案

sudo mount -t smbfs -o username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share

挂載ISO檔案

sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso

帶行号顯示檔案的内容

nl 檔案名

批量将rmvb轉為avi

for i in *; do mencoder -oac mp3lame -lameopts vbr=3 -ovc xvid -xvidencopts fixed_quant=4 -of avi $i -o `echo $i | sed -e 's/rmvb$/avi/'`; done

批量将svg轉為png

for i in *; do inkscape $i --export-png=`echo $i | sed -e 's/svg$/png/'`; done

批量縮小圖檔到30%

for i in *; do convert -resize 30%x30% $1 sm-$1; done

批量轉換jpg到png

for i in *; do convert $i `echo $i | sed -e 's/jpg$/png/'`; done

擷取jpg的擴充資訊(Exif)

identify -verbose xxx.jpg

檢視目前系統所有的監聽端口

nc -zv localhost 1-65535

去掉檔案中的^M

cat filename | tr -d \"^M\" > newfile

sed -e \"s/^M//g\" filename > newfile

轉換bin/cue到iso檔案

sudo apt-get install bchunk;bchunk image.bin image.cue image

轉換目錄到iso檔案

mkisofs dirname -o isofile.iso

轉換CD到iso檔案

dd if=/dev/cdrom of=isofile.iso

ape轉換為flac

sudo apt-get install flac shntool;shntool split -t \"%n.%p-%t\" -f example_UTF-8.cue -o flac example.ape -d flacOutputDir

ape轉換為mp3

sudo apt-get install flac shntool lame;shntool split -t \"%n.%p-%t\" -f example_UTF-8.cue -o 'cust ext=mp3 lame --r3mix -b 320 --quiet - %f' example.ape -d mp3OutputDir

檢查本地是否存在安全隐患

sudo apt-get install rkhunter;rkhunter --checkall

如何安裝防毒軟體

sudo apt-get install clamav;clamscan -r ~/

檢視網絡連接配接狀态

netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'

統計程式的記憶體耗用

ps -eo fname,rss|awk '{arr[$1]+=$2} END {for (i in arr) {print i,arr[i]}}'|sort -k2 -nr

顯示目前記憶體大小

free -m |grep \"Mem\" | awk '{print $2}'

按記憶體從大到小排列程序

ps -eo \"%C : %p : %z : %a\"|sort -k5 -nr

按cpu使用率從大到小排列程序

ps -eo \"%C : %p : %z : %a\"|sort -nr

統計目前目錄下所有jpg檔案的尺寸

find . -name *.jpg -exec wc -c {} \\;|awk '{print $1}'|awk '{a+=$1}END{print a}'

清除僵死程序

ps -eal | awk '{ if ($2 == \"Z\") {print $4}}' | sudo kill -9

CD 抓軌為 mp3 (有損)

sudo apt-get install abcde;abcde -o mp3 -b

CD 抓軌為 Flac (無損)

sudo apt-get install abcde;abcde -o flac -b

顯示系統安裝包的統計資訊

apt-cache stats

顯示系統全部可用包的名稱

apt-cache pkgnames

顯示包的資訊

apt-cache show k3b

也可以到我的Blog:http://blog.591by.com