❶ linux中的kill -s命令的意思是可以發送指定的信號哈,但信號通常是:TREM和HUP等等
有-s,下面兩種寫法都對: kill -s 信號名 進程號 kill -信號名 進程號 Usage: kill pid ... Send SIGTERM to every process listed. kill signal pid ... Send a signal to every process listed. kill -s signal pid ... Send a signal to every process listed. kill -l List all signal names. kill -L List all signal names in a nice table. kill -l signal Convert between signal numbers and names. 通過kill -l 可以看到所有信號名
❷ linux的ping命令怎麼用
linux下ping 命令的用法。
在linux操作系統中,ping命令是常用的網路命令,它通常用來測試與目標主機的連通性。
經常會說「ping一下某機器,看是不是開著」、不能打開網頁時會說「你先ping網關地址192.168.1.1試試」。
它通過發送ICMP ECHO_REQUEST數據包到網路主機(send ICMP ECHO_REQUEST to network hosts),並顯示響應情況,這樣我們就可以根據它輸出的信息來確定目標主機是
否可訪問(但這不是絕對的)。有些伺服器為了防止通過ping探測到,通過防火牆設置了禁止ping或者在內核參數中禁止ping,這樣就不能通過ping確定該主機是否還處於
開啟狀態。
linux下的ping和windows下的ping稍有區別,linux下ping不會自動終止,需要按ctrl+c終止或者用參數-c指定要求完成的回應次數。
下面就開始學習下這個常用的linux命令吧。
1.命令格式:
ping [參數] [主機名或IP地址]
2.命令功能:
ping命令用於:確定網路和各外部主機的狀態;跟蹤和隔離硬體和軟體問題;測試、評估和管理網路。如果主機正在運行並連在網上,它就對回送信號進行響應。每個回送
信號請求包含一個網際協議(IP)和 ICMP 頭,後面緊跟一個 tim 結構,以及來填寫這個信息包的足夠的位元組。預設情況是連續發送回送信號請求直到接收到中斷信號
(Ctrl-C)。
ping 命令每秒發送一個數據報並且為每個接收到的響應列印一行輸出。ping 命令計算信號往返時間和(信息)包丟失情況的統計信息,並且在完成之後顯示一個簡要總結。
ping 命令在程序超時或當接收到 SIGINT 信號時結束。Host 參數或者是一個有效的主機名或者是網際網路地址。
3.命令參數:
-d 使用Socket的SO_DEBUG功能。
-f 極限檢測。大量且快速地送網路封包給一台機器,看它的回應。
-n 只輸出數值。
-q 不顯示任何傳送封包的信息,只顯示最後的結果。
-r 忽略普通的Routing Table,直接將數據包送到遠端主機上。通常是查看本機的網路介面是否有問題。
-R 記錄路由過程。
-v 詳細顯示指令的執行過程。
<p>-c 數目:在發送指定數目的包後停止。
-i 秒數:設定間隔幾秒送一個網路封包給一台機器,預設值是一秒送一次。
-I 網路界面:使用指定的網路界面送出數據包。
-l 前置載入:設置在送出要求信息之前,先行發出的數據包。
-p 範本樣式:設置填滿數據包的範本樣式。
-s 位元組數:指定發送的數據位元組數,預設值是56,加上8位元組的ICMP頭,一共是64ICMP數據位元組。
-t 存活數值:設置存活數值TTL的大小。
4.使用實例:
實例1:ping的通的情況
復制代碼代碼示例:
命令:
ping 192.168.120.205
輸出:
[root@localhost ~]# ping 192.168.120.205
PING 192.168.120.205 (192.168.120.205) 56(84) bytes of data.
64 bytes from 192.168.120.205: icmp_seq=1 ttl=64 time=0.720 ms
64 bytes from 192.168.120.205: icmp_seq=2 ttl=64 time=0.181 ms
64 bytes from 192.168.120.205: icmp_seq=3 ttl=64 time=0.191 ms
64 bytes from 192.168.120.205: icmp_seq=4 ttl=64 time=0.188 ms
64 bytes from 192.168.120.205: icmp_seq=5 ttl=64 time=0.189 ms
--- 192.168.120.205 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4000ms
rtt min/avg/max/mdev = 0.181/0.293/0.720/0.214 ms
[root@localhost ~]#
更多Linux知識可以參考《Linux就該這么學》
❸ Linux用什麼命令發信號給其他進程
kill
你自己man一下
❹ 如何使用命令kill,顯示linux環境下的信號。分析這些信號的特點
運行如下命令,可看到Linux支持的信號列表:
# kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL
5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE
9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2
13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT
17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU
25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH
29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN
35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4
39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12
47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14
51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10
55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6
59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
列表中,編號為1 ~ 31的信號為傳統UNIX支持的信號,是不可靠信號(非實時的),編號為32 ~ 63的信號是後來擴充的,稱做可靠信號(實時信號)。不可靠信號和可靠信號的區別在於前者不支持排隊,可能會造成信號丟失,而後者不會。
編號小於SIGRTMIN的信號解釋如下:
1) SIGHUP
本信號在用戶終端連接(正常或非正常)結束時發出, 通常是在終端的控制進程結束時, 通知同一session內的各個作業, 這時它們與控制終端不再關聯。
登錄Linux時,系統會分配給登錄用戶一個終端(Session)。在這個終端運行的所有程序,包括前台進程組和 後台進程組,一般都屬於這個 Session。當用戶退出Linux登錄時,前台進程組和後台有對終端輸出的進程將會收到SIGHUP信號。這個信號的默認操作為終止進程,因此前台進 程組和後台有終端輸出的進程就會中止。不過可以捕獲這個信號,比如wget能捕獲SIGHUP信號,並忽略它,這樣就算退出了Linux登錄,wget也 能繼續下載。
此外,對於與終端脫離關系的守護進程,這個信號用於通知它重新讀取配置文件。
2) SIGINT
程序終止(interrupt)信號, 在用戶鍵入INTR字元(通常是Ctrl-C)時發出,用於通知前台進程組終止進程。
3) SIGQUIT
和SIGINT類似, 但由QUIT字元(通常是Ctrl-\)來控制. 進程在因收到SIGQUIT退出時會產生core文件, 在這個意義上類似於一個程序錯誤信號。
4) SIGILL
執行了非法指令. 通常是因為可執行文件本身出現錯誤, 或者試圖執行數據段. 堆棧溢出時也有可能產生這個信號。
5) SIGTRAP
由斷點指令或其它trap指令產生. 由debugger使用。
6) SIGABRT
調用abort函數生成的信號。
7) SIGBUS
非法地址, 包括內存地址對齊(alignment)出錯。比如訪問一個四個字長的整數, 但其地址不是4的倍數。它與SIGSEGV的區別在於後者是由於對合法存儲地址的非法訪問觸發的(如訪問不屬於自己存儲空間或只讀存儲空間)。
8) SIGFPE
在發生致命的算術運算錯誤時發出. 不僅包括浮點運算錯誤, 還包括溢出及除數為0等其它所有的算術的錯誤。
9) SIGKILL
用來立即結束程序的運行. 本信號不能被阻塞、處理和忽略。如果管理員發現某個進程終止不了,可嘗試發送這個信號。
10) SIGUSR1
留給用戶使用
11) SIGSEGV
試圖訪問未分配給自己的內存, 或試圖往沒有寫許可權的內存地址寫數據.
12) SIGUSR2
留給用戶使用
13) SIGPIPE
管道破裂。這個信號通常在進程間通信產生,比如採用FIFO(管道)通信的兩個進程,讀管道沒打開或者意外終止就往管道寫,寫進程會收到SIGPIPE信號。此外用Socket通信的兩個進程,寫進程在寫Socket的時候,讀進程已經終止。
14) SIGALRM
時鍾定時信號, 計算的是實際的時間或時鍾時間. alarm函數使用該信號.
15) SIGTERM
程序結束(terminate)信號, 與SIGKILL不同的是該信號可以被阻塞和處理。通常用來要求程序自己正常退出,shell命令kill預設產生這個信號。如果進程終止不了,我們才會嘗試SIGKILL。
17) SIGCHLD
子進程結束時, 父進程會收到這個信號。
如果父進程沒有處理這個信號,也沒有等待(wait)子進程,子進程雖然終止,但是還會在內核進程表中佔有表項,這 時的子進程稱為僵屍進程。這種情 況我們應該避免(父進程或者忽略SIGCHILD信號,或者捕捉它,或者wait它派生的子進程,或者父進程先終止,這時子進程的終止自動由init進程 來接管)。
18) SIGCONT
讓一個停止(stopped)的進程繼續執行. 本信號不能被阻塞. 可以用一個handler來讓程序在由stopped狀態變為繼續執行時完成特定的工作. 例如, 重新顯示提示符
19) SIGSTOP
停止(stopped)進程的執行. 注意它和terminate以及interrupt的區別:該進程還未結束, 只是暫停執行. 本信號不能被阻塞, 處理或忽略.
20) SIGTSTP
停止進程的運行, 但該信號可以被處理和忽略. 用戶鍵入SUSP字元時(通常是Ctrl-Z)發出這個信號
21) SIGTTIN
當後台作業要從用戶終端讀數據時, 該作業中的所有進程會收到SIGTTIN信號. 預設時這些進程會停止執行.
22) SIGTTOU
類似於SIGTTIN, 但在寫終端(或修改終端模式)時收到.
23) SIGURG
有」緊急」數據或out-of-band數據到達socket時產生.
24) SIGXCPU
超過CPU時間資源限制. 這個限制可以由getrlimit/setrlimit來讀取/改變。
25) SIGXFSZ
當進程企圖擴大文件以至於超過文件大小資源限制。
26) SIGVTALRM
虛擬時鍾信號. 類似於SIGALRM, 但是計算的是該進程佔用的CPU時間.
27) SIGPROF
類似於SIGALRM/SIGVTALRM, 但包括該進程用的CPU時間以及系統調用的時間.
28) SIGWINCH
窗口大小改變時發出.
29) SIGIO
文件描述符准備就緒, 可以開始進行輸入/輸出操作.
30) SIGPWR
Power failure
31) SIGSYS
非法的系統調用。
❺ Linux幾種中斷信號的區別:HUP,INT,KILL,TERM,TSTP
Linux的HUP,INT,KILL,TERM,TSTP中斷信號區別為:鍵入不同、對應操作不同、啟用不同。
一、鍵入不同
1、HUP中斷信號:HUP中斷信號是當用戶鍵入<Ctrl+X>時由終端驅動程序發送的信號。
2、INT中斷信號:INT中斷信號是當用戶鍵入<Ctrl+I>時由終端驅動程序發送的信號。
3、KILL中斷信號:KILL中斷信號是當用戶鍵入<Ctrl+Z>時由終端驅動程序發送的信號。
4、TERM中斷信號:TERM中斷信號是當用戶鍵入<Ctrl+>時由終端驅動程序發送的信號。
5、TSTP中斷信號:TSTP中斷信號是當用戶鍵入<Ctrl+T>時由終端驅動程序發送的信號。二、對應操作不同
1、HUP中斷信號:HUP中斷信號的對應操作為讓進程掛起,睡眠。
2、INT中斷信號:INT中斷信號的對應操作為正常關閉所有進程。
3、KILL中斷信號:KILL中斷信號的對應操作為強制關閉所有進程。
4、TERM中斷信號:TERM中斷信號的對應操作為正常的退出進程。
5、TSTP中斷信號:TSTP中斷信號的對應操作為暫時停用進程。
三、啟用不同
1、HUP中斷信號:HUP中斷信號發送後,可以重新被用戶再次輸入恢復啟用進程。
2、INT中斷信號:INT中斷信號發送後,不可以重新被用戶再次輸入恢復啟用進程。
3、KILL中斷信號:KILL中斷信號發送後,不可以重新被用戶再次輸入恢復啟用進程。
4、TERM中斷信號:TERM中斷信號發送後,可以重新被用戶再次輸入啟用進程。
5、TSTP中斷信號:TSTP中斷信號發送後,可以重新被用戶再次輸入繼續使用進程。
❻ linux信號處理
linux中,中斷鍵是CTRL+C 產生的信號是 SIGINT 可以捕捉
但沒有定義ctrl+z鍵啊,難道你算定義的?
❼ linux中的信號怎麼理解
編號為1 ~ 31的信號為傳統UNIX支持的信號,是不可靠信號(非實時的),編號為32 ~ 63的信號是後來擴充的,稱做可靠信號(實時信號)。不可靠信號和可靠信號的區別在於前者不支持排隊,可能會造成信號丟失,而後者不會。
❽ linux命令全
linux基本命令:(其他的太多了,自己去網路吧)
ls:
-l:顯示詳細信息
-a:顯示隱藏文件和其他所有文件(以.開頭的為隱藏文件)
-t:安時間排序
-h:以KB MB 等單位顯示
-d:只列出目錄名,不列出其他內容
-R:遞歸顯示所有目錄及子目錄
-lath:選項可以合並
pwd:顯示當前所在位置
cd:轉換目錄
cd ..:返回上一級目錄
cd -:回到上一次操作的目錄
mkdir: 建目錄
-v:顯示所建目錄,相同可用{}:mkdir -v dir{1,2,3}
-p:創建多級目錄
rmdir:刪除空目錄
rm:刪除
-f:強制刪除無提示
-r:可刪除目錄
mv:移動 重命名
touch:建立空文件
file:驗證文件或目錄的類型
cp:復制,粘貼 ()改名
cp 原文件 目標文件
-r:可復制目錄
ssh 192.168.1.33 遠程登錄
跨機拷貝:scp -r /root/Server/ 192.168.1.253:/dcw
man 命令:幫助
alias:查看是否有別名
去掉別名用完整路徑
eg:
#which cp
#/bin/cp a.text b.text 或 \cp a.text b.text
或 在 /root/.bashrc 中去掉#alias cp='cp -i',後#unalias cp
查看某文件前4行內容並顯示文件路徑和文件名
[/usr/local/nagios]#ls /etc/vsftpd/vsftpd.conf && head -n 4 /etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
linux tee 命令詳解
功能說明:讀取標准輸入的數據,並將其內容輸出成文件。
語法:tee [-ai][--help][--version][文件...]
補充說明:tee指令會從標准輸入設備讀取數據,將其內容輸出到標准輸出設備,同時保存成文件。
參數:
-a或--append 附加到既有文件的後面,而非覆蓋它.
-i-i或--ignore-interrupts 忽略中斷信號。
--help 在線幫助。
--version 顯示版本信息。
cat /etc/sysconfig/network
-n:查看行號信息
more:空格翻頁 回車換行
less:上下鍵翻頁 可以反復看(可以回翻頁)
head:顯示前幾行
head -5 install.log 顯示前5行
tail:顯示後幾行
tail -f 動態更新
grep:查看文件中包含關鍵字的一行
#grep --color=tty mp intstall.log 彩色顯示
正則表達式:^root 以root為開頭(^)
root$,以root結尾($)
-v:不包括的幾行(取反)
grep -n -v ^# /etc/vsftpd/vsftpd.conf
:r /root/install.log 追加讀入一個文件
:e 讀入文件
:e! 重新讀入
:q 不保存 :q!強制退出
:w 保存 :qw保存退出 :wq! 強制保存退出
在未寫入狀態時:
h 左 k 上 j下 l 右
shift+4($) 游標移到行尾 shift+6(^) 游標移到行頭
:50 來到50行
#vim /root/install.log +50(n)來到50行
:set nu 顯示行號
:set nonu 取消行號
shift+g 來到行尾
n(無顯示)+G:直接來到n行
shift+a:自動來到行尾輸入
:50,100 w bb.txt 保存50到100行的內容到bb.txt中
r :替換單個字元 R:替換全行
shift+o:向上插入 o:向下插入
yy 復制 p 粘貼
(n)2yy 復制前兩行
y^:復制從游標位置到開頭 y$:復制從游標位置到結尾
d:剪貼一行
dd:剪貼兩行
ndd:多行
d^:剪貼到開頭 d$:剪貼到結尾
:g/^$/d 去掉空行
:g/^\s*$/d 去空格
向左移動25個字元:25+l
:/ 查找 自上而下
:? 查找自下而上
n 下一個
替換:
:s/old/new 把舊的換為新的 單個
:s/old/new/g 整行替換
:%s/old/new/g 整個文件替換
:%s/old/new/gc 整個文件替換並詢問
u:替換上次命令
ctrl+r 重做
ctrl+^ 兩個切換
打開多個文件
vim a.txt b.txt c.txt
:args 可選
:next
:prev
:last
vim diff a.txt b.txt
ctrl+w+w 跳到第二個文件
:wqa
使用vimtutor工具聯系vim使用。
vimtutor工具使用方法:
vimtutor zh
如果出現亂馬,使用下面命令解決(只能執行一次)
cd /usr/share/vim/vim70/tutor
mv tutor.zh.euc tutor.zh.euc.bak
iconv -f gb2312 -t utf-8 tutor.zh.euc.bak > tutor.zh.euc
vimtutor zh
locate :空間換時間
updatedb
locate passwd
find [路徑] [參數] [表達式]
find /usr/share/doc -name filename
-user:根據文件擁有者尋找文件
-group:根據文件所屬組尋找文件
-name:根據文件名尋找文件
-perm:根據文件許可權尋找
-size:根據文件大小尋找
-type:根據文件類型尋找文件,參數對應c b l f d
find 的表達式使用通配符時需要使用「」圈界
find 目錄 條件 條件
[root@localhost ~]# find / -name "pass*"
當前目錄:.
find . -name "*ss*"
find . -type f(文件)
find . -type d(目錄)
[root@localhost ~]# find . -nouser(文件無屬主)
[root@localhost ~]# find . -nogroup(文件無屬組)
[root@localhost ~]# find /home/ -user/group user1
-exec
[root@localhost ~]# find . -nouser -exec rm {} \;
{}代表文件和目錄
\轉義字元
-ok
find . -nogroup -ok rm -rf {} \;有提示刪除
[root@localhost ~]# stat a
File: 「a」
Size: 0 Blocks: 0 IO Block: 4096 一般空文件
Device: 803h/2051d Inode: 261796 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-04-02 14:23:25.000000000 +0800(創建時間:-atime)
Modify: 2011-04-02 14:23:25.000000000 +0800(修改時間:-mtime)
Change: 2011-04-02 14:23:25.000000000 +0800(改變屬組屬主會變:-ctime)
find /root -mtime -5(5天以內) 5(5天時) +5(5天前)
find . -perm 400:要求許可權全部匹配,精確匹配
find . -perm +600(wr):有w,r中任意許可權的都會列出,即會列出200 400 600 的許可權
find . -perm -600 :要求許可權完全滿足 許可權大於等於600
-name -type
-name -user
-perm -type
-nouser
-nogroup
-mtime
-exec
-ok
-rgex(正則表達式)