首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从csh脚本重定向stdout和stderr

在csh脚本中重定向stdout(标准输出)和stderr(标准错误),您可以使用以下方法:

  1. 将stdout和stderr都重定向到文件:
代码语言:javascript
复制
your_command >& output_file.txt

这将把your_command的stdout和stderr都重定向到名为output_file.txt的文件中。

  1. 将stdout重定向到文件,同时stderr保持不变:
代码语言:javascript
复制
your_command > output_file.txt

这将把your_command的stdout重定向到名为output_file.txt的文件中,而stderr仍然会显示在屏幕上。

  1. 将stderr重定向到文件,同时stdout保持不变:
代码语言:javascript
复制
your_command >& stderr_file.txt

这将把your_command的stderr重定向到名为stderr_file.txt的文件中,而stdout仍然会显示在屏幕上。

  1. 将stdout和stderr都重定向到不同的文件:
代码语言:javascript
复制
your_command > output_file.txt >& stderr_file.txt

这将把your_command的stdout重定向到名为output_file.txt的文件中,同时将stderr重定向到名为stderr_file.txt的文件中。

  1. 将stdout和stderr都重定向到同一个文件,但在文件中分别显示:
代码语言:javascript
复制
your_command >& output_file.txt |& grep -v '^$'

这将把your_command的stdout和stderr都重定向到名为output_file.txt的文件中,同时在文件中分别显示它们。grep -v '^$'命令用于删除空行,以便更清楚地显示stdout和stderr。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Linux如何在Bash中将标准错误stderr重定向到stdout标准输出

默认情况下,输入流和错误流都打印在屏幕上。 重定向标准输出流 重定向是一种从程序捕获输出并将其作为输入发送到另一个程序或文件的方法。 流可以使用n>运算符重定向,其中n是文件描述符。...command > file command 1> file 要重定向标准错误流(stderr),请使用2>运算符: command 2> file 你可以将stderr和stdout都写到两个单独的文件中...要将stderr重定向到stdout并将错误消息发送到与标准输出相同的文件,请使用以下命令: command > file 2>&1 > file将stdout重定向到file,2>&1将stderr重定向到...重定向的顺序很重要。例如,以下示例仅将stdout重定向到file。以下这种情况是因为stderr重定向到stdout,然后stdout重定向到了file。...要重定向stderr和stdout,请使用2>&1或&>构造。 如果你有任何问题或反馈,请随时发表评论。

3.7K20

Python重定向标准输入、标准输出和标

标准输出和标准错误(通常缩写为 stdout 和 stderr)是建立在每个UNIX系统内的管道(pipe)。...象 stdout,stderr 并不为你增加回车换行符;如果需要,要自已加上。 stdout 和 stderr 都是类文件对象,就象我们在提取输入源中所讨论的一样,但它们都是只写的。...在我们将 stdout 搞乱之前,让我们把它设回原来的方式。 关闭日志文件。 重定向 stderr 完全以相同的方式进行,用 sys.stderr 代替 sys.stdout。 例 5.34....我们没有指定一个模块(象 binary.xml),而是指定“-”,这会让我们的脚本从标准输入而不是从磁盘上的一个特别文件中装入语法。(在下个例子中有更多关于它是如何发生的内容。)...那么当语法文件是“-”时我们的脚本是如何中从标准输入读入的呢?没什么神秘的,就是编码。 例 5.36.

