夕口技術錄

專業上的小常識,備而用之~

Category Archives: 秘技

[Linux][pid] – 用 pid 反查是誰開啟的

問題:大部份都是用 ps 或 pidof 去查 程式 所執行的pid為何,但如要反向查詢呢?

# ps ax | grep snort
28180 ?        S      0:01 /usr/local/eqit/netsecure/bin/snortc -l /usr/local/eqit/netsecure/log

解答:

方式1 ->
# ps -p 28180
PID TTY          TIME CMD
28180 ?        00:00:01 snortc


方式2->
# ps ax | grep ‘^13241’
13241 pts/3    S      0:00 /usr/local/eqit/foundation/bin/sflowtool -p 6342 -t

閱讀全文

[dd] – 用 dd 做塞爆硬碟測試

測試硬碟滿載的方式,
常用一些東西來塞爆
或改用 dd 來達成

作用: 製造一個 file(filename: hugefile), 內容都塞 0, 塞到 470Mb 為止, 語法如下

dd if=/dev/zero of=/hugefile count=470M obs=4096

of: filename
count: 塞 470MB
obs: 每個 black 要 4096 bytes

dd if=/dev/zero of=/hugefile count=470m obs=4096

[Linux][zip] – 加解密 指命

檔案:
zip -e -p test.zip test.txt 

目錄:
zip -e -r -p aaa.zip /home/aaa/*

-r     将指定的目录下的所有子目录以及文件一起处理

解密:
unzip aaa.zip

[Linux][shell][grep][[xargs]][sed] – 多檔案一次置換取代字元指令

基本找尋 txt-02 字串指令
[root@X64 smarty]# grep -rl “txt-02″ *
snort/view.htm
snort/add.htm
adgroup/view.htm

找尋 txt-02 字串 + 多檔案一次置換取代字元指令
# grep -rl “txt-06″ * | xargs sed -i ‘s/txt-06/txt-02/g’

sed -i 使用充補 :直接修改檔案內容(危險動作)

sed 可以直接修改檔案的內容!
而不必使用管線命令或資料流重導向!
不過,由於這個動作會直接修改到原始的檔案,
所以請你千萬不要隨便拿系統設定檔來測試喔!

範例六:利用 sed 將 regular_express.txt 內每一行結尾若為 . 則換成 !
[root@www ~]# sed -i 's/\.$/\!/g' regular_express.txt
# 上頭的 -i 選項可以讓你的 sed 直接去修改後面接的檔案內容而不是由螢幕輸出喔!
# 這個範例是用在取代!請您自行 cat 該檔案去查閱結果囉!

範例七:利用 sed 直接在 regular_express.txt 最後一行加入『# This is a test』
[root@www ~]# sed -i '$a # This is a test' regular_express.txt
# 由於 $ 代表的是最後一行,而 a 的動作是新增,因此該檔案最後新增囉!

sed 的『 -i 』選項可以直接修改檔案內容
舉例來說,如有一個 100 萬行的檔案,要在第 100 行加某些文字,此時使用 vim 可能會瘋掉!因為檔案太大了!這時就可利用 sed 透過 sed 直接修改/取代的功能!

參考資料:鳥哥 – sed 工具

[Linux][hostname] – (Redhat / Fedora / CentOS) 更改 hostname 的方式

Step 1:假設原本 hostname 為 NS, 現在想要更改為 NSx64
使用 root 才可以更改 hostname
# su – root

Step 2:將 /etc/hosts 內出現的 NS 都改成 NSx64
# vi /etc/hosts:
127.0.0.1 NSx64 localhost.localdomain localhost

Step 3:
將 /etc/sysconfig/network 內的 HOSTNAME 改成 NSx64
# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=NSx64

Step 4:再使用 hostname 命令指定一次
# hostname NSx64
這時就已經設定完成. 可以使用 hostname 命令去確認一次
# hostname
NSx64
只要重新登入, 命令提示字串就會改成 [root@NSx64 /]#

[du][sort][head] – 找出佔用空間前十一名

# vi ~/.bashrc

alias ducks=’du * -cks |sort -rn |head -11′

[root@SIKOPC /]# ducks
14216416 total
10253476 home
2014856 var
1562076 usr
232780 lib
68624 etc
27616 sbin
25400 boot
24472 root
6912 bin
96 dev

閱讀全文