-Tip1 檢視man文件...
nroff -man man/libnet.3 | less
有時候man文件不在系統目錄..這時候就可以用上面的方式來檢視非標準的man文件
-Tip2 以不同的用戶身份執行程序...
su - username -c "where/is/command/line"
有時候需要執行特殊身份的程序...就可以讓su來做...
-Tip3 解壓bz文件
tar -jvxf some.bz
就是把tar的zvxf 改成jvxf
-Tip4 編輯/etc/inittab後直接生效的方法..
執行init q
-Tip5 讓linux連續執行幾個指令,出錯停止
command1 && command2 && command3 ....
-Tip6 linux中的bg和fg管理
當我們打ctrl+z的時候一個工作就被掛起(就是暫停),同時螢幕上返回一個數字,
這時候可以用 "bg %數字" 來把這個工作放到後台執行...這個很適合在你忘了加
&的時候進行補救...同樣 " fg %數字 "就能讓這個工作放到前台來執行了...
job指令用來檢視當前的被bg的工作...
-Tip7 ctrl+s與ctrl+q
ctrl-s 好像是從終端時代遺傳過來的東東, 流量控制, 用來暫停向終端傳送資料的. ctrl-q 用來恢復恢復
-Tip8 目錄統計教本
儲存成total.sh ,然後用total.sh 絕對路徑,就會統計路徑下目錄的大小了
程式碼:--------------------------------------------------------------------------------
#!/bin/sh
du $1 --max-depth=1 | sort -n|awk '{printf "%7.2fM ----> %s\n",$1/1024,$2}'|sed 's:/.*/\([^/]\{1,\}\)$:\1:g'
--------------------------------------------------------------------------------
-Tip9 grep不顯示本身工作
程式碼:--------------------------------------------------------------------------------ps -aux|grep httpd|grep -v grep--------------------------------------------------------------------------------
通過再一次grep -v grep就可以取消顯示你所執行的grep本身這個工作,-v參數是不顯示所列出的工作名.
-Tip10 自己用的一個統計httpd的指令碼
程式碼:--------------------------------------------------------------------------------
#!/bin/sh
while (true)
do
pstree |grep "*\[httpd\]$"|sed 's/.*-\([0-9][0-9]*\)\*\[httpd\]$/\1/'
sleep 3
done
--------------------------------------------------------------------------------
-Tip 11 解壓rpm包中的文件
程式碼:--------------------------------------------------------------------------------
cat gnome-libs-1.4.1.2.90.22.i386.rpm | rpm2cpio | pax -r
--------------------------------------------------------------------------------
-Tip12 去掉apache的manual目錄中的所有.en的後面名
進入到manual目錄
程式碼:--------------------------------------------------------------------------------find ./ -regex .*\.en|awk -F. '{ printf "mv %s.%s.%s.%s %s.%s.%s\n",$1,$2,$3,$4,$1,$2,$3}'|sh
--------------------------------------------------------------------------------
-Tip 13 linux裡如何映射windows裡的硬碟
mount -t smbfs -o username=xxx,password=xxx //winxp_ip_or_hostname/sharename /local_path
[zt] form rexhsu's bbshttp://rexhsu.minidns.net/~irc/discuz/viewthread.php?tid=13
Linux Useful Tips (Collected by RexHsu@ccf)
-Tip1 指令行下製作ISO
用法: mkisofs -a -I -J -r -o filename.iso /目錄
用途: 將linux下某個目錄中的所有文件做成iso鏡像.而且我加上了參數,可以保證你做出來的光碟是在windows下也可以用的 (iso是有文件大小限制的...直接多少偶忘記了)
-Tip2 Linux下ISO的虛擬方法
步驟如下:
1. 把 /dev/cdrom 刪除,然後執行 ln -s /dev/loop7 /dev/cdrom
2. losetup /dev/loop7 xxx.iso
3. mount /mnt/cdrom
如何換盤:
1. losetup -d /dev/loop7 ;目的是取消這個設備
2. losetup /dev/loop7 yyy.iso ;新的iso文件
-Tip3 hosts的用法
host能夠用來查詢域名,然而它可以得到更多的信息.host -t mx linux.com可以查詢出linux.com的MX記錄,以及處理mail的host的名字.host -l linux.com會返回所有註冊在linux.com下的域名.host -a linux.com則會顯示這個主機的所有域名信息.
-Tip4 *.bz2文件如何解壓縮
使用tar -I 或者bunzip2指令都可以.
-Tip5 RPM一般用法
安裝rpm包時顯示進度並校驗包的正確性
用-vh參數:
如 rpm -ivh ipchains-1.3.6-1.i386.rpm
如果用glint或xrpm則不必.
直接通過ftp來安裝rpm包
如 rpm -i
ftp://ftp....xxx 校驗所有的rpm包,搜尋丟失的文件
rpm -Va
搜尋一個文件屬於哪個rpm包
如 rpm -qf /usr/bin/who
列出一個rpm包的描述信息
如 rpm -qpi mon-0.37j-1.i386.rpm
列出一個rpm包的文件信息
如 rpm -qpl mon-0.37j-1.i386.rpm
-Tip6 檢視系統監聽的服務
用法: netstat -ln
解釋: "l"表示顯示當前系統監聽的連接埠信息;"n"表示連接埠按照連接埠號來顯示,而不轉換為service文件中定義的連接埠名;若希望瞭解各個連接埠都是由哪些工作監聽則可以使用p參數.
-Tip7 檢視系統執行的工作
用法: ps -auxw
解釋: 其中參數"a"表示顯示系統中所有用戶的的工作;"u"表示輸出工作用戶所屬信息;"x"表示也顯示沒有控制台的工作;若顯示行太長而被截斷則可以使用f參數.
-Tip8 Linux帳號搬家
對於新帳號->
保證將要加入系統的新帳號放在新的位置上,這通過修改/etc/default/useradd文件中的HOME值來實現. 如: HOME=/home2 使新增帳號的主目錄建在/home2下.
將已有帳號移至新的位置->
首先,將已有帳號的主目錄連帶目錄內容拷至新位置,可用下面指令:
cp -a /home /home2
或
cp -rpd /home /home2
然後,修改/etc/passwd文件中相應記錄的home_directory域為/home2/username.
這樣兩步已將舊帳號移至新位置.確保無誤後,可刪去舊帳號的舊主目錄以騰出原文件系統的空間.
-Tip9
Linux 啟動時螢幕顯示的信息來不及看清就一閃而過,如果對這些信息感興趣的話可以在啟動完後用指令 dmesg 檢視.
-Tip10 GRUB引導恢復小法
用啟動碟或安裝碟(linux rescue)進linux
sh# grub
grub> root (hdx,y)
grub> setup (hd0)
重啟
說明: 如果成功會有一個successful......這裡的x,如果是一個盤,就是0.如果你所安裝的linux的根分區在第二個硬碟上,那x就是1了;y就是裝有linux系統所在的根分區.setup (hd0)就是把GRUB寫到硬碟的MBR上.如果我知道我的linux裝在第一個硬碟上,但我不知道裝在哪個分區上,就可以先輸入root (hd0,然後用[TAB]鍵來補齊,然後就明白了.
-Tip11 測試磁牒效能
用法: hdparm -tT /dev/hd?
例如: hdparm -tT /dev/hda (測試第一個物理硬碟的速度)
-Tip12 將局內網的服務對外開放
將192.168.1.2上的8888連接埠映射到192.168.1.3的8888連接埠
#iptables -t nat -A PREROUTING -p tcp -m tcp --dport 8888 -j DNAT --to-destination 192.168.1.2:8888
#iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.2 -p tcp -m tcp --dport 8888 -j SNAT --to-source 192.168.1.3
#iptables -A INPUT -p tcp --dport 8888 -i eth0 -j ACCEPT (視情況而加)
-Tip13 關閉"討厭"的Linux按鍵Beep聲
vi /etc/.inputrc 增加下面一行
set bell-style none
-Tip14 開機進入圖形/文本登入方式
vi /etc/inittab
id:x:initdefault:
x=3:文本方式 x=5:圖形方式
-Tip15 在GRUB中限制系統可使用的記憶體數量
限制Linux只能使用120MB記憶體
title Red Hat Linux (2.4.19)
root (hd0,1)
kernel /boot/vmlinuz-2.4.19 ro root=/dev/hda2 mem=120M
initrd /boot/initrd-2.4.18-14.img
-Tip16 如何搜尋某條指令的相關庫文件
在Linux環境下通過ldd指令即可實現,在控制台執行:
ldd /bin/ls
即可得到/bin/ls指令的相關庫文件列表.
-Tip17 只列子目錄(文件)
ls -F | grep /$
你也可以在.bashrc(針對bash)中把該指令作成alias,以後只要敲入sub就可以實現只列子目錄的功能.
alias sub = 「ls -F | grep /$」
同樣,ls -l | grep ^-則是只列普通文件.
-Tip18 計算目錄下的文件及子目錄
ls -al | wc -l
-Tip19 RedHat 下顯示彩色目錄列表
ls -color 可以顯示彩色目錄列表,其中:
藍色→目錄
綠色→可執行文件
紅色→壓縮檔案
淺藍色→連結文件
灰色→其他文件
同樣你還可以試試ls --color(比前面多-),看看兩者的差別吧
-Tip20 列目錄時顯示中文檔案名
在沒有打修正檔的Linux系統中,我們用ls列目錄,發現中文檔案名都成了?號.我們可以使用--show-control-chars指令選項來顯示.
ls --show-control-chars
-Tip21 改變當前路徑下所有目錄和文件的所有權
chown -R owner[.group] *
也可以用find指令來實現:
find . -exec chown owner[.group] {} ;
-Tip22 改變所有子目錄及文件的內容
在你要改變內容的目錄下,輸入指令:
chmod -R 777 *
就可以改變下面所有子目錄及文件的內容,不過使用這個指令的時候要特別小心,要是在根目錄下打入這個指令,你所有文件的內容都將改變,這就會引起很大的安全性問題.
-Tip22 使用nohup指令
如果你想工作在你退出系統後還能執行,可以使用nohup指令.
如:
nohup tar cf /dev/tape /home &
你退出後再重新登入的話,使用ps指令會發現工作還在執行.
-Tip23 重新啟動
Ctrl+Alt+Del 或 init 6 或 shutdown -r now
-Tip24 快速搜尋文件
搜尋文件可以用find,但最好是用locate.速度快,參數少.
locate filename
它是在一個資料庫裡面搜尋.所以,要記得經常用updatedb指令更新資料庫.一般地,我們是在crontab裡面加一句,讓電腦在每天深夜更新資料庫.
另外,快速搜尋指令文件,可以使用whereis.
例如:
whereis rpm
-Tip25 搜尋Linux指令
如果你想實現某種功能,但是不知道該使用什麼指令.你可以試試apropos指令,它也許能幫你找到你想要的指令.例如: 你要「搜尋」文件,又不知道用什麼指令,你可以敲入下面的指令:
apropos search
-Tip26 在同一個指令行上同時執行多條指令
用分號分隔.如編譯一個源文件:
#./configure ; make ; make install
-Tip27 用gzip(gunzip)壓縮(解壓)同一目錄下的多個文件
gzip * 或者 gunzip *
-Tip28 在使用less或more時,直接啟動vi
在less或者more中打入v鍵,會立即啟動vi編輯器,可以對文件進行編輯.
-Tip29 在使用mail中啟動vi
如果你覺得用mail傳送郵件編輯起來很不方便,你可以在正文的頂格輸入~v,啟動vi進行編輯,編輯完後退出vi,回到mail.
-Tip30 觀察文件大小變化
使用watch指令,可以反覆執行指令.和ls配合,可以達到觀察某文件大小變化的效果.
watch ls -| file.name
-Tip31 搜尋含特定字串串的文件
例如搜尋當前目錄下含有"the string you want find..."字串串的文件:
find . -type f -exec grep 「the string you want find...」 {} ; -print
-Tip32 觀看binary文件中的字串串
strings binaryfile
-Tip33 重裝Win 9x後lilo失效無法啟動Linux
只須先用軟碟啟動Linux然後執行一次lilo即可.對於RedHat可以用指令mkbootdisk來製作啟動碟,例如:
mkbootdisk --device /dev/fd0 2.4.20
其中2.4.20是/lib/modules下的一個目錄.
-Tip34 去掉引導區內的lilo信息
安裝lilo後如果硬碟數量或分區情況有改變的話將導致硬碟不能啟動,這時只需用軟碟啟動DOS再執行fdisk/mbr即可.
-Tip35 把DOS/Windows改為預設操作系統
RedHat把Linux作為lilo預設操作系統,即出現 boot: 提示號後直接Enter鍵啟動Linux.如果想改為DOS/Windows,修改文件/etc/lilo.conf,把有關啟動DOS的部分放在前面,再執行一次lilo即可.也可以在lilo.conf的配置文件前面加上 Default=dos 其中DOS是DOS/Windows的label
-Tip36 如何使用.iso文件
許多Linux發行版本都有.iso的光碟鏡像文件,可以用來燒錄光碟.我們也可以在Linux系統下直接使用.
mount -t iso9660 xxxxx.iso /any/path/if/u/like -o loop
-Tip37 顯示文件的類型
用指令 file 可以使你知道某個文件究竟是ELF格式的可執行文件,還是shell script文件或是其他的什麼格式.
file filename
-Tip38 解壓.tar.gz文件
xxxx.tar.gz文件使用tar帶zxvf參數,可以一次解壓開.
tar zxvf xxxx.tar.gz
-Tip39 後台執行程序
可以在程序後面加「&」符號,讓程序在後台執行.例如: 你想用updatedb更新文件路徑資料庫,又不影響你其他的工作.可以:
updatedb &
-Tip40 強行退出 X
有時候在 X 裡由於程式出錯滑鼠鍵盤都不起作用,這時候不用著急,因為在Linux下幾乎不會像在Win 95里那樣惡性當機,你只須同時按下Ctrl+Alt+BackSpace鍵就可以回到字串界面下了.
-Tip41 壓縮可執行文件
可以使用gzexe壓縮可執行文件,壓縮後的可執行文件仍然可以直接執行.使用本方法可以達到節省磁牒空間的目的(如果你真的需要的話).
gzexe gawk
-Tip42 處理檔案名內含有特殊字串的文件
如果有一個檔案名叫-file,如果想刪除它,鍵入 rm -file 會顯示invalid option,原來由於檔案名的第一個字串為"-",Linux把檔案名當做選項了,可以加--解決這個問題,如rm -- -file.如果是其他特殊字串的話可以在特殊字串前加一個\,或者用雙引號把整個檔案名括起來.
-Tip43 快速進入目錄
鍵入 cd ~ 可進入用戶的home目錄;鍵入 cd - 可進入上一個進入的目錄.
-Tip44 想全部刪除以.開頭的file或dir時你會如何幹?
Wrong-> rm -r /tmp/.*
Correct-> rm -r /tmp/\.*
-Tip45 修改網路卡MAC位址
ifconfig eth0 down
ifconfig eth0 hw ether 00:AA:BB:CCD:EE
ifconfig eth0 up
上面的是臨時性的你可以加入rc.local讓它開機自動執行
-Tip46 檢視網路卡工作狀態
#mii-tool -v
eth0: no link
product info: vendor 00:00:00, model 0 rev 0
basic mode: autonegotiation enabled
basic status: no link
capabilities: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
advertising: 100baseTx-FD 100baseTx-HD 10baseT-FD 10baseT-HD
SIOCGMIIPHY on 'eth1' failed: Operation not supported
-Tip47 如何解決sendmail和sm-client啟動爆慢的問題!
造成sendmail和sm-client啟動慢是因為解析的問題,解決方法將自己的主機名加入/etc/hosts中即可,例如我的主機名是linuxbox.localdomain則/etc/hosts中應該有一條
192.168.100.1 linuxbox.localdomain linuxbox
<To Be Continued>
付上一條帖上面信息加藍色標記的sed語法...
hoho...在unix上處理文字真是帥呆了...
程式碼:--------------------------------------------------------------------------------
sed -e "s/^-.*$/
&[\/color]/g" tip>./new
--------------------------------------------------------------------------------
我是個初學者,也把自已的筆記上的加一下吧 (如有錯誤請PM我,我來改正)
-Tip 將一個服務加到自啟動執行等級中
chkconfig --add httpd
chkconfig --level 3 httpd on
就是把httpd加到chkconfig管理中,並加在第三層啟動
-Tip 在終端下調音量
aumix
-Tip 將man文件匯出為文件並去掉控制符
man command | col -b >col.txt
col -b就是去掉控制符的
-Tip 檢視資料夾大小
du ./ --max-depth=1
--max-depth=1是控制顯示深度
-Tip 光碟彈出,彈入
eject -r 彈出
eject -t 彈入
-Tip 顯示最近登入用戶
last
以上指令是redhat8下有用,沒試過在其它系統中有沒有用
tar -zxfv some.gz
則出錯。
請高手講解一些究竟有沒有「段橫(-)」 ?
-f表示後面要跟檔案名...你把f放在v前面...tar會認為v就是那個文件..當然出錯了...
f永遠在最後面...
看看man吧..一切都簡單..
top 顯示記憶體和程序的執行狀況
Ctrl H 顯示或者隱藏線程
procinfo 顯示記憶體和cpu的情況
cat /proc/meminfo 顯示記憶體使用情況
/proc 涵蓋了所有linux內核信息,因該仔細瞭解 top,procinfo都是利用/proc文件系統
開發的
redhat 中
chkconfig 可以設定系統啟動配置
chkconfig httpd on
chkconfig vsftpd on
.......
service 可以控制服務的起停
service vsftpd restart
service sendmail stop
禁止文件寫(包括root)
chattr +i filename
tail -f /var/log/messages 以既時滾動方式檢視系統syslog。
清空日誌:
cat /dev/null > *.log
可加在crontab中完成日誌的清空作業。
不建議清空日誌...為啥要清空日值????系統日值本身就循環的不會急暴你的var...
只有你安裝了apache等的程序才有日值啊...所以最好的辦法是讓日誌輪循...(直接方法搜尋apache的我的文件,或者查詢論壇主題)
還有cat >*.log就能達到同樣的功能了..
killall processname
殺死所有俱指定名字的工作。
Tip44 想全部刪除以.開頭的file或dir時你會如何幹?
Wrong-> rm -r /tmp/.*
Correct-> rm -r /tmp/\.*
這個方案不完美。因為linux有兩個名為.和..的文件(指資料夾)。
rm -r /tmp/\.* 沒有排除這兩個文件,因而有以下錯誤:
/bin/rm: cannot remove `.' or `..'
/bin/rm: cannot remove `.' or `..'
請高手給出完美方案,
因為我想要儲存用戶根目錄裡的所有.xxxx配置文件。類似:
cp \.* savedot/
資料夾
find /path/ \( -type d -name ".*" -exec mv {} ./path \; \)
文件
find /path/ \( -type f -name ".*" -exec mv {} /path/ \; \)
程式碼:--------------------------------------------------------------------------------
for file in `ls /home/userdir -al|grep ^-|awk '{print $9}'|grep "^\."`
do
cp $file /some/where
done
--------------------------------------------------------------------------------
如果能工作就ok啦...
Tip2 Linux下ISO的虛擬方法
步驟如下:
1. 把 /dev/cdrom 刪除,然後執行 ln -s /dev/loop7 /dev/cdrom
2. losetup /dev/loop7 xxx.iso
3. mount /mnt/cdrom
如何換盤:
1. losetup -d /dev/loop7 ;目的是取消這個設備
2. losetup /dev/loop7 yyy.iso ;新的iso文件
另一項作法:
1. 隨便找個作為 .iso 內容入口的目錄,如 :
mkdir -p /mnt/v_cdrom1
2. 把 .iso 掛到剛選好的路徑中...
mount -t iso9660 -o loop,iocharset=cp950,codepage=950 /files/W2K_TW_SP4.iso /mnt/v_cdrom1
※ -o 表示 option,
loop 表示這是個 loop 裝置,
iocharset 及 codepage 用於指定該 iso 所用的編碼系統,
.iso 為掛載來源,
/mnt/v_cdrom1 為指定的 iso 入口...
3. 將 .iso 卸載...
umount /mnt/v_cdrom1
這是為了保留原來實體光碟機之用... 我一直只知道這招...
Tip31 搜尋含特定字串串的文件
例如搜尋當前目錄下含有"the string you want find..."字串串的文件:
find . -type f -exec grep 「the string you want find...」 {} ; -print
這個我一般這樣用:
find <路徑> [-name xxx] | xargs grep "字串" ...
用grep -r ...或grep -R就可以了
有些grep版本沒這個選項
還有cat >*.log就能達到同樣的功能了..
不一樣,如果你用cat >*.log,這樣會需要按一個ctrl+c
如果cat /dev/null >*.log,就不需要按額外的鍵,適合用在指令碼中自動執行.
-f表示後面要跟檔案名...你把f放在v前面...tar會認為v就是那個文件..當然出錯了...
f永遠在最後面...
看看man吧..一切都簡單..
這個是不對的, vf都是參數,fv一樣,不信試試?
你可以用
tar -x -j -v -f
不過這樣比
tar xjvf 不是麻煩多了?
嘿嘿
這個可能需要追述unix的指令和開關的歷史咯~,太多就不知啦。
BTW,而且如果使用
tar -x -j -v -f FILENAME
的話,-f的確要放在最後,但是 tar xjvf是不用的。
才看到上溫老……
-xjvf也行,不過這個就要注意順序了,否則f後面不接檔案名,就會出錯的
這個方案不完美。因為linux有兩個名為.和..的文件(指資料夾)。
rm -r /tmp/\.* 沒有排除這兩個文件,因而有以下錯誤:
/bin/rm: cannot remove `.' or `..'
/bin/rm: cannot remove `.' or `..'
請高手給出完美方案,
因為我想要儲存用戶根目錄裡的所有.xxxx配置文件。類似:
cp \.* savedot/
find /tmp -type f -maxdepth 1 -name ".*" -exec mv {} path-to-your-savedot/ \;
ps -e
ps -ef
是不同的.
你會發現不同的當前run的name.
如果發現不同,就說明有可能有人在你的機器作了一些動作。
利用xargs對管道輸出的信息使用特定程序進行處理
例子:
find ~root|xargs chmod a-x
num-lock default on
any of /etc/rc.d/*
for t in 1 2 3 4 5 6 7 8
do
setleds +num < /dev/tty$t > /dev/null
done
這個方案不完美。因為linux有兩個名為.和..的文件(指資料夾)。
rm -r /tmp/\.* 沒有排除這兩個文件,因而有以下錯誤:
/bin/rm: cannot remove `.' or `..'
/bin/rm: cannot remove `.' or `..'
請高手給出完美方案,
因為我想要儲存用戶根目錄裡的所有.xxxx配置文件。類似:
cp \.* savedot/
資料夾
find /path/ \( -type d -name ".*" -exec mv {} ./path \; \)
文件
find /path/ \( -type f -name ".*" -exec mv {} /path/ \; \)
如果還有問題繼續 呵呵.. 希望對大家有用..
檢視win32(fat)分區.
fdisk -l (列出分區)(例)
/dev/hda6 5000000 fat32
我們要看到這個分區,則:
mkdir win_fat
mount -t vfat /dev/hda6 /win_fat
列出遠端主機(windows)的共享目錄
smbclient -L X.X.X.X(IP) -U 用戶名
把遠端主機的共享目錄temp掛到/mnt
mount -t smbfs -o username=用戶名 //X.X.X.X(IP)/temp /mnt
redhat 9 下通過
Tip2 Linux下ISO的虛擬方法
步驟如下:
1. 把 /dev/cdrom 刪除,然後執行 ln -s /dev/loop7 /dev/cdrom
2. losetup /dev/loop7 xxx.iso
3. mount /mnt/cdrom
如何換盤:
1. losetup -d /dev/loop7 ;目的是取消這個設備
2. losetup /dev/loop7 yyy.iso ;新的iso文件
另一項作法:
1. 隨便找個作為 .iso 內容入口的目錄,如 :
mkdir -p /mnt/v_cdrom1
2. 把 .iso 掛到剛選好的路徑中...
mount -t iso9660 -o loop,iocharset=cp950,codepage=950 /files/W2K_TW_SP4.iso /mnt/v_cdrom1
※ -o 表示 option,
loop 表示這是個 loop 裝置,
iocharset 及 codepage 用於指定該 iso 所用的編碼系統,
.iso 為掛載來源,
/mnt/v_cdrom1 為指定的 iso 入口...
3. 將 .iso 卸載...
umount /mnt/v_cdrom1
這是為了保留原來實體光碟機之用... 我一直只知道這招...
Tip44 想全部刪除以.開頭的file或dir時你會如何幹?
Wrong-> rm -r /tmp/.*
Correct-> rm -r /tmp/\.*
這個方案不完美。因為linux有兩個名為.和..的文件(指資料夾)。
rm -r /tmp/\.* 沒有排除這兩個文件,因而有以下錯誤:
/bin/rm: cannot remove `.' or `..'
/bin/rm: cannot remove `.' or `..'
請高手給出完美方案,
因為我想要儲存用戶根目錄裡的所有.xxxx配置文件。類似:
cp \.* savedot/
killall processname
殺死所有俱指定名字的行程。
num-lock default on
any of /etc/rc.d/*
for t in 1 2 3 4 5 6 7 8
do
setleds +num < /dev/tty$t > /dev/null
done
檢視win32(fat)分區.
fdisk -l (列出分區)(例)
/dev/hda6 5000000 fat32
我們要看到這個分區,則:
mkdir win_fat
mount -t vfat /dev/hda6 /win_fat
lsof -p pid
顯示該行程開啟的文件
lsof -i ◎[ip|hostname] port
顯示連接開啟的文件
lsof directory
顯示開啟這個目錄的文件(可以在想umount某一目錄不成功的時候,檢視是不是被別的文件開啟了)
lsof file
顯示開啟這個文件的行程
在ksh下用vi來編輯所有執行過的指令
ksh下執行set -o vi
或者在別的shell下執行ksh -o vi
more或者man的時候可以直接使用vi中的一些操作
比如j,k,CTRL+f CTRL+b,/ 等等
想把man的內容匯出到文本麼?
man ls | col -b >a.txt
csh下"^"的一個小用法
% touch 11
% ^11^22
touch 22
%
不過只能替換第一個匹配到的字串串,第二個就匹配不到了
我的工作環境一般用tar+compress
tar cvf - ./dir | compress -c >dir.tar.Z
uncompress -c dir.tar.Z|tar xvf -
當前目錄下文件太多,用grep會報參數超長...
$ ls -al|wc -l
12323
$ grep 123123123 *
Arguments too long.
$ find . -name "*" | xargs grep 123123123
vi,awk和sed的用法也是很多技巧,不過只需要多看書,多實驗就行了