linux操作技巧集
1:HOST的樂(lè)趣: Host能夠用來(lái)查詢(xún)域名,然而它可以得到更多的信息。host -t mx l
inux.com可以查詢(xún)出Linux.com的MX記錄,以及處理Mail的Host的名字。Host -l linux
com會(huì)返回所有注冊(cè)在linux.com下的域名。host -a linux.com則會(huì)顯示這個(gè)主機(jī)的所
有域名信息。
2:找到命令需要的文件,也許你希望搞清楚一個(gè)命令它到底使用到了什么其他相關(guān)文件
和命令?試試ldd就可以了。如ldd traceroute,返回結(jié)果會(huì)是libc.so.6,lid-linux.s
o.2
3:定時(shí)!定時(shí)!你希望定時(shí)處理嗎?你肯定希望能夠讓你輕松一些!crontab可以聽(tīng)候
您的指示。命令行中輸入:crontab -e這進(jìn)入文本編輯器,再在其中輸入0 5 * * * wg
et -t3 -I/home/tom/URLs -N。這樣每天早上5點(diǎn)就會(huì)運(yùn)行這個(gè)wget命令。前五個(gè)是時(shí)間
參數(shù):分 時(shí) 日 月 星期幾。你可以 0 5 * * 6,0 command line here,這樣就在每個(gè)
星期六和星期天5am運(yùn)行。你需要man 5 crontab來(lái)得到更為詳細(xì)的解釋。隨便說(shuō)一下,
wget是一個(gè)取web頁(yè)面的小程序。 console頂部顯示現(xiàn)在時(shí)間:在/etc/bashrc或~/.bas
hrc中加入環(huán)境變量PROMPT_COMMAND。export PROMPT_COMMAND=echo -ne "33733[2;999
r33[1;1H33[00;44m33[K"`date`"33[00m338"
4:使用多達(dá)23個(gè)的虛擬終端(VT),假設(shè)你現(xiàn)在有6個(gè),仿照/etc/inittab種的文件,
加入
8:234:respawn:/sbin/getty 38400 tty8
24:234:respawn:/sbin/getty 38400 tty24
要跳過(guò)VT7,因?yàn)閄使用這個(gè)終端。然后telinit q以重新加載配置文件。使用左Alt+Fn在
1-6和8-12件切換,使用右Alt+Fn鍵在13-24之間切換。
5:Console切換:左Alt-方向鍵,循環(huán)切換console。效果和Alt+Fn一樣。
6:簡(jiǎn)單的進(jìn)行Dos轉(zhuǎn)Unix:如果你的文本文件中每行結(jié)尾都有討厭的Ctrl-M的話(huà),使用
這句命令能夠快速的解決問(wèn)題 sed s/^M// filename > newfilename
7:快速建立MP3播放列表:find /mnt/cdrom -name *.mp3 -print >> cd1.play.list.
這樣就會(huì)把CDRom中的所有MP3文件建立一個(gè)名為cd1.play.list的文件。然后使用xmms
或 x11amp就能進(jìn)行播放了。
8:/proc中的重要信息
cat /proc/cpuinfo - CPU (i.e. vendor, Mhz, flags like mmx)
cat /proc/interrupts - 中斷
cat /proc/ioports - 設(shè)備IO端口
cat /proc/meminfo - 內(nèi)存信息(i.e. mem used, free, swap size)
cat /proc/partitions - 所有設(shè)備的所有分區(qū)
cat /proc/pci - PCI設(shè)備的信息
cat /proc/swaps - 所有Swap分區(qū)的信息
cat /proc/version - Linux的版本號(hào)
9:真正的Console界面:說(shuō)實(shí)話(huà)無(wú)論是KDE和GNome我都沒(méi)什么喜歡的,畢竟受Windows熏
陶了這么長(zhǎng)時(shí)間了。但是在Console下其實(shí)才是真正的Cool界面。使用SVGATextMode可以
讓你的命令行界面達(dá)到132x60(標(biāo)準(zhǔn)是80x25)。我的486(Trident9440)上使用的是132
x43,那密密麻麻的字符真象Hollywood的幾年前的電影(現(xiàn)在連電影里都是Windows了)
給人感覺(jué)神秘兮兮的。配置文件在/etc/TextConfig中,不過(guò)如果你的XWindow都無(wú)法正
常顯示的話(huà),那估計(jì)這也用不了了(畢竟是好幾年前的東西了)。
10:讓你的硬盤(pán)飛起來(lái): Linux下也可以使用32Bit I/O和DMA。使用/sbin/hdparm -c1
/dev/hda(hdb,hdc..)打開(kāi)32Bit傳輸模式,使用命令 /sbin/hdparm -d1 /dev/hda(hdb
,hdc...) 打開(kāi)DMA。最后使用/sbin/hdparm -k1 /dev/hda 以使硬盤(pán)在Reset之后保持上
面的設(shè)定,這么一來(lái),硬盤(pán)讀寫(xiě)速度應(yīng)該可以提高一倍以上。
11:微調(diào)你的Ext2: Linux下的命令tune2fs可以設(shè)定最大Mount次數(shù)(因?yàn)長(zhǎng)inux即時(shí)在m
ounted clean狀況下,達(dá)到一定的mount次數(shù)后,會(huì)強(qiáng)制e2fsck對(duì)于我這樣的每天開(kāi)關(guān)機(jī)
的來(lái)說(shuō)很不方便),tune2fs命令的其他用途請(qǐng)參見(jiàn)man。
12:禁止在Netscape中顯示閃爍(Blink)Tag: ~/.Xdefaults中修改 Netscape*blinki
ngEnabled: False 之后運(yùn)行 xrdb -Load ~/.Xdefaults
13:隨時(shí)改變XTerm的字體大小:shift加+/-
14:Ext2的文件屬性: lsattr列出屬性,chattr可以改變屬性。如 chattr +A filenam
e 則系統(tǒng)不會(huì)修改其last access time屬性;chattr +i 則可以避免被rm掉。
15:SIS6326顯卡的配置:在Device中加入:DacSpeed 110 Option "no_bitblt" Optio
n "sw_cursor"
16:使用strings可以把字符串從Binary文件中分離出來(lái)
17:你大概已經(jīng)習(xí)慣了使用Top來(lái)觀察系統(tǒng)使用情況,那就使一使使用Vmstat 1來(lái)看看c
pu的空閑程度(顯示結(jié)果的最后一項(xiàng))。
18:使用Watch命令,反復(fù)執(zhí)行特定命令,如"watch ls -l /tmp/blah",將一直觀察文
件的大小改變。
19:使用pppstats得到ppp連接的數(shù)據(jù)。
20:顯示遠(yuǎn)程機(jī)器的NFS: showmount -e hostname
21:使用autofs免去你每次mount和umount之苦,再RedHat6.0中帶了autofs的rpm,只要安
裝好之后便可以享受自動(dòng)加載文件系統(tǒng)的方便。 在/misc目錄下,創(chuàng)建一個(gè)cd目錄,如
果使用其自帶的auto.misc和auto.master的話(huà),馬上就可以實(shí)現(xiàn)自動(dòng)加載功能了。
22:在Bash Shell中,可以用!重復(fù)上幾次輸入過(guò)的命令,這樣就可以省去往上滾動(dòng)的
麻煩了。使用ctl+R可以互動(dòng)的檢索以前使用過(guò)的命令行。
23:使用cd -在上兩個(gè)cd /directory/操作中切換。如先是cd /home/foo接著是 cd /h
ome/maison則接著打cd - 會(huì)進(jìn)入 /home/foo再打cd - 會(huì)進(jìn)入 /home/maison。
24:Bash中的快捷鍵:ESCAPE-B 會(huì)向前條一個(gè)單詞,Ctrl-K會(huì)刪除從光標(biāo)到行末所有字
符。
25:在PS命令中使用grep,例:ps auxw | grep gpm 會(huì)列出所有含有g(shù)pm字符的進(jìn)程。
26:在同一個(gè)命令行上同時(shí)執(zhí)行多條命令:用分號(hào)分隔。如編譯一個(gè)源文件:type ./c
onfigure ; make ; make install 。之后你就可以去散步了(不要在電腦前花費(fèi)了太多
時(shí)間了,生活中還有很多美好的東西。)
27:把運(yùn)行結(jié)果輸出到一個(gè)文件中,如 ls -l > foo.file。
28:使用Top命令監(jiān)視系統(tǒng)狀況,內(nèi)存使用情況,開(kāi)機(jī)時(shí)間,進(jìn)程狀況,每個(gè)用戶(hù)的使用
情況等等。使用S命令可以改變其刷新的時(shí)間:如.5將會(huì)使其每半秒鐘更新一次。
29:同時(shí)Unzip多個(gè)文件,unzip *不正確,而是unzip "*"。
30:建立符號(hào)連結(jié),這大概是最有用的功能了,ln -s real-file symbolic-file,無(wú)論
是設(shè)備,文檔還是腳本程序。
31:改變顯示的單位,如du -hm 將以M為單位輸出結(jié)果,同樣的du -hk則以K為單位輸出
。
32:自動(dòng)Logoff,在~/.bashrc中加入這么一句話(huà):TMOUT=300則會(huì)在5分鐘之后logoff,不
過(guò)如果less這類(lèi)程序運(yùn)行則不會(huì)啟動(dòng)。
33:在使用less 或 more時(shí),直接啟動(dòng)編輯器:在less中打入v鍵,會(huì)立即啟動(dòng)vi或其他
你在環(huán)境變量中指明的編輯器,但是more只能使用vi。
初用Linux時(shí)可能有處處不方便的感覺(jué), 可是等使用一段時(shí)間掌握了一些技巧后就會(huì)
感到越來(lái)越順手了. 以下就是我使用Linux以來(lái)積累的一些經(jīng)驗(yàn)與技巧, 相信對(duì)初學(xué)者會(huì)
有所幫助的.
1. 使用虛擬控制臺(tái)
登錄后按Alt+F2鍵這時(shí)又可以看到"login:"提示符, 這個(gè)就是第二個(gè)虛擬控制臺(tái).
一般新安裝的Linux有四個(gè)虛擬控制臺(tái), 可以用Alt+F1~Alt+F4來(lái)訪問(wèn). 虛擬控制臺(tái)最有
用的時(shí)候是當(dāng)一個(gè)程序出錯(cuò)鎖住輸入時(shí)可以切換到其他虛擬控制臺(tái)登錄進(jìn)入后殺掉這個(gè)
出錯(cuò)的進(jìn)程.
2. 拷貝與粘貼
字符界面: 不管是Slackware 還是RedHat 安裝后每次啟動(dòng)時(shí)都會(huì)自動(dòng)運(yùn)行一個(gè)叫g(shù)
pm的程序, 該程序運(yùn)行后就可以用鼠標(biāo)來(lái)拷貝與粘貼了. 具體做法是按住鼠標(biāo)左鍵拖動(dòng)
使要拷貝的地方反白, 這時(shí)反白的區(qū)域已經(jīng)被拷貝, 再按鼠標(biāo)右鍵拷貝的內(nèi)容就會(huì)被粘
貼在光標(biāo)所在位置了.
X-Window下: 拷貝的操作與字符界面下一樣, 三鍵鼠標(biāo)的話(huà)按中鍵粘貼, 兩鍵鼠標(biāo)的話(huà)
同時(shí)按左右鍵粘貼(須在配置XF86時(shí)在鼠標(biāo)的設(shè)置里選擇 Emulate 3 Button).
3. 快速進(jìn)入某些目錄
鍵入 cd ~ 可進(jìn)入用戶(hù)的home目錄.
鍵入 cd - 可進(jìn)入上一個(gè)進(jìn)入的目錄.
4. 軟驅(qū)的使用
如果是Linux 的ext2文件系統(tǒng)用如下命令:
#mount -t ext2 /dev/fd0 /mnt
dos格式的軟盤(pán)則用命令:
#mount -t msdos /dev/fd0 /mnt
然后就可以在/mnt里訪問(wèn)軟盤(pán)的內(nèi)容了, 注意在取出軟盤(pán)之前要先卸掉軟盤(pán)上的文件系
統(tǒng),
#umount /mnt 否則會(huì)導(dǎo)致信息丟失.
在軟盤(pán)上建立文件系統(tǒng)可用如下命令:
#mke2fs /dev/fd0 1440
5. RedHat下顯示彩色目錄列表
打開(kāi)/etc/bashrc, 加入如下一行:
alias ls="ls --color"
下次啟動(dòng)bash時(shí)就可以像在Slackware里那樣顯示彩色的目錄列表了, 其中顏色的含義如
下:
藍(lán)色-->目錄
綠色-->可執(zhí)行文件
紅色-->壓縮文件
淺藍(lán)色-->鏈接文件
灰色-->其他文件
6. 顯示文件的類(lèi)型
用命令 file 可以使你知道某個(gè)文件究竟是ELF格式的可執(zhí)行文件, 還是shell scr
ipt文件或是其他的什么格式 例如:
#file startx
7 .命令文件的路徑
當(dāng)你鍵入一些命令如find, shutdown, mount, startx時(shí)是否想過(guò)要知道這些文件究竟放
在哪個(gè)目錄里? 用命令
whereis 可以實(shí)現(xiàn),如
#whereis startx
8. 查找文件
find 命令要加一些參數(shù)才能查到文件, 如:
#find /usr -name XF86Setup -print
在/usr里查找文件XF86Setup.
9. 刪除無(wú)用的core文件
程序運(yùn)行出后有時(shí)候會(huì)產(chǎn)生一個(gè)名為core的文件, 這個(gè)文件一般很大而且沒(méi)什么用, 可
以刪除掉以釋放空間.
10. 一次解開(kāi).tar.gz文件
解開(kāi).tar.gz文件一般要先用gunzip解壓再用tar解包, 在Linux下可以一次完成, 如:
#tar zxpvf sample.tar.gz
11. 顯示win95分區(qū)里的長(zhǎng)文件名
如果你發(fā)現(xiàn)win95分區(qū)里的長(zhǎng)文件命不能顯示, 可以重新用vfat方式來(lái)mount. 對(duì)于
啟動(dòng)時(shí)就mount的分區(qū)可以修改文件/etc/fstab, 將里面的msdos字樣改為vfat. 如果無(wú)
法用vfat mount, 則要重新編譯一下核心, 加入對(duì)vfat的支持.
12. Linux 里的Norton Commander
在提示符下鍵入命令mc后你就會(huì)看到一個(gè)與Norton Commander很相似的界面, 實(shí)際
上功能也很相似甚至更強(qiáng)大, 比如可以直接對(duì).tar.gz 壓縮包里的文件進(jìn)行操作(有點(diǎn)像
ZipMagic).
13. 啟動(dòng)后直接進(jìn)入X
編輯/etc/inittab文件, 把id:3:initdefautl改為 id:4:initdefautl. 不過(guò)搜索路
徑可能會(huì)有些問(wèn)題, 關(guān)機(jī)時(shí)你得直接進(jìn)入/sbin 里去執(zhí)行 shutdown.
14. 后臺(tái)運(yùn)行 X 程序
執(zhí)行一個(gè)X程序時(shí)別忘了在后面加一個(gè)&號(hào),如 #netscape & 否則的話(huà)在你推出執(zhí)行
的程序之前再無(wú)法在那個(gè)終端窗口里輸入命令了.
15. 強(qiáng)行退出 X
有時(shí)候在 X 里由于程序出錯(cuò)鼠標(biāo)鍵盤(pán)都不起作用, 這時(shí)候不用著急, 因?yàn)樵贚inux
下幾乎不會(huì)像在Win95里那樣惡性死機(jī), 你只須鍵入Ctrl+Alt+BackSpace鍵就可以回到字
符界面下了.
1. 重裝Win9x后lilo失效無(wú)法啟動(dòng)Linux
只須先用軟盤(pán)啟動(dòng)Linux然后運(yùn)行一次lilo即可。對(duì)于RedHat可以用命令mkbootdis
k來(lái)制作啟動(dòng)盤(pán),例如:
mkbootdisk --devices /dev/fd0 2.0.34-1
其中2.0.34-1是 /lib/modules下的一個(gè)目錄。
2. 把dos/windows改為缺省啟動(dòng)的OS
RedHat把Linux作為lilo缺省啟動(dòng)的OS,即出現(xiàn) boot: 提示符后直接回車(chē)啟動(dòng)Linu
x。如果想改為dos/Windows,修改文件/etc/lilo.conf,把有關(guān)啟動(dòng)dos的部分放在前面
,再運(yùn)行一次lilo即可。例如把lilo.conf從:
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.0.34-1
label=linux
root=/dev/hdc5
read-only
other=/dev/hda1
label=dos
table=/dev/hda
改為:
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
other=/dev/hda1
label=dos
table=/dev/hda
image=/boot/vmlinuz-2.0.34-1
label=linux
root=/dev/hdc5
read-only
3. 去掉引導(dǎo)區(qū)內(nèi)的lilo信息
安裝lilo后如果硬盤(pán)數(shù)量或分區(qū)情況有改變的話(huà)將導(dǎo)致硬盤(pán)不能啟動(dòng),這時(shí)只須用
軟盤(pán)啟動(dòng)dos再運(yùn)行 fdisk/mbr 即可。(這個(gè)方法還可清除任何引導(dǎo)區(qū)病毒)
4. 讓 X 支持 AGP 顯卡
下載一個(gè) AX 4.1 即 AcceleratedX 4.1 , 一個(gè)商業(yè)版的 X Server 。除 AGP 顯
卡外 AX 還支持很多牌號(hào)的顯卡。另外還可以用AX 帶的設(shè)置程序 Xsetup 方便的對(duì)分辨
率,刷新率等參數(shù)進(jìn)行設(shè)置。不過(guò)我也不知道用AGP卡效果如何,因?yàn)槲椰F(xiàn)在還在用老掉
牙的 S3 765 。
5. 把 man 或 info 的信息存為文本文件
以 tcsh 為例: man tcsh | col -b > tcsh.txt
info tcsh -o tcsh.txt -s
6. 用當(dāng)前路徑作提示符
對(duì) bash 來(lái)說(shuō),在 .bashrc 里加一行:
PS1="\$PWD\\$"
對(duì) tcsh 來(lái)說(shuō),在 .tcshrc 里加一行:
set prompt="%/>"
7. 壓縮可執(zhí)行文件
Linux 下有一個(gè)類(lèi)似 dos 里的 pklite 和 lzexe 的命令 -- gzexe 。而且壓縮率
一般都可以超過(guò) 50% ,在空間緊張時(shí)很有用。比如:
/dosc/temp# ls -al
total 148
-rwxr-xr-x 1 root root 149564 Dec 8 15:33 gawk
/dosc/temp# gzexe gawk
gawk: 54.5%
/dosc/temp# ls -al
total 216
-rwxr-xr-x 1 root root 68710 Dec 8 15:36 gawk
-rwxr-xr-x 1 root root 149564 Dec 8 15:33 gawk~
/dosc/temp#
8. 查看 Linux 啟動(dòng)時(shí)的信息
Linux 啟動(dòng)時(shí)屏幕顯示的信息來(lái)不及看清就一閃而過(guò),如果對(duì)這些信息感興趣的話(huà)
可以在啟動(dòng)完后用命令 dmesg 查看。
9. 處理文件名內(nèi)含有特殊字符的文件
如果有一個(gè)文件名叫 -file 如果想刪除它,鍵入 rm -file 會(huì)顯示 invalid opti
on ,原來(lái)由于文件名的第一個(gè)字符為 - , Linux 把文件名當(dāng)作選項(xiàng)了,可以加 -- 解
決這個(gè)問(wèn)題, 如 rm -- -file 。如果是其他特殊字符的話(huà)可以在特殊字符前加一個(gè) \
,或者用雙引號(hào)把整個(gè)文件名括起來(lái)。
10. 一次處理一整個(gè)目錄
Linux/UNIX 的很多常用命令如 rm , cp 等都有一個(gè)參數(shù)---- -r , 是遞歸的意
思, 命令里加了參數(shù) -r 就可以對(duì)目標(biāo)目錄及其下所有子目錄進(jìn)行操作,如:
rm -rf /test (f 是 force 意為強(qiáng)行) , 該命令完全刪除根目錄下的子目錄 test ,
作用類(lèi)似于 dos 下的 deltree ,當(dāng)然使用這個(gè)命令時(shí)要特別小心。再如:
cp -r /test /test1 有類(lèi)似 dos 下 xcopy /s 的作用。
11. 修改登錄畫(huà)面
對(duì)本機(jī):
先修改文件 /etc/issue 改為相要顯示的內(nèi)容, 再修改文件 /etc/rc.d/rc.local(Red
Hat) 或 /etc/rc.d/rc.S(Slackware) 把下面幾句注釋掉:
# This will overwrite /etc/issue at every boot. So, make any changes you
# want to make to /etc/issue here or you will lose them when you reboot.
echo "" > /etc/issue
echo "Red Hat Linux $R" >> /etc/issue
echo "Kernel $(uname -r) on $a $(uname -m)" >> /etc/issue
cp -f /etc/issue /etc/issue.net
echo >> /etc/issue
不然的話(huà)每次重新啟動(dòng) /etc/issue 都會(huì)被更改。
對(duì) telnet 的遠(yuǎn)地機(jī)器:
先把文件 /etc/usr/sbin/in.telnetd 改名,如改為 in.telnetd.exe ,再編一個(gè)名為
in.telnetd 的 shell 腳本, 在顯示完需要的內(nèi)容后再調(diào)用 in.telnetd.exe 。如:
#!/bin/sh
cat /etc/login.banner #需要在登錄提示符前顯示的內(nèi)容
echo -n ""
exec /usr/sbin/in.telnetd.exe
12. 幾個(gè)有用的別名
幾個(gè)能方便操作和減少誤操作的別名,建議把它們放到啟動(dòng)文件里, 如 /etc/bashrc
。
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
#前三個(gè)別名的作用是在刪除、覆蓋文件之前先提示確認(rèn),RedHat已經(jīng)自動(dòng)
#加上了,強(qiáng)烈建議Slackware的用戶(hù)也加上,因?yàn)長(zhǎng)inux/UNIX下文件一旦刪
#除就再也無(wú)法恢復(fù)了。
alias l='ls -l'
alias cd..='cd ..'
alias utar='tar xvfz' #解 *.tar.gz 文件
alias inforpm='rpm -qpi' #顯示rpm包的信息
alias instrpm='rpm -Uhv' #安裝rpm包
alias listrpm='rpm -qpl' #列rpm包內(nèi)的文件
alias uistrpm='rpm -e' #反安裝rpm包
13. 使用命令補(bǔ)齊
所謂命令補(bǔ)齊(Command-Line Completion)是指當(dāng)鍵入的字符足以確定目錄下一個(gè)唯
一的文件時(shí)只須按 Tab 鍵就可以自動(dòng)補(bǔ)齊該文件名的剩下部分,例如要把目錄 /frees
oft 下的文件 gcc-2.8.1.tar.gz 解包,當(dāng)鍵入到 tar xvfz /freesoft/g 時(shí)如果該文
件是該目錄下唯一以 g 起頭的文件的話(huà)就可以按下 Tab 鍵,這時(shí)命令會(huì)被自動(dòng)補(bǔ)齊為
:tar xvfz /freesoft/gcc-2.8.1.tar.gz ,非常方便。
14. 最后一條技巧
有時(shí)間的話(huà)多看看系統(tǒng)提供的FAQ文件,因?yàn)橥ǔS龅降膯?wèn)題大多數(shù)都能在里面找到答案。?
評(píng)論
查看更多