Ubuntu常用命令大全

一、文件/文件夾管理


ls 列出當前目錄文件(不包括隱含文件)
ls -a 列出當前目錄文件(包括隱含文件)
ls -l 列出當前目錄下文件的詳細信息

cd .. 回當前目錄的上一級目錄
cd - 回上一次所在的目錄
cd ~ 或 cd 回當前用戶的宿主目錄
mkdir 目錄名 創建一個目錄
rmdir 空目錄名 刪除一個空目錄
rm 文件名 文件名 刪除一個文件或多個文件
rm -rf 非空目錄名 刪除一個非空目錄下的一切

mv 路經/文件 /經/文件移動相對路經下的文件到絕對路經下
mv 文件名 新名稱 在當前目錄下改名
find 路經 -name “字符串” 查找路經所在範圍內滿足字符串匹配的文件和目錄

二、系統管理

fdisk fdisk -l 查看系統分區信息
fdisk fdisk /dev/sdb 爲一塊新的SCSI硬盤進行分區
chown chown root /home 把/home的屬主改成root用戶
chgrp chgrp root /home 把/home的屬組改成root組

Useradd 創建一個新的用戶
Groupadd 組名 創建一個新的組
Passwd 用戶名 爲用戶創建密碼
Passwd -d用戶名 刪除用戶密碼也能登陸
Passwd -S用戶名 查詢賬號密碼
Usermod -l 新用戶名 老用戶名 爲用戶改名
Userdel–r 用戶名 刪除用戶一切

service [servicename] start/stop/restart 系統服務控制操作
/etc/init.d/[servicename] start/stop/restart 系統服務控制操作

uname -a 查看內核版本
cat /etc/issue 查看ubuntu版本
lsusb 查看usb設備
sudo ethtool eth0 查看網卡狀態
cat /proc/cpuinfo 查看cpu信息
lshw 查看當前硬件信息
sudo fdisk -l 查看磁盤信息
df -h 查看硬盤剩餘空間
free -m 查看當前的內存使用情況
ps -A 查看當前有哪些進程
kill 進程號(就是ps -A中的第一列的數字)或者 killall 進程名( 殺死一個進程)
kill -9 進程號 強制殺死一個進程

reboot Init 6 重啓LINUX系統
Halt Init 0 Shutdown –h now 關閉LINUX系統

三、打包/解壓

tar -c 創建包 –x 釋放包 -v 顯示命令過程 –z 代表壓縮包
tar –cvf benet.tar /home/benet 把/home/benet目錄打包
tar –zcvf benet.tar.gz /mnt 把目錄打包並壓縮
tar –zxvf benet.tar.gz 壓縮包的文件解壓恢復
tar –jxvf benet.tar.bz2 解壓縮

四、make編譯

make 編譯
make install 安裝編譯好的源碼包

五、apt命令

apt-cache search package 搜索包
apt-cache show package 獲取包的相關信息,如說明、大小、版本等
sudo apt-get install package 安裝包
sudo apt-get install package - - reinstall 重新安裝包
sudo apt-get -f install 修復安裝”-f = –fix-missing”
sudo apt-get remove package 刪除包
sudo apt-get remove package - - purge 刪除包,包括刪除配置文件等
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安裝的包
sudo apt-get dist-upgrade 升級系統
sudo apt-get dselect-upgrade 使用 dselect 升級
apt-cache depends package 瞭解使用依賴
apt-cache rdepends package 是查看該包被哪些包依賴
sudo apt-get build-dep package 安裝相關的編譯環境
apt-get source package 下載該包的源代碼
sudo apt-get clean && sudo apt-get autoclean 清理無用的包
sudo apt-get check 檢查是否有損壞的依賴
sudo apt-get clean 清理所有軟件緩存(即緩存在/var/cache/apt/archives目錄裏的deb包)

查看軟件xxx安裝內容
#dpkg -L xxx

查找軟件
#apt-cache search 正則表達式
查找文件屬於哪個包
#dpkg -S filename apt-file search filename

查詢軟件xxx依賴哪些包
#apt-cache depends xxx

查詢軟件xxx被哪些包依賴
#apt-cache rdepends xxx

增加一個光盤源
#sudo apt-cdrom add

