先从别的地方抄过来全部的解释,如下:

**options (选项):**
-d, --udp
使用数据报(UDP)而不是使用默认的流连接(TCP)
-i, --id
逐行记录每一次logger的进程ID
-f, --file file_name
记录特定的文件
-h, --help
显示帮助文本并退出
-n, --server
写入指定的远程syslog服务器,使用UDP代替内装式syslog的例程
-s, --stderr
输出标准错误到系统日志。
-t, --tag tag
指定标记记录
-u, --socket socket
写入指定的socket,而不是到内置系统日志例程。
-V, --version
显示版本信息并退出
-P, --port port_num
使用指定的UDP端口。默认的端口号是514
-p, --priority priority_level
指定输入消息日志级别,优先级可以是数字或者指定为 " facility.level" 的格式。  

下面开始逐一实验每个参数的用法。

-d不清楚怎么使用

-i,记录进程id,随便写个小列子,代码如下:

#!/bin/bash
logger -i "this is a test --i"
logger "this is a test --"
sleep

在/var/log/messages文件中,会有如下记录:

--27T10::17.838653+:|notice|root[]|this is a test --i
--27T10::17.839606+:|notice|root[-]|this is a test --

-f选项没发现什么特别之处。

-n太复杂,暂时还没有用到。

-s,输出标准错误,并且将信息打印到系统日志中。

linux-xdYUnA:/home/test/shell # logger -i -s "abc"
root[5105]: abc

在message日志中记录如下:

--27T11::47.705041+:|notice|root[]|abc

-t,指定标记记录,在message日志中可以看到是属于哪个模块记录的日志,-t后面为模块名称,加引号或不加都可以。如果不指定-t,都是已root为记录。

linux-xdYUnA:/home/test/shell # logger -i -t xingmuxin -s "this is a test"
xingmuxin[]: this is a test
linux-xdYUnA:/home/test/shell # logger -i -t "xingmuxin" -s "this is a test"
xingmuxin[]: this is a test
linux-xdYUnA:/home/test/shell # logger -i -s "this a test"
root[16997]: this a test

-u,-P,这个暂时还不知道怎么使用。

-p,指定输入消息日志级别,优先级可以是数字或者指定为 " facility.level" 的格式。比如:" -p local3.info " local3 这个设备的消息级别为 info。默认级别是 "user.notice"

facility:是用来定义由谁产生的日志信息:那个软件、子系统运行过程中产生的日志信息。
auth: 用户授权
authpriv: 授权和安全
cron: 计划任务
daemon: 系统守护进程
kern: 与内核有关的信息
lpr 与打印服务有关的信息
mail 与电子邮件有关的信息
news 来自新闻服务器的信息
syslog 由syslog生成的信息
user 用户的程序生成的信息,默认
ftp
uucp 由uucp生成的信息
local0~ 用来定义本地策略

level:是用来定义记录什么类型的日志信息。alert需要立即采取动作。

debug()            调试
info() 正常消息
notice() 正常但是要注意
warning()
error() 错误状态
crit() 临界状态
alert()
emerg() 系统不可用

如下列子:

linux-xdYUnA:/home/test/shell # logger -it xingmuxin -p kern.err "this a test"
linux-xdYUnA:/home/test/shell # logger -it xingmuxin -p syslog.info "this a test"
linux-xdYUnA:/home/test/shell # logger -it xingmuxin -p 4 "this a test"

在message中记录的日志为:

--27T11::37.318344+:|err|xingmuxin[]|this a test
--27T11::50.052378+:|info|xingmuxin[]|this a test
--27T11::26.995571+:|warning|xingmuxin[]|this a test

