如何将命令的标准输出和标准输入重定向到一行中的文本文件?

时间:2014-12-27 19:44:57

标签: bash redirect

如何将命令的标准输出和标准输入重定向到一行中的文本文件,并且“ls”等命令的标准输入是否为“ls”,如果我重定向标准输入ls到文件,这些字符会出现在文件中吗?

2 个答案:

答案 0 :(得分:1)

您可以使用script命令

输入

$ script
Script started, file is typescript
sh-4.1$ ls
bar.txt  baz.txt  foo.txt  typescript
sh-4.1$ exit
exit
Script done, file is typescript

输出

$ cat typescript
Script started on Sat Dec 27 13:49:33 2014
sh-4.1$ ls
bar.txt  baz.txt  foo.txt  typescript
sh-4.1$ exit
exit

Script done on Sat Dec 27 13:49:40 2014

explainshell.com - script

答案 1 :(得分:0)

要重定向输入和输出,只需使用两个重定向:

command < inputfile > outputfile

如果命令未从其标准输入读取,则输入重定向将不起作用。例如,ls不使用其输入,它只处理命令行参数。