精华内容
下载资源
问答
  • 信息输出
    万次阅读
    2021-01-20 11:16:06
    设备名称          标准叫法                    代号
    标准输入设备       stdin = standard input     0
    标准输出设备       stdout = standard output   1
    标准错误设备       stderr = standard error    2
    
    echo abc 1>out.txt 或 echo abc >out.txt 常规内容输出至文件,不再输出至屏幕;错误信息输出至屏幕
    echo abc 2>out.txt                      常规内容输出至屏幕;错误信息输出至文件,不再输出至屏幕
    echo abc &>out.txt                      常规内容、错误信息均输出至文件,且都不再输出至屏幕
    echo abc 1>out1.txt 2>out2.txt          常规内容输出至文件1,错误信息输出至文件2,且都不再输出至屏幕
    
    左边数字代号与大于号之间不能有空格,大于号与右面文件名之间可以有空格
    默认情况下使用数字代号1即常规内容输出,所以常规内容的输出可以不写数字1,空着就行。建议统一使用数字来书写。
    更多相关内容
  • 1. Linux中记录终端输出到文本文件 一,把命令运行的结果保存到文件当中:用 > 把输出转向就可以了 例子: $ ls > ls.t...

    1. Linux中记录终端输出到文本文件

    一,把命令运行的结果保存到文件当中:用 > 把输出转向就可以了
      例子:
      $ ls > ls.txt    #或者 ls-->ls.txt    #把ls命令的运行结果保存到文件ls.txt中
      
      说明: > 是把输出转向到指定的文件,如文件已存在的话也会重新写入,文件原内容不会保留
           >> 是把输出附向到文件的后面,文件原内容会保留下来

    二,在输出信息的同时把信息记录到文件中: tee 命令  
      解释一下tee的作用:
       “read from standard input and write to standard output and files”,它从标准输入读取内容并将其写到标准输出和文件中

            参数:  -a, --append,“append to the given FILEs, do not overwrite“,附加至给出的文件,而不是覆盖它

      例子:
      $ ls | tee ls.txt   #将会在终端上显示ls命令的执行结果,并把执行结果输出到ls.txt 文件中   
      $ls | tee -a ls.txt   #保留ls.txt文件中原来的内容,并把ls命令的执行结果添加到ls.txt文件的后面。

    三,多个命令的输出都需要记录: script 命令
      script这个命令很强大,可以记录终端的所有输出到相应的文件中
      例子:
      1.$ script
      Script. started, file is typescript
      2.$ ls
      …… 内容省略
      3.$ exit
      exit
      Script. done, file is typescript
      4. $cat typescript   #就会把上面绿色的部分再显示一次:  

      说明:
      1,我们在启动script时没有指定文件名,它会自动记录到当前目录下一个名为 typescript的文件中。也可以用 -a参数 指定文件名
      例子:
      $script. -a example.txt  #终端的输出内容被记录到 example.txt这个文件中
      2,退出script时,用exit,事实上script就是启动了一个shell

    2. ubuntu把终端信息输出到文本文件中的方法

    ubuntu把终端信息输出到文本文件中的方法

    方法一:把终端中所有信息都写到文本文件中

    在终端的命令行中输入以下命令:

    $   script   -f    output.txt

    这样就会在当前目录下创建一个output.txt文件

    接下来,在按Ctrl+D之前,在命令窗口执行的所有命令包括终端输出的所有信息都会写道output.txt文件中。

    方法二:把终端执行某一命令后的输出内容写到文本文件中

    在终端中输入以下内容:

    $  ifconfig>ifconfig.txt

    这个应该是重定向流的意思,就是把执行ifconfig命令后本应该在终端显示的内容重定向到当前目录下的ifconfig.txt文件中了,而终端将不会输出任何信息。就像没有执行这个命令一样,这时候直接到当前目录下的ifconfig.txt文件中查看就好了,这样也达到了把终端信息输出到文本文件的目的。

    3. linux下控制台打印内容保存到文件中

    本文介绍如何在linux下将控制台打印内容保存到文件中。

    1. tee命令

    tee命令用于将数据重定向到文件,另一方面还可以提供一份重定向数据的副本作为后续命令的stdin。简单的说就是把数据重定向到给定文件和屏幕上。tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。示例如下:

    ls | tee ./log.txt
      

    2. 重定向符号 >

    • “>”或”1>”输出重定向:把前面输出的东西输入到后边的文件中,会清除文件原有的内容。
    
      
    1. [root @Simile /] # echo 'a a b b c c' >test.txt
    2. [root @Simile /] # cat test.txt
    3. a a b b c c
    • “>>”或”1>>” 追加输出重定向:把前面输出的东西追加到后边的文件尾部,不会清除文件原有的内容。
    
      
    1. [ root @Simile /] # echo 'The new line' >>test.txt
    2. [ root @Simile /] # cat test.txt
    3. a a b b c c
    4. The new line
    • “<”或”0<”输入重定向:输入重定向用于改变命令的输入,后面指定输入内容,后面跟文件名。
    
      
    1. [root@ Simile /]# xargs -n 2 <test.txt
    2. a a
    3. b b
    4. c c
    5. [root@ Simile /]# tr " " "\n" <test.txt
    6. a
    7. a
    8. b
    9. b
    10. c
    11. c
    • “<<” 或 “0<<” 追加输入重定向:后面跟字符串,用来表示“输入结束”,也可用Ctrl + D 来结束输入。
    
      
    1. [root@Simile /] # cat >>test.txt <<EOF
    2. Brand new me
    3. EOF
    4. [root@Simile /] # cat test.txt
    5. a a b b c c
    6. The new line
    7. Brand new me
    • “2>” 错误重定向:把错误的信息输入到后边的文件中,会删除文件原有的内容。1
    • “2>>”错误追加重定向:把错误的信息追加到后边的文件中,不会删除文件原有的内容。

    参考:

    1. Linux中记录终端输出到文本文件
    2. ubuntu把终端信息输出到文本文件中的方法
    3. linux下控制台打印内容保存到文件中
    展开全文
  • 在使用QtCreator编写程序时,我们可以使用qDebug方便的将自己需要的信息输出,但是如果想将其显示到程序的控件上,又该怎样做呢? 经过一番搜索,我找到了将qDebug重定向的方法,可以将其输出的信息自由的存放到ui...

    Qt日志重定向

    程序日志对于输出程序运行信息有着非常重要的作用,它可以帮助程序员定位问题所在,输出程序运转状态等

    在使用QtCreator编写程序时,我们可以使用qDebug方便的将自己需要的信息输出,但是如果想将其显示到程序的控件上,又该怎样做呢?

    经过一番搜索,我找到了将qDebug重定向的方法,可以将其输出的信息自由的存放到ui控件或文件中(搜到的大部分教程都是将日志信息重定向到文件中,容易让人误以为它只能重定向到文件)

    qInstallMessageHandler

    由于本人开发环境为Qt5,因此本文只介绍Qt5日志重定向方法qInstallMessageHandler(如果需要了解Qt4的日志重定向请搜索qInstallMsgHandler)

    日志级别

    Qt的调试信息分为五个级别:qDebug、qWarning、qInfo、qCritical、qFatal

    • Debug:级别最低,可以随意输出的调试信息
    • Info:用于反馈系统运行状态
    • Warning:警告信息,可以修复的,不影响程序运行
    • Critical:严重错误,可能导致程序无法正常运行
    • Fatal:致命错误,程序无法正常运行
    实现原理

    qInstallMsgHandler是一个回调函数,由qDebug、qWarning、qCritical、qFatal函数出发,它们处理的消息文本会被qInstallMsgHandler所指向的回调函数截获,因此可以自己处理输出的消息文本

    具体代码如下:

    mainwindow.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include <QTextEdit>
    
    namespace Ui {
    class MainWindow;
    }
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        explicit MainWindow(QWidget *parent = nullptr);
        ~MainWindow();
    
        static void logOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg);
        static void write(QString str);
    private slots:
        void on_lineEdit_textChanged(const QString &arg1);
    
    private:
        Ui::MainWindow *ui;
    };
    
    #endif // MAINWINDOW_H
    

    需要注意的是: 自定义函数需要用static修饰,否则会提示如下报错信息

    error: cannot convert 'MainWindow::logOutput' from type 'void (MainWindow::)(QtMsgType, const QMessageLogContext&, const QString&)' to type 'QtMessageHandler {aka void (*)(QtMsgType, const QMessageLogContext&, const QString&)}'
         qInstallMessageHandler(logOutput);
                                         ^
    

    mainwindow.cpp

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    
    #include <QDateTime>
    #include <QDebug>
    
    QString text;                               //用于存放日志信息
    
    MainWindow::MainWindow(QWidget *parent) :
        QMainWindow(parent),
        ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        qInstallMessageHandler(logOutput);
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::on_lineEdit_textChanged(const QString &arg1)
    {
        qDebug() << arg1;
        ui->textEdit->setText(text);
    }
    
    
    void MainWindow::write(QString str)
    {
        text = str;
    }
    
    void MainWindow::logOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg)
    {
        QString text;
        text.append(QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss") + " ");
        switch(type)
        {
            case QtDebugMsg:
                text.append("Debug:");
                break;
    
            case QtWarningMsg:
                text.append("Warning:");
                break;
    
            case QtCriticalMsg:
                text.append("Critical:");
                break;
    
            case QtFatalMsg:
                text.append("Fatal:");
        }
    
        text.append(msg);
        write(text);
    }
    

    注意事项:

    • 回调函数logOutput使用static修饰符进行修饰,因此其调用的write函数也必须为static函数
    • 静态函数无法访问类的非静态成员,因此需要使用全局变量text来存放日志信息

    程序运行效果:
    在这里插入图片描述
    如果需要直接在回调函数中操作控件内容,可以将使用代码生成控件,但必须将其设置为static类型

    //例如:声明一个static修饰的QTextEdit对象
    static QTextEdit *textEdit;
    
    //然后直接在logOutput中处理全局字符文本text即可
    textEdit->append(text);
    
    展开全文
  • VS2017中将调试信息输出到输出窗口

    万次阅读 2019-03-08 17:46:26
    在开发过程中输出调试信息总是必不可少的,之前习惯性的使用cout和printf,发现并不能输出调试信息输出窗口中,后来通过网上了解之后,cout和printf只能输出信息到dos窗口中,但是如果我们的界面中不需要用到dcs...

    在开发过程中输出调试信息总是必不可少的,之前习惯性的使用cout和printf,发现并不能输出调试信息到输出窗口中,后来通过网上了解之后,cout和printf只能输出信息到dos窗口中,但是如果我们的界面中不需要用到dcs窗口呢,经过网上查阅资料,发现有如下两种方法:
    1.使用TRACE()函数

    	int feet;
        int inches;
       TRACE("F:%d I:%d\n", feet, inches);
    

    2.使用OutputDebugString()函数

        int feet;
        int inches;
        CString str;
        str.Format(L"F:%d I:%d\n", feet, inches);
        OutputDebugString(str);
    

    在使用OutputDebugString时候要注意,参数类型为LPCWSTR,这里我们可以查看定义:

    #ifdef UNICODE
    #define OutputDebugString  OutputDebugStringW
    #else
    #define OutputDebugString  OutputDebugStringA
    #endif // !UNICODE
    
    OutputDebugStringW(
        _In_opt_ LPCWSTR lpOutputString
        );
    

    所以我在使用OutputDebugString之前先定义了一个CString实例。

    以上两种方法都可以输出调试信息,在使用TRACE输出调试信息的时候,还会将输出调试信息的文件的绝对路径输出出来。

    展开全文
  • tip:编写一个将用户输入的信息输出到网页的js程序 和 用if else验证用户输入的密码是否正确 (两个代码) 1.编写一个将用户输入的信息输出到网页的js程序 <!DOCTYPE HTML> <html> <head> <...
  • C#,winForm程序中,如何将中间调试信息输出到输出栏? System.Diagnostics.Debug.WriteLine("现在执行到第"+i+"步。"); 例如: try { string year = dateTime.Substring(0, 4); string ...
  • Linux之终端信息输出到日志文件

    万次阅读 2018-10-10 15:51:22
    在做调试的时候,需要观察终端输出的内容,有时候终端输出太多会被覆盖掉,并且直接在终端观察不太方便。将终端输出的内容保存在日志文件中,一方面可以便于查看输出内容,另一方面可以永久保存,便于回看。因此本文...
  • 1、在vs中打开你的解决方案。 ... 3、在配置属性中,找到生成事件,...5、以上4步就已经ok了,此时运行你的程序,会多弹出一个黑色命令行的提示框,用来输出你的打印信息。 OK了!有调试信息啦!!!!!!!!!! ...
  • 7-1 成绩大于等于某值的学生信息输出 (10 分) 输入若干个学生信息(包括学号、姓名和成绩),输入学号为0时输入结束,建立一个单向链表,再输入一个成绩值,将成绩大于等于该值的学生信息输出。 提示: 定义函数...
  • VS2010将标准输出信息输出到output中

    万次阅读 2015-03-07 18:45:36
    在微软的Visual Studio开发环境(如VS2010)下开发C++的Console Application的项目,标准输出信息(如std::cout、printf等)都是输出到控制台的(也就是传说中的黑窗)。有很多人是不喜欢这个黑窗口的,特别是习惯了像...
  • 把cmd控制台的信息输出的文件中

    千次阅读 2018-05-14 09:47:03
    原命令 &gt;文件名 比如:ipconfig /all &gt;H:/fengqing.txt说明:"&gt;"为覆盖原文件原命令 &gt;&...文件名比如:ipconfig /all &...为追加到原文件内容的后面...
  • gcc 编译信息输出到文本文件

    千次阅读 2017-05-26 10:09:47
    gcc --verbose hicv.cpp -o hicv &>/home/ftp/make.log
  • java控制台信息输出到文件(System.out)

    千次阅读 2018-03-15 15:35:33
    当我们需要将控制台信息输出到本地文件的时候,有很多种方法,比如使用FileOutputStream 类等等;如果觉得用输出流比较费事或者对于初学者来说,可以用PrintStream 类来输出到文件;代码如下,很简单方便:[java] ...
  • python logging 把日志信息输出至文件

    千次阅读 2021-12-05 20:51:27
    import logging # 创建logger对象 logger = logging.getLogger('test_logger') # 设置日志等级 logger.setLevel(logging.DEBUG) ...# 向文件输出的日志级别 test_log.setLevel(logging.DEBUG) #.
  • System.out.println(s.Name + “的学生信息为:\n” + “姓名:” + s.Name + “,性别:”+ s.Sex + “,年龄:” + s.Age + “岁” + “,身高:” + s.Heigh +“m” + “,体重:” + s.Weigh + “KG” + “,总分:...
  • 作为一个完美主义者,我在windows系统下编写和调试程序时,都会小心翼翼的搞定每一个warning,使得程序最终编译出来的输出结果非常干净,简简单单的一个success,让人看的神清气爽! 然而在linux下,事情往往不如...
  • 记录运行信息,方便调试② 记录错误信息,方便排查错误③ 存储运行记录,方便后期的数据分析三、日志的主要知识点:三大组件1.Loggers 组件1.1作用:设置日志级别,决定什么日志信息应该被输出、什么日志信息应该...
  • 如何将GDB中需要的调试信息输出到文件 # (gdb) set logging file # (gdb) set logging on # (gdb) thread apply all bt # (gdb) set logging off # (gdb) quit 详细说明: 1、# (gdb) set logging file 设置...
  • Linux -- 自启动程序的调试信息输出

    千次阅读 2020-01-13 10:46:20
    自启动的程序,如果在程序使用 printf、puts等输出函数,在终端是不会有任何输出的,那么对于程序调试阶段的一些debug信息不能直观的看到,下面几种简单的方式,可以尝试一下。 一、如果想要在终端上打印数据,并且...
  • 在使用python的时候方便且高效地管理输出到控制台的信息,如通过一处的设置,屏蔽掉所有的debug信息,只留下正常的info信息,不需要重复地将所有地方的debug信息都手动删除 关于loguru,此处不再赘述,网上被转载地...
  • Java:输出个人信息(类和对象)

    千次阅读 2021-03-09 17:50:57
    //创建对象并调用对象所属的类中创建的属性和方法 System.out.println(“第一个人的信息 “); sc.name=”Wang “; sc.sex=”女 “; sc.age=19; System.out.println(“姓名: “+sc.name); System.out.println(“性别...
  • C#日志信息输出

    千次阅读 2018-02-09 11:20:06
    日志信息输出类:using System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Web; namespace WebApplicationTest { // ...
  • 关于VS中的调试信息输出

    千次阅读 2016-12-09 15:35:42
    原文地址:关于VS中的调试信息输出 有时候一些项目的调试信息不方便输出到界面中,比如ASP.NET或者WPF之类的 可以使用Debug.WriteLine()等方法输出到“输出”窗口,不过“输出”窗口的内容比较多 ...
  • 关于批处理中屏蔽命令行信息输出

    万次阅读 2013-11-19 20:23:36
    在批处理中,有很多方法可以屏蔽命令结果输出,比如@,比如echo off,比如1>nul 2>nul..... 那么这些都有什么区别呢? 【一】首先,我们来看@,这个@能屏蔽命令本身的显示,但是不能屏蔽命令结果的显示,而且@只...
  • 阻止scrapy的debug信息输出到控制台

    千次阅读 2019-02-19 10:19:42
      一般采用该条命令启动 ... 但是,由这条命令启动的爬虫,会将所有爬虫运行中的debug信息及抓取到的信息打印在运行窗口中。很乱,也不方便查询。所以,可使用该命令代替: scrpay crawl spid...
  • 把环境变量中,用户变量和系统变量中的这一句删除就可以
  • ROS调试信息输出

    万次阅读 2018-01-02 14:20:23
    ROS日志级别有五种: DEBUG, INFO, WARN, ERROR,FATAL. rosrun rqt_console rqt_console 可以查看信息输出 rosrun rqt_logger_level rqt_logger_level 可以改变日志输出的级别
  • PyQt5在QTextBrowser中实时输出信息

    千次阅读 多人点赞 2021-09-29 10:12:07
    在主界面Ui_MainWindow类中自定义一个printf... self.textBrowser.append(mes) # 在指定的区域显示提示信息 self.cursot = self.textBrowser.textCursor() self.textBrowser.moveCursor(self.cursot.End) QtWidget
  • SecureCRT没有信息输出,已解决

    千次阅读 2017-09-27 15:22:54
    我的开发板是飞凌嵌入式OK335XD,SecureCRT没有信息输出,重刷了几次系统都不行,上网查了好多方法都试了还是不行,最终竟然是因为串口线是直连的  首先确认你的配置信息和波特率都正确,而且USB转串口线没有问题...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,069,462
精华内容 1,227,784
关键字:

信息输出