nohup命令輸出日志_逼格高又實用的Linux高級命令,開發運維都要懂

在運維的坑里摸爬滾打好幾年了,我還記得我剛開始的時候,我只會使用一些簡單的命令,寫腳本的時候,也是要多簡單有多簡單,所以有時候寫出來的腳本又長又臭,像一些高級點的命令,比如說Xargs 命令、管道命令、自動應答命令等,如果當初我要是知道,那我也可能寫出簡潔高效的腳本。不管出于任何原因,我都想對一些Linux使用的高級命令進行用法說明,利人利己,以后不記得的話,我也可以回頭翻來看看。

b3fe0adfc0089b5b451a7020f42e4360.png

1、實用的xargs命令

在平時的使用中,我認為xargs這個命令還是較為重要和方便的。我們可以通過使用這個命令,將命令輸出的結果作為參數傳遞給另一個命令。比如說我們想找出某個路徑下以.conf結尾的文件,并將這些文件進行分類,那么普通的做法就是先將以.conf結尾的文件先找出來,然后輸出到一個文件中,接著cat這個文件,并使用file文件分類命令去對輸出的文件進行分類。這個普通的方法還的確是略顯麻煩,那么這個時候xargs命令就派上用場了。

例1:找出 / 目錄下以.conf 結尾的文件,并進行文件分類

命令:# find / -name *.conf -type f -print | xargs file

輸出結果如下所示:

29a387a55cdd868b844d06648d116a32.png

xargs后面不僅僅可以加文件分類的命令,你還可以加其他的很多命令,比如說實在一點的tar命令,你可以使用find命令配合tar命令,將指定路徑的特殊文件使用find命令找出來,然后配合tar命令將找出的文件直接打包,命令如下:

# find / -name *.conf -type f -print | xargs tar cjf test.tar.gz

2、命令或腳本后臺運行

有時候我們進行一些操作的時候,不希望我們的操作在終端會話斷了之后就跟著斷了,特別是一些數據庫導入導出操作,如果涉及到大數據量的操作,我們不可能保證我們的網絡在我們的操作期間不出問題,所以后臺運行腳本或者命令對我們來說是一大保障。

比如說我們想把數據庫的導出操作后臺運行,并且將命令的操作輸出記錄到文件,那么我們可以這么做:

nohup mysqldump -uroot -pxxxxx --all-databases > ./alldatabases.sql &(xxxxx是密碼)

當然如果你不想密碼明文,你還可以這么做:

nohup mysqldump -uroot -p --all-databases > ./alldatabases.sql (后面不加&符號)

執行了上述命令后,會提示叫你輸入密碼,輸入密碼后,該命令還在前臺運行,但是我們的目的是后天運行該命令,這個時候你可以按下Ctrl+Z,然后在輸入bg就可以達到第一個命令的效果,讓該命令后臺運行,同時也可以讓密碼隱蔽輸入。

命令后臺執行的結果會在命令執行的當前目錄下留下一個nohup.out文件,查看這個文件就知道命令有沒有執行報錯等信息。

3、找出當前系統內存使用量較高的進程

在很多運維的時候,我們發現內存耗用較為嚴重,那么怎么樣才能找出內存消耗的進程排序呢?

命令:# ps -aux | sort -rnk 4 | head -20

2824809779756630a700c69c2d9d4720.png

輸出的第4列就是內存的耗用百分比。最后一列就是相對應的進程。

4、找出當前系統CPU使用量較高的進程

在很多運維的時候,我們發現CPU耗用較為嚴重,那么怎么樣才能找出CPU消耗的進程排序呢?

命令:# ps -aux | sort -rnk 3 | head -20

0e20afab7e554753caa8ce9b46622790.png

輸出的第3列為CPU的耗用百分比,最后一列就是對應的進程。

我想大家應該也發現了,sort 命令后的3、4其實就是代表著第3列進行排序、第4列進行排序。

5、同時查看多個日志或數據文件

在日常工作中,我們查看日志文件的方式可能是使用tail命令在一個個的終端查看日志文件,一個終端就看一個日志文件。包括我在內也是,但是有時候也會覺得這種方式略顯麻煩,其實有個工具叫做multitail可以在同一個終端同時查看多個日志文件。

首先安裝multitail:

# wget ftp://ftp.is.co.za/mirror/ftp.rpmforge.net/redhat/el6/en/x86_64/dag/RPMS/multitail-5.2.9-1.el6.rf.x86_64.rpm