系統升級
#sudo apt-get update
#sudo apt-get upgrade
#sudo apt-get dist-upgrade

清除所以刪除包的殘餘配置文件
#dpkg -l |grep ^rc|awk ‘{print $2}’ |tr ["\n"] [" “]|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

查看內核加載的模塊
#lsmod

查看PCI設備
#lspci

查看USB設備
#lsusb

查看網卡狀態
#sudo ethtool eth0

查看CPU信息
#cat /proc/cpuinfo

顯示當前硬件信息
#lshw

硬盤
查看硬盤的分區
#sudo fdisk -l

查看IDE硬盤信息
#sudo hdparm -i /dev/hda

查看STAT硬盤信息
#sudo hdparm -I /dev/sda

#sudo apt-get install blktool
#sudo blktool /dev/sda id

查看硬盤剩餘空間
#df -h
#df -H

查看目錄佔用空間
#du -hs 目錄名

優盤沒法卸載
#sync fuser -km /media/usbdisk

內存
查看當前的內存使用情況
#free -m

進程
查看當前有哪些進程
#ps -A
中止一個進程
#kill 進程號(就是ps -A中的第一列的數字) 或者 killall 進程名

強制中止一個進程(在上面進程中止不成功的時候使用)
#kill -9 進程號 或者 killall -9 進程名

圖形方式中止一個程序
#xkill 出現骷髏標誌的鼠標,點擊需要中止的程序即可

查看當前進程的實時狀況
#top

查看進程打開的文件
#lsof -p

ADSL 配置 ADSL
#sudo pppoeconf

ADSL手工撥號
#sudo pon dsl-provider

激活 ADSL
#sudo /etc/ppp/pppoe_on_boot

斷開 ADSL
#sudo poff

查看撥號日誌
#sudo plog

如何設置動態域名
#首先去申請一個動態域名
#然後修改 /etc/ppp/ip-up 增加撥號時更新域名指令 sudo vim /etc/ppp/ip-up
#在最後增加如下行 w3m -no-cookie -dump

網絡
根據IP查網卡地址
#arping IP地址

查看當前IP地址
#ifconfig eth0 |awk ‘/inet/ {split($2,x,":");print x[2]}’

查看當前外網的IP地址
#w3m -no-cookie |grep-o‘[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}’
#w3m -no-cookie |grep-o’[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}’
#w3m -no-cookie -dump |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}’ ifconfig eth0 | head -1 | awk ‘{print $5}’

立即讓網絡支持nat
#sudo echo 1 > /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 down 關閉網卡
#sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE 然後改地址
#sudo ifconfig eth0 up 然後啓動網卡

統計當前IP連接的個數
#netstat -na|grep ESTABLISHED|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n
#netstat -na|grep SYN|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n

統計當前20000個IP包中大於100個IP包的IP地址
#tcpdump -tnn -c 20000 -i eth0 | awk -F “." ‘{print $1″."$2″."$3″."$4}’ | sort | uniq -c | sort -nr | awk ‘ $1 > 100 ‘

屏蔽IPV6
#echo “blacklist ipv6″ | sudo tee /etc/modprobe.d/blacklist-ipv6

服務
添加一個服務
#sudo update-rc.d 服務名 defaults 99

刪除一個服務
#sudo update-rc.d 服務名 remove

臨時重啓一個服務
#/etc/init.d/服務名 restart

臨時關閉一個服務
#/etc/init.d/服務名 stop

臨時啓動一個服務
#/etc/init.d/服務名 start

設置
配置默認Java使用哪個
#sudo update-alternatives –config java

修改用戶資料
#sudo chfn userid

給apt設置代理
#export

修改系統登錄信息
#sudo vim /etc/motd

中文
轉換文件名由GBK爲UTF8
#sudo apt-get install convmv convmv -r -f cp936 -t utf8 –notest –nosmart *

批量轉換src目錄下的所有文件內容由GBK到UTF8
#find src -type d -exec mkdir -p utf8/{} \; find src -type f -exec iconv -f GBK -t UTF-8 {} -o utf8/{} \; mv utf8/* src rm -fr utf8

轉換文件內容由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即可

文件
快速查找某個文件
#whereis filename
#find 目錄 -name 文件名

