linux基本指令
作者:Vamei 出處:http://www.cnblogs.com/vamei 歡迎轉載,也請保留這段聲明。謝謝!
我總結了常用的Linux命令,方便你的Linux使用。下面是格式說明,你現在可以跳過,直到遇到疑問時再來查詢。
$ 命令行提示符
粗體表示命令
斜體表示參數
filename, file1, file2 都是文件名。有時文件名有後綴,比如file.zip
command 命令名
dir 文件夾名
string 字符串
username 用戶名
groupname 組名
regex 正則表達式
path 路徑
device
partition 分區名
IP IP地址
domain 域名
ID 遠程用戶ID
host 主機名,可以為IP地址或者域名
var 變量名
value 變量值
命令幫助
$man command
查詢命令command的說明文檔
$man -k keyword
查詢關鍵字
$info command
更加詳細的說明文檔
$whatis command
簡要說明
$which command
command的binary文件所在路徑
$whereis command
在搜索路徑中的所有command
這裏只是以command (binary file) 為例。比如man還可以用於查詢系統函數、配置文件等。
用戶
$finger username
顯示用戶username的信息
$who
顯示當前登陸用戶
$who am I
一個有趣的用法
$write username
向用戶發送信息 (用EOF結束輸入)
$su
成為root用戶
$sudo command
以root用戶身份執行
$passwd
更改密碼
SHELL (BASH)
$history
顯示在當前shell下命令歷史
$alias
顯示所有的命令別稱
$alias new_command=‘command‘
將命令command別稱為new_command
$env
顯示所有的環境變量
$export
設置環境變量var為value
$expr 1 + 1
計算1+1
文件系統
$du -sh dir
文件夾大小, -h 人類可讀的單位, -s 只顯示摘要
$find . -name filename
從當前路徑開始,向下尋找文件filename
$locate string
尋找包含有string的路徑
$updatedb
與find不同,locate並不是實時查找。你需要更新數據庫,以獲得最新信息。
$ln -s filename path
為文件filename在path位置創建軟鏈接
$pwd
顯示當前路徑
$cd path
更改當前工作路徑為path
$cd -
更改當前路徑為之前的路徑
文件
$touch filename
如果文件不存在,創建一個空白文件;如果文件存在,更新文件讀取和修改時間。
$rm filename
刪除文件
$cp file1 file2
復制file1為file2
$ls -l path
顯示文件和文件相關信息
$mkdir dir
創建dir文件夾
$mkdir -p path
遞歸創建路徑path上的所有文件夾
$rmdir dir
刪除dir文件夾,dir必須為空文件夾。
$rm -r dir
刪除dir文件夾,以及其包含的所有文件
$file filename
文件filename的類型描述
$chown username:groupname filename
更改文件的擁有用會為owner,擁有組為group
$chmod 755 filename
更改文件的權限為755: owner r+w+x, group: r+x, others: r+x
$od -c filename
以ASCII字符顯示文件
文件顯示
$cat filename
顯示文件
$cat file1 file2
連接顯示file1和file2
$head -1 filename
顯示文件第一行
$tail -5 filename
顯示文件倒數第五行
$diff file1 file2
顯示file1和file2的差別
$sort filename
對文件中的行排序,並顯示
$sort -f filename
排序時,不考慮大小寫
$sort -u filename
排序,並去掉重復的行
$uniq filename
顯示文件filename中不重復的行 (內容相同,但不相鄰的行,不算做重復)
$wc filename
統計文件中的字符、詞和行數
$wc -l filename
統計文件中的行數
文本
$echo string
顯示string
$echo string | cut -c5-7
截取文本的第5到第7列
$echo string | grep regex
顯示包含正則表達式regex的行
$echo string | grep -o regex
顯示符合正則regrex的子字符串
時間與日期
$date
當前日期時間
$date +"%Y-%m-%d_%T"
以YYYY-MM-DD_HH:MM:SS的格式顯示日期時間 (格式可參考$man date)
$date --date="1999-01-03 05:30:00" 100 days
顯示從1900-01-03 05:30:00向後100天的日期時間
$sleep 300
休眠300秒
進程
$top
顯示進程信息,並實時更新
$ps
顯示當前shell下的進程
$ps -lu username
顯示用戶username的進程
$ps -ajx
以比較完整的格式顯示所有的進程
$kill PID
殺死PID進程 (PID為Process ID)
$kill %job
殺死job工作 (job為job number)
$lsof -u username
用戶username的進程所打開的文件
$dmesg
顯示系統日誌
$time a.out
測試a.out的運行時間
硬件
$uname -a
顯示系統信息
$df -lh
顯示所有硬盤的使用狀況
$mount
顯示所有的硬盤分區掛載
$mount partition path
掛在partition到路徑path
$umount partition
卸載partition
$sudo fdisk -l
顯示所有的分區
$sudo fdisk device
為device(比如/dev/sdc)創建分區表。 進入後選擇n, p, w
$sudo mkfs -t ext3 partition
格式化分區patition(比如/dev/sdc1)
修改 /etc/fstab,以自動掛載分區。增加行:
/dev/sdc1 path(mount point) ext3 defaults 0 0
$arch
顯示架構
$cat /proc/cpuinfo
顯示CPU信息
$cat /proc/meminfo
顯示內存信息
$free
顯示內存使用狀況
$pagesize
顯示內存page大小(以KByte為單位)
網絡
$ifconfig
顯示網絡接口以及相應的IP地址。ifconfig可用於設置網絡接口
$ifup eth0
運行eth0接口
$ifdown eth0
關閉eth0接口
$iwconfig
顯示無線網絡接口
$route
顯示路由表。route還可以用於修改路由表
$netstat
顯示當前的網絡連接狀態
$ping IP
發送ping包到地址IP
$traceroute IP
探測前往地址IP的路由路徑
$dhclient
向DHCP主機發送DHCP請求,以獲得IP地址以及其他設置信息。
$host domain
DNS查詢,尋找域名domain對應的IP
$host IP
反向DNS查詢
$wget url
使用wget下載url指向的資源
$wget -m url
鏡像下載
SSH登陸與文件傳輸
$ssh ID@host
ssh登陸遠程服務器host,ID為用戶名。
$sftp ID@host
登陸服務器host,ID為用戶名。sftp登陸後,可以使用下面的命令進一步操作:
get filename # 下載文件
put filename # 上傳文件
ls # 列出host上當前路徑的所有文件
cd # 在host上更改當前路徑
lls # 列出本地主機上當前路徑的所有文件
lcd # 在本地主機更改當前路徑
$scp localpath ID@host:path
將本地localpath指向的文件上傳到遠程主機的path路徑
$scp -r ID@site:path localpath
以ssh協議,遍歷下載path路徑下的整個文件系統,到本地的localpath
壓縮與歸檔
$zip file.zip file1 file2
將file1和file2壓縮到file.zip
$unzip file.zip
解壓縮file.zip
$gzip -c filename > file.gz
將文件filename壓縮到file.gz
$gunzip file.gz
解壓縮file.gz文件
$tar -cf file.tar file1 file2
創建tar歸檔
$tar -zcvf file.tar file1 file2
創建tar歸檔,並壓縮
$tar -xf file.tar
釋放tar歸檔
$tar -zxf file.tar.gz
解壓並釋放tar歸檔
打印
$lpr filename
打印文件
$lpstat
顯示所有打印機的狀態
補充:本文為轉載的文章,作者在文章開頭所提,mark下來學習學習QAQ
linux基本指令