# yum -y localinstall multitail-5.2.9-1.el6.rf.x86_64.rpm

multitail工具支持文本的高亮顯示,內容過濾以及更多你可能需要的功能。

如下就來一個有用的例子:

此時我們既想查看secure的日志指定過濾關鍵字輸出,又想查看實時的網絡ping情況:

命令如下:

# multitail -e "Accepted" /var/log/secure -l "ping baidu.com"

186c3ed81ae75e54c07406301dbca5e1.png

是不是很方便?如果平時我們想查看兩個日志之間的關聯性,可以觀察日志輸出是否有觸發等。如果分開兩個終端可能來回進行切換有點浪費時間,這個multitail工具查看未嘗不是一個好方法。

6、持續ping并將結果記錄到日志

很多時候,運維總會聽到一個聲音,是不是網絡出什么問題了啊,導致業務出現怪異的癥狀,肯定是服務器網絡出問題了。這個就是俗稱的背鍋,業務出了問題,第一時間相關人員找不到原因很多情況下就會把問題歸結于服務器網絡有問題。這個時候你去ping幾個包把結果丟出來,人家會反駁你,剛剛那段時間有問題而已,現在業務都恢復正常了,網絡肯定正常啊,這個時候估計你要氣死。你要是再拿出zabbix等網絡監控的數據,這個時候就不太妥當了,zabbix的采集數據間隔你不可能設置成1秒鐘1次吧?小編就遇到過這樣的問題,結果我通過以下的命令進行了ping監控采集。然后再有人讓我背鍋的時候,我把出問題時間段的ping數據庫截取出來,大家公開談,結果那次被我叼杠回去了,以后他們都不敢輕易甩鍋了,這個感覺好啊。

命令:

ping api.jpush.cn | awk '{ print $0"" strftime("%Y-%m-%d %H:%M:%S

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/258782.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/258782.shtml
英文地址,請注明出處:http://en.pswp.cn/news/258782.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

JavaScript中OOP——面向對象中的繼承/閉包

前 言 OOP JavaScript中OOP——>>>面向對象中的繼承/閉包 1.1面向對象的概念 使用一個子類繼承另一個父類,子類可以自動擁有父類的屬性和方法。>>> 繼承的兩方,發生在兩個類之間。1.2JS模擬實現繼承的三種方式: 首先&am…

js常用字符串函數

這些東西是以前整理的,放到這里,有需要的可以看看~挺全的~ /** * anchor()方法 * 在對象中的指定文本兩端放置一個有Name屬性的HTML錨點 * strVariable.anchor(anchorString) anchorString為錨點名稱 * 它本身不會檢查其他的ahchor錨點是否有name指…

c++11中的智能指針

在C11中有四種智能指針,auto_ptr,shared-ptr,unique_ptr和weak-ptr,其中auto_ptr有許多不足之處,在C11中已經建議廢棄使用。 1. shared_ptr std::shared_ptr智能指針可以通過共享指向對象的所有權,從而實現…

ubuntu14.04設置靜態IP

啊,最近懶惰了,好久沒有寫博客了。 一般機器啟動的時候會自動從DHCP服務器上面獲取動態IP地址,這是一件很方便的事情,可以不用手動設置網絡相關的蠶參數,但是有時候還是需要機器固定IP地址的。 第一步,編輯…

高中學歷python培訓靠譜嗎_高中學歷學完Python就能干人工智能?

最近Python大熱,主要是人工智能的熱度,昨天后院活動部介紹了一位女網友為男朋友選擇Java還是Python,大量的程序員熱議,也有人詢問如何學習Python,比如這位網友詢問高中學歷學習Python是不是就能干人工智能。兄弟&#…

curl+個人證書(又叫客戶端證書)訪問https站點

目前,大公司的OA管理系統(俗稱內網),安全性要求較高,通常采用https的雙向 認證模式。 首先,什么是https,簡單的說就是在SSL協議之上實現的http協議(get、post等操作)。更…

boot.oat FC問題分析報告

【NE現場】 pid: 5252, tid: 5252, name: ndroid.contacts >>> com.android.contacts <<< signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x1458x0 0000000000000000 x1 0000000090d9892c x2 0000000000000001 x3 000000000000012cx4 …

c++ 虛函數的實現機制

轉載自&#xff1a;http://blog.csdn.net/jiangnanyouzi/article/details/3720807 1、c實現多態的方法 其實很多人都知道&#xff0c;虛函數在c中的實現機制就是用虛表和虛指針&#xff0c;但是具體是怎樣的呢&#xff1f;從more effecive c其中一篇文章里面可以知道&#xff…

powerdesigner 技巧

1.修改建表腳本生成規則。如果每個表格都有相同的字段&#xff0c;可以如下修改&#xff1a; Database -> Edit Current DBMS 展開 Script -> Object -> Table -> Create 見右下的Value值&#xff0c;可以直接修改如下&#xff1a;/* tablename: %TNAME% */ create…

