linux - 变量显示在终端中而不是 append 到 Bash 上的文件中

标签 linux bash variables syntax append

我正在做一个涉及将变量 append 到文件的作业。但输出是在终端中输出而不是在文件中输出。你能帮帮我吗?

这是代码


#!/bin/bash

cdate=$ date | awk '{print $2" "$3" "$4}'
IP_r=$ $cdate ifconfig ens33 | grep 'inet addr' | cut -d: -f2 | awk '{print $1}'

echo $IP_r >> /home/admin17/ip_address.log

这是输出

24 Dec 23:52:25
192.168.180.131
admin17@SERVERAS:~$

基本上我想要文件/home/admin17/ip_address.log 中的日期和 IP 地址

谢谢

最佳答案

试试这个:

cdate="$(date | awk '{print $2" "$3" "$4}')"
IP_r="$(ifconfig ens33 | grep 'inet addr' | cut -d: -f2 | awk '{print $1}')"

echo $cdate $IP_r >> "/home/admin17/ip_address.log"`

如果你想在不同的行上输出,那么只需使用\n

echo -e $cdate\n$IP_r >> "/home/admin17/ip_address.log"

Output from ~/ip_address.log:

 cat ~/ip_address.log
 25 Dec 01:08:54
 192.168.1.104

关于linux - 变量显示在终端中而不是 append 到 Bash 上的文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53918216/

相关文章:

linux - 解析命令输出

c++ - 在没有 GUI 的情况下使用 OpenCV 捕获图像(在 Linux 控制台上)

linux - 如何使用字符串替换重命名Linux目录中的所有文件?

bash - Grep 匹配的行包括下面和另一个匹配的行包括上面

python - 优化 shell 脚本 (bash) 以提高性能

Java 基类引用变量

c++ - 这个小型数据/命令广播应用程序的建议网络拓扑?

bash - 确定终端格式化输出的能力?

Python检查变量是否在列表中重复

variables - (如何)在 Azure DevOps 中对变量组进行版本控制?