4K10
  • Shell脚本攻略04-玩转文件描述符及重定向

    最常见的文件描述符是stdin、 stdout和stderr。 我们甚至可以将某个文件描述符的内容重定向到另一个文件描述符中。 下面给出一些对文件描述符进行操作和重定向的例子。...理论知识 在编写脚本的时候会频繁使用标准输入(stdin)、标准输出(stdout)和标准错误(stderr)。 通过内容过滤将输出重定向到文件是我们平日里的基本任务之一。...和stdout重定向到同一个文件中 还可以利用下面这个更好的方法将stderr转换成stdout,使得stderr和stdout 都被重定向到同一个文件中 $ cmd >output.txt 2...stdin 当对如果对stderr或stdout进行重定向,被重定向的文本会传入文件。...类似地,使用 /dev/stderr代表标准错误, /dev/stdout代表标准输出。 这些特殊的设备文件分别对应stdin、 stderr和stdout。

    87810

    Shell 输入输出重定向

    ---- 重定向命令 ? 需要注意的是文件描述符: 0 通常是标准输入(STDIN), 1 是标准输出(STDOUT), 2 是标准错误输出(STDERR)。...语法 和输出重定向一样,Unix 命令也可以从文件获取输入,语法为: command1 < file1 这样,本来需要从键盘获取输入的命令会转移到文件读取内容。...---- 如果希望将 stdout 和 stderr 合并后重定向到 file,可以这样写: $ command > file 2>&1 或者 $ command >> file 2>&1 ---- 如果希望对...stdin 和 stdout 都重定向,可以这样写: $ command file2 command 命令将 stdin 重定向到 file1,将 stdout 重定向到 file2...---- 如果希望屏蔽 stdout 和 stderr,可以这样写: $ command > /dev/null 2>&1 注意:0 是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出

    1.1K40

    UNIX 系统Shell 输入输出重定向命令

    需要注意的是文件描述符 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。 ---- 输出重定向 重定向一般通过在命令间插入特定的符号来实现。...和输出重定向一样,Unix 命令也可以从文件获取输入,语法为: command1 < file1 这样,本来需要从键盘获取输入的命令会转移到文件读取内容。...如果希望将 stdout 和 stderr 合并后重定向到 file,可以这样写: $ command > file 2>&1 或者 $ command >> file 2>&1 如果希望对 stdin...和 stdout 都重定向,可以这样写: $ command file2 command 命令将 stdin 重定向到 file1,将 stdout 重定向到 file2。...如果希望屏蔽 stdout 和 stderr,可以这样写: $ command > /dev/null 2>&1 注意:0 是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(

    1.1K30

    将stdout、stderr导入到指定文件

    在编写程序中,经常用到stdout、stderr作为输出,通常stdout用于输出程序运行正常时的信息,stderr用于输出程序出错时的信息。...  执行 test ,屏幕上打印stdout、stderr的信息   This is stdout....   ...This is stderr...   2、导入stdout的结果到指定文件    在csh、sh下,使用”>”将stdout的结果导入到指定文件,本例中执行   ....3、导入stderr到指定文件   在 csh 中,用 ">" 将 stdout 导向,用 ">&" 则能将 stdout 与 stderr 一起导向。可是不能只单独把 stderr 转向。.../test";而这个 subshell 的 stdout 则被转向到out.log,同时这个 subshell 的 stdout 和 stderr 则都被转向到 err.log,但是因为 stdout

    1.6K30

    终极Shell——Zsh

    平心而论,Bash 确实比 Csh 之流的好用多了。不过 Bash 也有很多地方不尽人意,像自动补全的功能不够强大,定位较长路径不够方便等。 后来我使用 Zsh。...Zsh 兼容大多数主流 Shell,像 Bash、Csh 等。...zstyle ‘:completion: :approximate: ‘ max-errors 1 numeric 当然可以把容错字数改大一些,不过太大了也没有意义了 随便输点什么,就可以匹配所有的,和没有一样...强大的重定向功能 同时重定向 stdout 和 stderr 到 file: command |& >file 同时重定向到多个文件: command >file.1 >file.2 比如装系统的时候...tgz’ + -g ‘(-/)’ tar zxvf 过滤候选项 tar zxvf [tab] 候选菜单中只出现扩展名为 .tar.gz .gz .tgz 的文件不过这个功能比较复杂,容易引起混乱,通常需要脚本配合

    84520

    《Linux命令行与shell脚本编程大全》第十五章 呈现数据

    15.1 理解输入和输出 现在知道两种显示脚本输出的方法 1)在显示器屏幕上显示 2)将输出文件重定向到文件中 15.1.1 标准文件描述符 Linux系统将每个对象当做文件处理。...shell或shell中运行的程序和脚本出错时生成的错误消息都会发送到这个位置。 默认情况下STROUT和STDERR指向同样的地方(显示器)。但是STDERR不会随着STDOUT重定向而发生改变。...$ls -al test1 test2 test3 badfile &> AllLog.txt 这样表示将STDOUT和STDERR重定向到同一个文件AllLog.txt中了。...15.2 在脚本中重定向输出 有两种方法: 1)临时重定向行输出 2)永久重定向脚本中的所有命令 15.2.1 临时重定向 可以单独将一行重定向到STDERR。...如何关闭: 将要关闭的文件描述符重定向到特殊符号 &- 一旦关闭后,就不能在脚本中向他写入数据,否则shell会产生错误信息。 例子:   1 #!

    1.4K60

    解释型语言-shell

    一、分类 Unix/Linux上常见的Shell脚本解释器有bash、sh、csh、ksh等。 bash:是Linux标准默认的shell,内部命令一共有40个。.../test.sh #执行脚本 实例二 脚本使用read命令从stdin(标准输入)获取输入并赋值给PERSON变量,最后在stdout(标准输出)上输出 #!...对于 Shell 脚本,就是这些脚本所在的进程ID。 $* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。...输出重定向: 输出到显示器的内容被重定向到文件:$ command > file 在显示器上不会看到任何输出:$ who > users 不希望文件内容被覆盖,可以使用>>追加到文件末尾 $ echo...> /dev/null 如果希望屏蔽 stdout 和 stderr,可以这样写: $ command > /dev/null 2>&1 参考文献:http://www.w3cschool.cc/linux

    1.5K31

    管道与重定向、文件查找-Linux每日一练(7)

    Unix 系统中,每个进程都有 STDIN 、 STDOUT 和 STDERR 这 3 种标准 I/O 。...标准输入文件(stdin):stdin 的文件描述符为 0,Unix 程序默认从 stdin 读取数据。...你肯定也用到过,只不过不一定理解是什么含义,例如在定时任务脚本结尾加上 >/dev/null 2>&1 ,让所有的输出流(包括错误的和正确的)都定向到空设备丢弃。...2>&1 合并正确和错误输出流,如果是打印到屏幕上的脚本,必须要加 cat /dev/null > filename 快速清理文件内容 xxx.sh >/dev/null 2>&1 丢球所有输出流(包括错误的和正确的...题目二:如何安装和卸载 rpm 包? 题目三:如何使用 crontab 创建一个定时任务,每天晚上 3 点 10 分执行一次,并忽略输出?

    1.2K31

    研发:重新认识shell io 重定向

    默认情况下始终有3个"文件"处于打开状态, stdin(键盘), stdout(屏幕), 和stderr(错误消息输出到屏幕上). 这3个文件和其他打开的文件都可以被重定向....对于重定向简单的解释就是捕捉一个文件, 命令, 程序, 脚本, 或者是脚本中的代码块的输出, 然后将这些输出作为输入发送到另一个文件, 命令, 程序, 或脚本中....每个打开的文件都会㹿分配一个文件描述符. stdin, stdout, 和stderr的文件描述符分别是0, 1,和 2. 除了这3个文件, 对于其他那些需要打开的文件, 保留了文件描述符3到9....在某些情况下, 将这些额外的文件描述符分配给stdin, stdout, 或stderr作为临时的剧本链接是非常有用的. 在经过复杂的重定向和刷新之后需要把它们恢复成正常状态 ? ? ? ?

    65430

    Shell中错误处理的探索

    写这篇文章主要是因为我在写一些维护脚本的时候正好遇到了需求,所以就尝试了一下。 起:错误和异常 错误和异常主要的区别在于是否需要脚本的编写者进行处理。...此时 变量$_1:指令输出的stderr(之前保存在stdout之中) stderr:"_try_out='指令输出的stdout' _try_return=指令返回码 " 之后和之前类似的语句echo...重定向到了stdout。...最主要的问题是这个方法给脚本带来了额外的开销,流重定向的影响倒是不大,关键是echo的指令替换和最后的eval。...不过一来__try的使用次数通常有限,二来提供完整的stdout和stderr在编码时会方便许多,而且其实对脚本来说一两毫秒的性能损耗也并不算大,因此我还是挺乐意使用这个新的方式的。 $ .

    2.8K10

    【Linux基础IO】深入Linux文件描述符与重定向:解锁高效IO操作的秘密

    掌握这些概念,将使你能够更深入地理解Linux如何管理文件、进程间的通信以及数据的流动,从而编写出更加高效、健壮的应用程序,同时在系统管理和脚本编写中也能游刃有余 文件描述符(fd),简而言之,是Linux...)和标准错误(STDERR_FILENO)所以我们打开一个文件,它的文件描述符是从3开始 0,1,2对应的物理设备一般是:键盘,显示器,显示器 标准输入 键盘 stdin 0 标准输出 显示器 stdout...,但是他直接从文件里面读取了,那么到底什么是重定向,我们来画图了解一下 重定向 2> 2>实际上指的是将标准错误(stderr,文件描述符为2)重定向到指定的文件或位置。...默认情况下,命令的标准输出(stdout,文件描述符为1)和标准错误(stderr,文件描述符为2)都会被打印到终端上。...通过重定向,我们不仅可以实现复杂的自动化任务,还能在脚本编写和日常操作中极大地提升效率 然而,学习之路永无止境。Linux的IO系统博大精深,文件描述符和重定向只是其中的冰山一角。

    19810
    领券