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