利用logsave如何將命令輸出保存起來(lái)
前言
如果想要把命令的輸出保存到文件中,你會(huì)怎么做?
一個(gè)常用的方法就是使用IO重定向吧
ls >/tmp/ls.txt 2>&1
如果需要在將命令輸出保存到文件中的同時(shí)還需要將內(nèi)容也輸出到屏幕中的話,那么我們可以使用 tee 命令
ls |tee /tmp/ls.txt
不過(guò),我今天發(fā)現(xiàn)還有一個(gè) logsave 的命令,也可以做到將命令輸出保存到文件的同時(shí)將內(nèi)容頁(yè)輸出到屏幕中。
logsave 的語(yǔ)法非常簡(jiǎn)單:
logsave [ -asv ] logfile cmd_prog [args ... ]
選項(xiàng)
-a:追加信息到指定的日志文件中。
參數(shù)
- 日志文件:指定記錄運(yùn)行信息的日志文件;
- 指令:需要執(zhí)行的指令。
logsave 會(huì)執(zhí)行 cmd_prog args... 并將命令輸出的副本保存到 logfile 中. 而它厲害的地方在于 即使logfile所在的目錄不存在,logsave也會(huì)將輸出保存到內(nèi)存中,等到logfile所在的目錄建立后再將內(nèi)容寫入到日志文件中
logsave 的這個(gè)特性使得它很適合用于系統(tǒng)啟動(dòng)腳本中,將輸出的內(nèi)容保存到內(nèi)存中,直到 /var/ 目錄掛載后再將內(nèi)容寫入 /var/log/ 中
比如下面這個(gè)例子
# 刪除存放logfile的目錄 rm -rf /tmp/logdir # 使用logsave保存logfile logsave /tmp/logdir/logfile bash -c "sleep 2;date" # 創(chuàng)建logdir mkdir /tmp/logdir echo 查看logfile是否生成: ls -l /tmp/logdir echo 等待2s后: sleep 2 echo 再次查看logfile是否生成: ls -l /tmp/logdir echo 查看logfile的內(nèi)容: cat /tmp/logdir/logfile
2018年 05月 14日 星期一 16:31:44 CST 查看logfile是否生成: 總用量 0 等待2s后: 再次查看logfile是否生成: 總用量 4 -rw-r--r-- 1 lujun9972 lujun9972 141 5月 14 16:31 logfile 查看logfile的內(nèi)容: Log of bash -c sleep 2;date Mon May 14 16:31:42 2018 2018年 05月 14日 星期一 16:31:44 CST Mon May 14 16:31:44 2018 ----------------
從中可以看到:
- 雖然一開(kāi)始logfile由于logdir不存在而無(wú)法生成,但是在創(chuàng)建logdir后, logsave 最終依然成功的生成了logfile,并將 date 命令的執(zhí)行結(jié)果寫入其中。
- logsave 不僅僅將命令的輸出內(nèi)容寫入logfile中,而且還包括了執(zhí)行的命令,命令執(zhí)行的開(kāi)始時(shí)間和命令執(zhí)行結(jié)束的時(shí)間.
logsave 中的 cmd_prog 可以是一個(gè)特殊的 - ,這表示 logsave 從標(biāo)準(zhǔn)輸入中獲取要記錄日志的內(nèi)容,這使得 logsave 可以像 tee 一樣被使用
ls |wc -l |logsave /tmp/1.txt - >/dev/null cat /tmp/1.txt
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
centeros7 安裝配置環(huán)境jdk1.8的教程
這篇文章主要介紹了centeros7 安裝配置環(huán)境jdk1.8的教程,本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09VSCode連接實(shí)驗(yàn)室服務(wù)器Xshell,Xftp向服務(wù)器傳輸文件的方法(win10)
這篇文章主要介紹了VSCode連接實(shí)驗(yàn)室服務(wù)器,Xshell,Xftp向服務(wù)器傳輸文件(win10),本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08Linux使用ssh公鑰實(shí)現(xiàn)免密碼登錄實(shí)例
本篇文章主要介紹了Linux使用ssh公鑰實(shí)現(xiàn)免密碼登錄實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03樹(shù)莓派搭建nas服務(wù)器的詳細(xì)過(guò)程
這篇文章主要介紹了樹(shù)莓派搭建nas服務(wù)器的教程,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-01-01