使用命令的输出文本作为文件名

使用命令的输出文本作为文件名

curl http://v6.ipv6-test.com/api/myip.php返回我当前的 IPv6 地址。

我想使用这个字符串作为要创建的文件名的一部分,后面跟着脚本运行的时间戳。

你知道该如何做吗?

答案1

要将字符串的结果用作变量,请使用构造$(command)(又名命令替换):

whatevercommand >$(curl http://v6.ipv6-test.com/api/myip.php)-$(date '+%F@%T')

但是,在这种特定情况下,这有点危险,因为如果出现网络问题,您可能会得到一些意外的结果,所以最好单独获取地址:

myip=$(curl http://v6.ipv6-test.com/api/myip.php)
[[ $? -ne 0 ]] && exit 1
whatevercommand >$myip-$(date '+%F@%T')

实际上,您可以使用 获取您的 ipV6 地址ip address show

相关内容