Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java log4j Syslogd打印字符'^I';而不是制表符_Java_Log4j_Syslog - Fatal编程技术网

Java log4j Syslogd打印字符'^I';而不是制表符

Java log4j Syslogd打印字符'^I';而不是制表符,java,log4j,syslog,Java,Log4j,Syslog,我正在处理打印消息(包含选项卡、空格等)的syslogd。当我观察/var/log/目录中的syslogd文件时,消息没有任何选项卡。相反,它正在打印^I 在ubuntu10.04lts和sysklogd上运行此程序 import org.apache.log4j.Appender; import org.apache.log4j.Level; import org.apache.log4j.Logger; import org.apache.log4j.PatternLayout; impor

我正在处理打印消息(包含选项卡、空格等)的
syslogd
。当我观察/var/log/目录中的
syslogd
文件时,消息没有任何选项卡。相反,它正在打印
^I

ubuntu10.04lts
sysklogd
上运行此程序

import org.apache.log4j.Appender;
import org.apache.log4j.Level;
import org.apache.log4j.Logger;
import org.apache.log4j.PatternLayout;
import org.apache.log4j.net.SyslogAppender;

public class syslogPrinter {

    private static int sysLogFacility = SyslogAppender.LOG_LOCAL3;
    private static String syslogHost = "localhost";
    private static String layoutPattern = "%m%n";
    public static Logger log2static = Logger.getLogger(syslogPrinter.class);

    public static void main(String[] args) {

        log2static.setLevel(Level.INFO);
        PatternLayout layout = new PatternLayout(layoutPattern);

        Appender syslogdAppender = new SyslogAppender(layout, syslogHost, sysLogFacility);

        log2static.addAppender(syslogdAppender);

        String str2 = "this is a tab: ";
        str2 = str2.concat("\t");
        str2 = str2.concat("    after space");
        log2static.error(str2);
    }

}
输出像

这是一个选项卡:^I在空格后

预期输出为

这是一个选项卡:空格后(选项卡 空间应该来了)

请告诉我如何在邮件中打印制表符而不是
^I


是否需要配置
syslogd.conf
文件?

是否使用Gnome日志文件查看器或
tail
查看系统日志?如果没有,您将使用哪个工具/编辑器查看文件?Ctrl+I是某些终端中水平制表符的有效控制序列


我怀疑您使用的实用程序无法将Ctrl+I识别为有效的转义序列,您最好使用用于查看系统日志文件的查看器。

I通过Gnome文件查看器检查日志文件,但无法解决此问题。gedit中的事件也将发生^L……。您能建议任何编辑器。。。。。。。。。。。。