桂哥网络与您分享了如何使用logsave保存命令输出。希望你看完这篇文章有所收获。大家一起讨论一下。
前言
如果要将命令输出保存到文件中,您会怎么做?
一种常见的方法是使用输入输出重定向
Ls/tmp/ls.txt21如果您需要将命令输出保存到一个文件中,并将内容输出到屏幕上,那么我们可以使用tee命令
Ls|tee/tmp/ls.txt然而今天我发现还有一个logsave命令,可以将命令输出保存到一个文件中,同时将内容页面输出到屏幕上。
logsave 的语法非常简单:
log save[-asv]logfile cmd _ Prog[args.]选项
-a:将信息附加到指定的日志文件。
参数
日志文件:指定记录操作信息的日志文件;
命令:要执行的命令。
日志保存将执行cmd_prog参数.并将命令输出的副本保存到日志文件中。最棒的是,即使日志文件所在的目录不存在,logsave也会将输出保存到内存中,等到日志文件所在的目录建立后,再将内容写入日志文件。
logsave的这一特性使其适合在系统启动脚本中使用,将输出内容保存在内存中,直到/var/directory安装完毕,然后将内容写入/var/log/
例如,以下示例
#删除存储日志文件的目录
rm-rf/tmp/logdir
#使用logsave保存日志文件
log save/tmp/log dir/logfilebash-c ' sleep 2;日期
#创建日志目录
mkdir/tmp/logdir
回显以查看日志文件是不是生成:
ls-l/tmp/logdir
回声在2秒后等待:
睡眠2
回声再次检查日志文件是不是生成:
ls-l/tmp/logdir
回显查看日志文件:的内容
cat/tmp/logdir/log file 2018年5月14日星期一16:31:44CST
检查日志文件是不是生成:
总消耗量0
等待2s后:
再次检查日志文件是不是生成:
总消耗量4
-rw-r-r-1 lujun 9972 lujun 99721415 1416:31 log file
检查日志文件:的内容
logofbash-cs LEEP 2;日期
一月1416:313360422018
2018年5月14日星期一16:31:44CST
一月1416:313360442018
-从中可以看到:
起初,由于logdir不存在,无法生成日志文件,但在logdir创建后,logsave最终成功生成了日志文件,并将date命令的执行结果写入其中。
Logsave不仅将命令的输出内容写入日志文件,还包括执行的命令、命令执行的开始时间和命令执行的结束时间。
logsave中的Cmd_prog可以是一个特殊的-,这意味着logsave从标准输入中获取要记录的内容,这使得logsave可以像tee一样使用
ls | WC-l | log save/tmp/1 . txt-/dev/null
Cat/tmp/1.txt看完这篇文章,相信大家对“如何保存logsave输出的命令”有一定的了解。如果你想了解更多的相关知识,请关注桂哥网络。谢谢你的阅读!
TikTok千粉号购买平台:https://tiktokusername.com/
TOP