Linux系统中存储了很多重要的值,我们称之为“变量”,但实际上变量有几种类型,还有一些有趣的命令可以帮助你使用它们。我们查看了环境变量及其定义位置。下面小编就给大家介绍下shell输入输出重定向的方法,希望对大家有所帮助。大多数UNIX系统命令接受来自终端的输入并将输出发送回终端。命令通常从称为标准输入的东西读取输入,默认情况下它恰好是您的终端。同样,命令通常将其输出写入标准输出,默认情况下这也是您的终端。重定向命令列表如下:命令说明command>file将输出重定向到file。command>文件将输出重定向到附加的文件。n>file将文件描述符为n的文件重定向到file。n>>file将文件描述符为n的文件以追加方式重定向到file。n>&m合并输出文件m和n。n<&m合并输入文件m和n。<<标签将开始标签和结束标签之间的内容作为输入。请注意,文件描述符0通常是标准输入(STDIN),1是标准输出(STDOUT),2是标准错误输出(STDERR)。输出重定向重定向一般是通过在命令之间插入特定的符号来实现的。特别地,这些符号的语法如下:command1>file1上面的命令执行command1并将输出存储在file1中。请注意,file1中的任何现有内容都将被新内容替换。如果要在文件末尾追加新内容,请使用>>运算符。该示例执行以下who命令,该命令将命令的完整输出重定向到用户文件(users)中:$who>users执行后,终端上不会输出任何信息,因为输出已取自默认标准输出设备(终端)重定向到指定的文件。可以使用cat命令查看文件内容:$catusers_mbsetupuserconsoleOct3117:35tianqixinconsoleOct3117:35tianqixinttys000Dec111:33输出重定向会覆盖文件内容,见以??下示例:$echo《好旭Linux教程网:www.liangxu.ne》>users$catusers良旭Linux教程网:www.liangxu.ne$如果不想覆盖文件内容,可以用>>追加文件末尾,例如:$echo"良旭Linux教程网:www.liangxu.net">>users$cat用户良旭Linux教程网:www.liangxu.ne良旭Linux教程网:www.liangxu.ne$输入redirection和输出重定向一样,Unix命令也可以从文件中获取输入,语法为:command1),输入重定向是小于号(<)。例子继续上面的例子,我们需要统计users文件的行数,执行如下命令:$wc-lusers2users也可以将输入重定向到users文件:$wc-l?users2注意:以上两个例子的结果不同:第一个例子,会输出文件名;第二个不会,因为它只知道从标准输入读取。command1outfile同时替换输入和输出,执行command1,从文件infile中读取内容,然后将输出写入outfile。重定向深入讲解一般情况下,每个Unix/Linux命令在运行时都会打开三个文件:标准输入文件(stdin):stdin的文件描述符为0,Unix程序默认从stdin读取数据。标准输出文件(stdout):stdout的文件描述符为1,Unix程序默认向stdout输出数据。标准错误文件(stderr):stderr的文件描述符为2,Unix程序会将错误信息写入stderr流。默认情况下,command>file将stdout重定向到file,commandfile如果你想stderr追加到文件末尾,你可以这样写:$command2>>file2表示标准错误文件(标准错误)。如果你想将stdout和stderr都重定向到文件,你可以这样写:$command>file2>&1或$command>>file2>&1如果你想同时重定向stdin和stdout,你可以这样写:$commandfile2command命令将stdin重定向到file1,将stdout重定向到file2。HereDocumentHereDocument是Shell中的一种特殊的重定向方法,用于将输入重定向到交互式shell脚本或程序。它的基本形式如下:command</dev/null/dev/null是一个特殊的文件,写入它会被丢弃;如果您尝试从中读取,您将一无所获。但是/dev/null文件非常有用,将命令的输出重定向到它会产生“禁用输出”的效果。如果想屏蔽stdout和stderr,可以这样写:$command>/dev/null2>&1注意:0是标准输入(STDIN),1是标准输出(STDOUT),2是标准错误输出(标准错误)。这里的2和>之间不能有空格,只有当2>为1时才表示错误输出。以上就是良虚教程网为各位小伙伴分享的Shell输入输出重定向方法。想了解更多Linux知识,记得关注公众号“良序Linux”,或扫描下方二维码关注,更多干货等着你!以上就是良序教程网为各位小伙伴们分享的Linux相关知识。