Linux 上查看佔用指定端口的進程
在 Linux 上,如果想找出佔用某個 port 的進程,可使用 fuser 指令。
找出佔用 TCP port 8080 的進程:
- # fuser -v 8080/tcp
砍掉佔用 TCP port 8080 的進程:
- # fuser -k 8080/tcp
在 Linux 上,如果想找出佔用某個 port 的進程,可使用 fuser 指令。
找出佔用 TCP port 8080 的進程:
砍掉佔用 TCP port 8080 的進程:
編寫 Shell Script 時,如果變量的值是一個路徑的話,我們可以輕易擷取當中的路徑 (dirname) 或檔名 (basename).
| 變量 | 結果 | 說明 |
| ${path} | /usr/local/bin/emacs | 原本值 |
| ${path#/*/} | local/bin/emacs | 去除第一個資料夾 |
| ${path##/*/} | emacs | 只取檔名 (basname) |
| ${path%/*} | /usr/local/bin | 只取路徑 (dirname) |
| ${path:15} | emacs | 取第 15 個字元後的所有字元 |
| ${path:10:4} | /bin | 取第 10 個字元後的 4 個字元 |
最後兩個用法與 Java 的 subString 相同。
如果嘗試使用 rm -f * 刪除超大量檔案 (eg 5000+),有可能會得到這個結果: Argument list too long
這種情況下唯有使用 FOR 迴圈,以一個指令便可把檔案逐個刪除:
for i in $(find /home/peter -type f); do rm -f $i; done
或者照樣使用 FOR 迴圈寫一個 Shell Script,每次刪除 10 個檔案 (沒測試過, USE AT YOUR OWN RISK):
IPv6 (Internet Protocol Version 6) 多年來一直無法順利推動,本港的 ISP 更不在話下。但大部份 Linux Distro 的 kernel 都預設支援 IPv6,直接影響了網絡效能。以下方法可關閉 IPv6 支援:
Debian / Ubuntu
1. 開啟 /etc/modprobe.d/aliases
2. 裡面有一行是 “alias net-pf-10 ipv6″
3. 將以上一行用以下兩行取代:
alias net-pf-10 off
alias ipv6 off
Red Hat
1. 開啟 /etc/modprobe.conf
2. 加入這一行:
alias net-pf-10 off
更改以上檔案後,需要重新啟動系統才會生效。我在數部 CentOS 及 Fedora 主機關閉 IPv6 後,Resolve IP 的時間明顯加快了。
以往需要從文字檔中進行 Search & Replace, 通常都會使用 PERL。
但其實使用 VIM 的 ex 模式便可作更快的處理。
刪除特定字串:
Search & Replace:
Powered by WordPress | Aeros Theme | TheBuckmaker.com WordPress Themes