201303
------------------------------------------
who options可顯示當前登錄的用戶.
選項:-a顯示所有結果,-r顯示當前運行級別,-s列出用戶名及時間域.
whoami 顯示自己的用戶名.
whereis 輸出系統命令的二進制文件路徑.
wc options files 能夠統計文件中的字符數、單詞數和行數.
wc -c xx顯示字符數 wc -l xx顯示行數 wc -w xx顯示單詞數.
wait 可用來等待進程號為proccess ID的進程或者所有的后臺進程結束后,再執行當前腳本.
uname 顯示當前操作系統名及其他相關信息.
選項:-a 顯示所有信息,-s 系統名,-v只顯示操作系統版本或其發布日期.
touch 創建一個文件.
選項:-t MMDDhhmm 創建一個具有相應月、日、時分時間戳的文件.
strings 可以看二進制文件中所包含的文本.
shutdown 關機(shutdown now)
script 可使用該命令記錄當前會話.
例:script mylogin 啟動script命令并將所有會話內容記錄到mylogin文件中.
mkdir 創建目錄 rmdir 刪除目錄
rm 能夠刪除文件或目錄.
選項: -i 刪除文件之前給出提示(安全模式), -r 刪除目錄.
pwd顯示當前的工作目錄.
nl 命令可用于在文件中列行號,在打印源代碼或列日志文件時很有用.
選項:-I 行號每次增加n,默認為1. -p 在新的一頁不重新計數.
more 該命令和page及pg命令功能類似,都能夠分屏顯示文件內容(分頁顯示).
logname 該命令可以顯示當前所使用的登陸用戶名.
head 命令可以顯示相應文件的前多少行.
例如:head -20 myfile 表示顯示myfile文件的前20行內容.
fuser 命令可以顯示訪問某個文件或文件系統的所有進程.
選項: -k 殺死所有訪問該文件或文件系統的進程, -u 顯示訪問該文件或文件系統的所有進程.
file 命令用來確定文件的類型.
df -h 查看系統磁盤空間.
du 顯示的磁盤空間占用是以512字節的塊來表示的.顯示目錄所占用的空間.
例如:在/var目錄下執行du -s 后顯示14929 表示/var目錄占用的空間為14929塊(每塊是512字節).
basename 能夠從路徑中分離出文件名.通常用于shell腳本中.
例如:/home/dave/myfile 返回myfile
dirname 返回路徑內部分,該目錄正好與basename命令相反.
例如:dirname /home/dave/myfile 返回/home/dave
cat 查看文本文件的顯示命令,選項-v:顯示控制字符.
diff 對比兩個文件,顯示兩個文件中不一致的行.
dircmp 比較并顯示兩個目錄中的不同.
tar -cvf 文件或目錄打包:
例如:tar -cvf temp2.tar /usr/lib ,將/usr/lib目錄下的文件與子目錄打包成一個文件庫為temp2.tar.
tar -xvf 解包 例如:tar -xvf /u0/temp2.tar
-----------------------------------
20130219:
find . -type f - exec chmod 644 {} \; |
find . -type d - exec chmod 755 {} \; |
find . -type d 文件夾
find . -type f 文件
------------------------------------
作者:馮太廣 主頁: http://www.521tg.com
最近總是應用一些LINUX命令,有些參數記不住,所以整理一下,方便查閱,也和大家一起分享.
vi命令使用
-----------------------
vi filename :打開或新建文件,并將光標置于第一行首
vi +n filename :打開文件,并將光標置于第n行首
vi + filename :打開文件,并將光標置于最后一行首
vi +/pattern filename:打開文件,并將光標置于第一個與pattern匹配的串處
vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename
vi filename....filename :打開多個文件,依次編輯
移動光標類命令
h :光標左移一個字符
l :光標右移一個字符
space:光標右移一個字符
Backspace:光標左移一個字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個字至字首
b或B :光標左移一個字至字首
e或E :光標右移一個字j至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n$:光標移至第n行尾
H :光標移至屏幕頂行
M :光標移至屏幕中間行
L :光標移至屏幕最后行
0:(注意是數字零)光標移至當前行首
$:光標移至當前行尾
屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。
插入文本類命令
i :在光標前
I :在當前行首
a:光標后
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字符
R:替換當前字符及其后的字符,直至按ESC鍵
s:從當前光標位置處開始,以輸入的文本替代指定數目的字符
S:刪除指定數目的行,并以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行
刪除命令
ndw或ndW:刪除光標處開始及其后的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其后n-1行
x或X:刪除一個字符,x刪除光標后的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本
搜索及替換命令 :
/pattern:從光標開始處向文件尾搜索pattern
?pattern:從光標開始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
:s/p1/p2/g:將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換
選項設置
all:列出所有選項設置情況
term:設置終端類型
ignorance:在搜索中忽略大小寫
list:顯示制表位(Ctrl+I)和行尾標志($)
number:顯示行號
report:顯示由面向行的命令修改過的數目
terse:顯示簡短的警告信息
warn:在轉到別的文件時若沒保存當前文件則顯示NO write信息
nomagic:允許在搜索模式中,使用前面不帶“\”的特殊字符
nowrapscan:禁止vi在搜索到達文件兩端時,又從另一端開始
mesg:允許vi顯示其他用戶用write寫到自己終端上的信息
最后行方式命令
:n1,n2 co n3:將n1行到n2行之間的內容拷貝到第n3行下
:n1,n2 m n3:將n1行到n2行之間的內容移至到第n3行下
:n1,n2 d :將n1行到n2行之間的內容刪除
:w :保存當前文件
:e filename:打開文件filename進行編輯
:x:保存當前文件并退出
:q:退出vi
:q!:不保存文件并退出vi
:!command:執行shell命令command
:n1,n2 w!command:將文件中n1行至n2行的內容作為command的輸入并執行之,若不指
定n1,n2,則表示將整個文件內容作為command的輸入
:r!command:將命令command的輸出結果放到當前行 。
-----------------------
常用監控LINUX的命令
-----------------------
ps -aux 查看所有進程
ps -auxwww 參數w表示加寬顯示的命令行
vmstat:顯示當前的內存使用情況
netstat:顯示網絡狀況,使用參數p可以查看對應的進程號及程序名
netstat -anp 通常使用參數a(顯示所有連接情況)和n(不反查域名和服務名)
netstat -an | grep LISTEN 查看服務器偵聽情況
netstat -an | grep ESTABLISHED 查看服務器已建立的連接
ifconfig :查看(或設置)網絡設備信息
ifconfig -a:查看所有網絡設置信息
last:顯示登錄到服務器的情況以及服務器重啟情況
df:顯示硬盤空間及使用情況,Linux下可以帶參數h,顯示結果更人性化。
df -h 硬盤空間按人性化顯示
df -k 硬盤空間按KB顯示
df -m 硬盤空間按MB顯示
w:顯示登錄到服務器上的用戶列表
以下幾個命令僅針對Linux
lsof:顯示當前打開的文件列表,包括建立的socket連接等。本命令可以用于程序員檢查編寫的程序打開的文件數
sysctl:顯示(或設置)系統內核參數
sysctl -a 顯示所有內核參數
sysctl -w 參數名=參數值
ulimit :顯示(或設置)用戶可以使用的資源限制
輸出信息簡介
Procs r: 等待運行的進程數
b: 處在非中斷睡眠狀態的進程數
w: 被交換出去的可運行的進程數。此數由 linux 計算得出,但 linux 并不耗盡交換空間
Memory
swpd: 虛擬內存使用情況,單位:KB
free: 空閑的內存,單位KB
buff: 被用來做為緩存的內存數,單位:KB
Swap
si: 從磁盤交換到內存的交換頁數量,單位:KB/秒
so: 從內存交換到磁盤的交換頁數量,單位:KB/秒
IO
bi: 發送到塊設備的塊數,單位:塊/秒
bo: 從塊設備接收到的塊數,單位:塊/秒
System
in: 每秒的中斷數,包括時鐘中斷
cs: 每秒的環境(上下文)切換次數
CPU 按 CPU 的總使用百分比來顯示
us: CPU 使用時間
sy: CPU 系統使用時間
id: 閑置時間
-----------------------
sftp命令使用
-----------------------
sftp -l username hostname 或者 sftp user@hosname
進入到 sftp 之后,那就跟在一般 FTP 模式下的操作方法沒有兩樣
cd
ls dir
mkdir
rmdir
pwd
chgrp
chown
chmod
ln oldname newname
rm path
rename oldname newname
exit bye
-----------------------
修改 evn:
-----------------------
vi .bash_profile 每個用戶下都有
vi /usr/jboss-3.2.0RC2/server/default/log/boot.log
source .bash_profile
-----------------------
常用命令:
-----------------------
rmdir -p surf 刪除空目錄
mkdir 新建目錄
rm -rf 刪除整個目錄,并且不詢問
tail -f /usr/jboss-3.2.2RC2/server/default/log/server.log 時時刷新查看文件
ssh -l root 219.133.**.** 進入其他服務器
psql -h 219.133.**.** -Ult club_dump 進入其他服務器的PostGre數據庫
psql -Upostgres club_dump 進入服務器Postgre數據庫
select * from pg_stat_activity ; 查詢數據庫的連接數
/etc/init.d/postgresql restart 重啟數據庫服務
-----------------------
我們老總用過的命令,可以自己去研究一下.
-----------------------
df -kh
dmesg | grep CPU
df -kh
free -m
free -kh
free -k
meminfo
mem
dmesg
env
df -kh
tail -f nohup.out
nohup ./run.sh &
ps -ef
chmod u+x *.sh
-----------------------
文件或者目錄打包(來自網絡資料)
-----------------------
在Unix系統業務使用(特別是數據管理與備份)中,經過一番研究、整理后,充分利用Unix系統本身的命令tar、cpio和compress等來做到打包和壓縮,使之充當類似DOS下的壓縮軟件,同時在Unix系統中亦具有通用性。
在Unix系統中,是先通過cpio或tar將眾多的文件打包成一個文件庫后,再用compress將文件庫壓縮來達到目的的。下面分別以cpio和tar來說明使用的方法和步驟。
一、cpio
1.文件或目錄打包。
打包有如下多種情況:
A)含子目錄打包:
find /usr/lib -print|cpio -o〉/u0/temp1.cpio
將/usr /lib目錄下的文件與子目錄打包成一個文件庫為/u0/temp1.cpio。
若通過-o選項來打包整個目錄下的所有文件與子目錄,常先利用find目錄名-print來找出所有文件與子目錄的名稱,通過管道“|”傳給cpio打包。
B)不含子目錄的打包:
ls /usr/lib|cpio -o〉/u0/temp1.cpio
將/usr/lib目錄下的文件(不含子目錄下的文件)打包成一個文件庫為/u0/temp1.cpio。
C)特定文件打包:
可利用文本搜索命令grep與管道配合,可以排除或選擇特定類型的文件傳給cpio打包。如:ls /usr/lib/*.c|cpio -o〉/u0/temp1.cpio
或ls /usr/lib|grep ′.c$′|cpio -o〉/u0/temp1.cpio
意思均為找出/usr/lib目錄下以.c結尾的文件予以打包。
又如:ls /usr/lib|grep abcd|cpio -o〉/u0/temp1.cpio ,其意為找出/usr/lib目錄下文件名中含有abcd字符的文件予以打包。
ls /usr/lib|grep -v abcd|cpio -o〉/u0/temp1.cpio,其意為找出/usr/lib目錄下文件名中不含 abcd 字符的文件予以打包。-v選項在grep命令中的意思是排除含有字符串的行列。
如此,可充分利用Unix的管道和一些命令的強大功能來實現文件的打包。
2.壓縮:
文件打包完成后,即可用Unix中的compress命令(/usr/bin下)壓縮打包文件。對一般的文本文件,壓縮率較高,可達81%。
compress /u0/temp1.cpio則將文件庫/u0/temp1.cpio壓縮為/u0/temp1.cpio.Z(自動添加.Z并刪除/u0/temp1.cpio )。
3.解壓:
uncompress /u0/temp1.cpio.Z則自動還原為/u0/temp1.cpio。
4.解包展開:
將按原目錄結構解包展開到當前所在目錄下。若以相對路徑打包的,當解包展開時,也是以相對路徑存放展開的文件數據;若以絕對路徑打包的,當解包展開時,也是以絕對路徑存放展開的文件數據。因此注意若為相對路徑,應先進入相應的目錄下再展開。
cd /u1
cpio -id〈/u0/tmp1.cpio則將/u0/temp1.cpio解壓到/u1下(這里假設temp1.cpio以相對路徑壓縮)。
若加u選項,如cpio -iud〈/u0/temp1.cpio則文件若存在將被覆蓋,即強制覆蓋。
cpio -id〈/u0/temp1.cpio *.c 則展開其中的*.c文件,類似于DOS系統中的Pkzip軟件中Pkunzip -d temp1.zip解包功能。
5.顯示:
cpio -it〈/u0/temp1.cpio [*.c] 顯示文件庫內的文件名稱,類似于DOS系統中的Pkzip軟件中Pkunzip -vbnm temp1.zip功能。
二、tar
1.文件或目錄打包:
tar -cvf /u0/temp2.tar /usr/lib
將/usr/lib目錄下的文件與子目錄打包成一個文件庫為/u0/temp2.tar。
tar -cvf /u0/temp2.tar /usr/lib *.c *.f
將/usr/lib目錄下的*.c *.f等文件(不含子目錄)打包。
注意:如果指定文件如*.c *.f或*.*,則打包時均不含子目錄。如果指定為.或*,則含子目錄。
2.壓縮:
同上:compress /u0/temp2.tar壓縮為/u0/temp2.tar.Z
3.解壓:
uncompress /u0/temp2.tar.Z則還原為/u0/temp2.tar。
4.解包展開:
tar -xvf /u0/temp2.tar
若以相對路徑打包的,解包時,以相對路徑存放展開的文件數據;若以絕對路徑打包的,解包時,以絕對路徑存放展開的文件數據。
若指定展開的文件名,須注意文件的目錄路徑。
5.顯示:
tar -tvf /u0/temp2.tar 顯示文件庫內的文件名稱。當指定文件名時,亦須注意文件的路徑。
相對來說這兩個命令各有優缺點。
1)tar速度比cpio慢,且不能跨越兩份存儲媒體,但文件格式幾乎在所有的Unix系統中都能通用,且使用簡便。
2)cpio則由于可通過管道功能,使得其打包時的文件選擇、排除功能非常強,且能跨越多份媒體,并能備份特殊的系統文件。
另外,壓縮命令compress比DOS下的Pkzip的壓縮率要低些。經測試,在一個目錄下527個文本文件共15.7MB,在Unix打包后用compress壓縮,大小為 2.1MB;相同的文件拷到DOS系統用Pkzip壓縮,則大小為1.4MB。
-----------------------
posted on 2010-08-16 10:02
David1228 閱讀(334)
評論(0) 編輯 收藏 所屬分類:
Linux