2013-07-09 63 views
3

我正在尝试将bash脚本的整个输出保存到文件中。我现在有一个参数(IP地址)在代码的开头是这样的:如何将bash脚本的整个输出保存到文件

#!/bin/bash 

USAGE="Usage: $0 [<IP address>]" 

if [ "$#" == "0" ]; then 
     echo "$USAGE" 
     exit 1 
fi 
ip_addr=$1 

我希望做的是添加一个名为“输出”另一种说法,脚本的整个输出将存到。我知道我可以运行myscript.sh | tee textfile.txt,但我想让脚本更容易为其他人运行。

由于提前,

hcaw

回答

5

用法消息后,添加以下行:

exec > "$2" 

这将重定向标准输出为脚本的其余命名的文件第二个参数。

然后运行使用

myscript 192.0.2.42 output.txt 
+0

@hcaw您可以硬代码的输出文件的名称(如你的问题“TextFile.txt的”),这样用户就不需要给一个额外的命令行论据。 –

+0

@chepner非常感谢,这解决了我的问题。 – hcaw

相关问题