勒索病毒攻擊應急防范

北京時間5月12日&#xff0c;互聯網上出現針對Windows操作系統的勒索軟件&#xff08;Wannacry&#xff09;攻擊案例。勒索軟件利用此前披露的Windows SMB服務漏洞&#xff08;對應微軟漏洞公告&#xff1a;MS17-010&#xff09;攻擊手段&#xff0c;向終端用戶進行滲透傳播&am…

C++中虛析構函數的作用

C中的虛析構函數到底什么時候有用的&#xff0c;什么作用呢。 總的來說虛析構函數是為了避免內存泄露&#xff0c;而且是當子類中會有指針成員變量時才會使用得到的。也就說虛析構函數使得在刪除指向子類對象的基類指針時可以調用子類的析構函數達到釋放子類中堆內存的目的&…

蘋果Swift編程語言入門教程【中文版】

http://www.25pp.com/news/news_60984.html轉載于:https://www.cnblogs.com/niaowo/p/4564298.html

python正則表達式匹配aabb_Python正則表達式拆分多個匹配項

我正在嘗試將包含2個不同字符的序列的字符串拆分為多個組.如果我們假設字符是a和b,則用于分組的純文本規則為&#xff1a;>組包含0 a,后跟1 b>后面的所有a都包含在下一組中,除非我們在單詞末尾.例如&#xff1a;處理測試后,目標是分成預期的組.tests [abab,ababab,aabab…

MEF 導入(Import)和導出(Export)

前言&#xff1a; MEF不同于其他IOC容器&#xff08;如&#xff1a;Castle&#xff09;很重要的原因在于它使用了特性化編程模型&#xff08;涉及到兩個概念&#xff1a;“特性”和“編程模型”&#xff09;。 特性&#xff08;Attribute&#xff09;&#xff1a;舉例來說就是我…

Android SimpleAdapter的參數

1.作用是ArrayList和 ListView的橋梁。這個ArrayList里邊的每一項都是一個Map<String,?>類型。 ArrayList當中的每一項 Map對象都和ListView里邊的每一項進行數據綁定一一對應。2.SimpleAdapter的構造函數&#xff1a;SimpleAdapter(Context context, List<? …

JMeter 教程匯總鏈接

http://www.360doc.com/content/14/0318/23/16361380_361732630.shtml 可以作為入門系列教程。 盡管網頁也給出了視頻鏈接&#xff0c;但是我不建議看視頻學習&#xff01; 建議直接看文字&#xff08;可以跳躍式學習&#xff0c;視頻的則是線性學習&#xff09;轉載于:https:…

C++ STL中set底層實現方式

Q&#xff1a;STL中set底層實現方式&#xff1f; 為什么不用hash&#xff1f; A: 第一個問題:set底層實現方式為RB樹&#xff08;即紅黑樹&#xff09;。 第二個問題: 首先set&#xff0c;不像map那樣是key-value對&#xff0c;它的key與value是相同的。關于set有兩種說法&…

python自動獲取天氣_用python獲取天氣數據,并作定時播報

原標題&#xff1a;用python獲取天氣數據&#xff0c;并作定時播報數據挖掘入門與實戰 公眾號&#xff1a; datadw思路1.調用和風天氣的API&#xff0c;獲取天氣數據2.用百度語音API&#xff0c;將天氣數據合成語音3.用樹莓派每天早上定時播報天氣(定時任務crontab Python腳本…

c++實現解析文件路徑

注意&#xff1a;本實現只能解析類似linux下的路徑&#xff0c;即“/data/a.txt”&#xff0c;而不能解析“c:\a.txt” 或者“c:\\a.txt”&#xff0c;但是應該很容易擴展改寫實現此功能。 FilepathParse.h #include <string> using std::string;void parseFilepath(str…