查看文件類型
#file filename

顯示xxx文件倒數6行的內容
#tail -n 6 xxx

讓tail不停地讀地最新的內容
#tail -n 10 -f /var/log/apache2/access.log

查看文件中間的第五行(含)到第10行(含)的內容
#sed -n ‘5,10p’ /var/log/apache2/access.log

查找包含xxx字符串的文件
#grep -l -r xxx .

全盤搜索文件(桌面可視化)
gnome-search-tool

查找關於xxx的命令
#apropos xxx man -k xxx

通過ssh傳輸文件
#scp -rp /path/filenameusername@remoteIP:/path
#將本地文件拷貝到服務器上
#scp -rpusername@remoteIP:/path/filename/path
#將遠程文件從服務器下載到本地

查看某個文件被哪些應用程序讀寫
#lsof 文件名

把所有文件的後輟由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 \;

將當前目錄下最近2小時到8小時之內的文件顯示出來
#find . -mmin +120 -mmin -480 -exec more {} \;

刪除修改時間在30天之前的所有文件
#find . -type f -mtime +30 -mtime -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 {} \;

統計當前文件個數
#ls /usr/bin|wc -w

統計當前目錄個數
#ls -l /usr/bin|grep ^d|wc -l

顯示當前目錄下2006-01-01的文件名
#ls -l |grep 2006-01-01 |awk ‘{print $8}’

FTP
上傳下載文件工具-filezilla
#sudo apt-get install filezilla

filezilla無法列出中文目錄?
站點->字符集->自定義->輸入:GBK

本地中文界面
1)下載filezilla中文包到本地目錄,如~/
2)#unrar x Filezilla3_zhCN.rar
3) 如果你沒有unrar的話,請先安裝rar和unrar
#sudo apt-get install rar unrar
#sudo ln -f /usr/bin/rar /usr/bin/unrar
4)先備份原來的語言包,再安裝;實際就是拷貝一個語言包。
#sudo cp /usr/share/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo.bak
#sudo cp ~/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo
5)重啓filezilla,即可!

解壓縮
解壓縮 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

解壓縮 RAR 文件
1) 先安裝
#sudo apt-get install rar unrar
#sudo ln -f /usr/bin/rar /usr/bin/unrar
2) 解壓
#unrar x aaaa.rar

Nautilus
顯示隱藏文件
Ctrl+h

顯示地址欄
Ctrl+l

chmod
[語法]: chmod [-R] 模式 文件…
或 chmod [ugoa] {+|-|=} [rwxst] 文件…
[說明]: 改變文件的存取模式,存取模式可表示爲數字或符號串,例如:
#chmod nnnn file , n爲0-7的數字,意義如下:
4000 運行時可改變UID
2000 運行時可改變GID
1000 置粘着位
0400 文件主可讀
0200 文件主可寫
0100 文件主可執行
0040 同組用戶可讀
0020 同組用戶可寫
0010 同組用戶可執行
0004 其他用戶可讀
0002 其他用戶可寫
0001 其他用戶可執行
nnnn 就是上列數字相加得到的,例如 chmod 0777 file 是指將文件 file 存取權限置爲所有用戶可讀可寫可執行。
-R 遞歸地改變所有子目錄下所有文件的存取模式
u 文件主
g 同組用戶
o 其他用戶
a 所有用戶
+ 增加後列權限
- 取消後列權限
= 置成後列權限
r 可讀
w 可寫
x 可執行
s 運行時可置UID
t 運行時可置GID
[例子]:
#chmod 0666 file1 file2 將文件 file1 及 file2 置爲所有用戶可讀可寫
#chmod u+x file 對文件 file 增加文件主可執行權限
#chmod o-rwx 對文件file 取消其他用戶的所有權限

#chown
[語法]: chown [-R] 文件主 文件…
[說明]: 文件的UID表示文件的文件主,文件主可用數字表示, 也可用一個有效的用戶名錶示,此命令改變一個文件的UID,僅當此文件的文件主或超級用戶可使用。
-R 遞歸地改變所有子目錄下所有文件的存取模式
[例子]:
#chown mary file 將文件 file 的文件主改爲 mary
#chown 150 file 將文件 file 的UID改爲150
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章