linux命令logger使用的更多相关文章

  1. Linux命令——logger

    参考:How to use logger on Linux Difference between /var/log/messages, /var/log/syslog, and /var/log/ke ...

  2. linux日志logger命令详解

    通过logger命令记录日志 logger是一个shell命令接口,可以通过该接口使用Syslog的系统日志模块,还可以从命令行直接向系统日志文件写入一行信息. ------------------- ...

  3. android 程序执行linux命令注意事项

    一:问题描述    在已经root过的android设备下,app执行一个linux命令,app需要获取su权限,在某些android主板下会出现异常, Command: [su] Working D ...

  4. linux 命令中英文对照,收集

    linux 命令中英文对照,收集   linux 命令英文全文 Is Linux CLI case-sensitive? The answer is, yes. If you try to run L ...

  5. [Android] 基于 Linux 命令行构建 Android 应用(七):自动化构建

    本章将演示如何基于 Linux 命令行构建 Android 应用,在开始本章之前,希望你已经阅读之前几章内容. 本文环境为 RHEL Sandiego 32-bits,要基于 Linux CLI 构建 ...

  6. java执行linux命令的工具类

    package com.starfast.common.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ja ...

  7. Solaris/Linux 命令手册

    无意翻到之前收藏的一个文档,共享一下. Solaris/Linux 命令手册 1. 系统 # passwd:修改口令 # exit:退出系统 2. 文件 # cp:复制文件或目录,参数:-a递归目录, ...

  8. Spark调用Linux命令实现解压和压缩功能

    一.应用场景 在Spark程序中调用Linux命令,实现一些程序难以实现的功能,例如:发送模拟邮件.文件打包或解压等等 二.代码实现 package big.data.analyse.linux im ...

  9. Linux命令——pr

    参考:Linux命令——column 前言 接触这个命令的初衷是我想把一个很长的单列输出设置成多列输出,奈何column的分列输出机制太智障,直到我发现了pr 参数 pr -# 输出指定的列数. -t ...

随机推荐

  1. TCP三次握手与四次握手

    背景描述 通过上一篇中网络模型中的IP层的介绍,我们知道网络层,可以实现两个主机之间的通信.但是这并不具体,因为,真正进行通信的实体是在主机中的进程,是一个主机中的一个进程与另外一个主机中的一个进程在 ...

  2. git&github入门使用

    一.在Linux上安装Git 首先,你可以试着输入git,看看系统有没有安装Git,没有就yum一个,反正也是自己玩玩 二.版本库创建 什么是版本库呢?版本库又名仓库,英文名repository,你可 ...

  3. wxWidgets 在 Linux 下开发环境配置

    本文基于 CodeBlocks (16.0.1) 和 wxWidgets (3.0.2) 搭建 Linux 下 GUI 开发环境. 1. 安装 CodeBlocks Ubuntu 默认的源当前 Cod ...

  4. mybatis 中 foreach collection的三种用法(转)

    文章转自 https://blog.csdn.net/qq_24084925/article/details/53790287 oreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集 ...

  5. 从String.valueOf(null)说起

    同学在群问String.valueOf(null)返回啥,我看了下源码,返回"null"啊,   public static String valueOf(Object obj) ...

  6. python中numpy.pad简单填充0用法

    # -*- coding: utf-8 -*-"""Created on Sun Apr 28 22:07:02 2019 @author: jiangshan" ...

  7. Android测试(三):本地单元测试

    原文:https://developer.android.com/training/testing/unit-testing/local-unit-tests.html 如果你的单元测试没有依赖或者只 ...

  8. Gym101237C The Palindrome Extraction Manacher、SAM、倍增

    传送门 假设字符串\(B,D\)满足\(|B| \geq |D|\),那么一定会有\(B=rev(D)+T\),其中\(T\)是一个回文串. 考虑枚举回文串\(T\)的中心\(p\),找到以\(p\) ...

  9. WindowsFormsHost下MouseWheel失效的解决办法

    原文:WindowsFormsHost下MouseWheel失效的解决办法 看了网上有些写的用钩子,但是,在Stack Overflow上找到一个简便的方式

  10. NuGet的本地服务器安装与Package的发布(呕吐)

    主要的步骤是按照下面的例子来做的: NuGet学习笔记(1)——初识NuGet及快速安装使用 NuGet学习笔记(2)——使用图形化界面打包自己的类库 NuGet学习笔记(3)——搭建属于自己的NuG ...