如何将命令输出回显到 Linux 中现有行的末尾?
How to echo command output to end of existing line in Linux?
我正在尝试自动构建配置文件,我需要的大部分工作都可以通过直接回显完成 'text here' >> myfile.conf
我遇到的问题是将命令的输出附加到文件的最后一行。
我最后的工作命令是echo 'masternodeprivatekey=' >> myfile.conf
我的下一个命令是./wallet-cli masternode genkey &>> myfile.conf
我需要将生成的 masternode 密钥包含在与 masternodeprivatekey= 相同的行中,以便该行最终如下所示 -
masternodeprivatekey=abcd13def456ghi789
这可以做到吗?
我看到有人建议将 /c 添加到 echo 命令的末尾或将 -n 添加到行的末尾但是这些不起作用,他们只是将这些字符添加到末尾并且仍然 post下一行./wallet-cli masternode genkey &>> myfile.conf
的输出。
是否可以如我所愿?我很确定我可以将输出回显到两个不同的临时文件,然后将它们合并,但是有更简单的方法吗?
您可以使用带选项 -n 的回显,它不会输出结尾的换行符
echo -n 'masternodeprivatekey=' >> myfile.conf
在 sed 中,你可以用 $
来定位最后一行
echo 'masternodeprivatekey=' >> myfile.conf
sed -i -r "$ s/(.*)/$(($RANDOM%100000))/" myfile.con
检查您的 sed 是否有 -i 和 -r 参数。这适用于 GNU-sed.
因为我不知道 ./wallet-cli,所以我在 $(...) 中使用了其他东西来执行生成输出的命令。所以对你来说,可能是
sed -i -r "$ s/(.*)/$(./wallet-cli masternode genkey)" myfile.con
既然你之前就知道等号后面要加东西,那你干嘛不呢:
echo "masternodeprivatekey=$(./wallet-cli masternode genkey)" >> myfile.con
根据 Mark Plotnick 的建议,使用 printf 代替 echo 效果很好。
我正在尝试自动构建配置文件,我需要的大部分工作都可以通过直接回显完成 'text here' >> myfile.conf
我遇到的问题是将命令的输出附加到文件的最后一行。
我最后的工作命令是echo 'masternodeprivatekey=' >> myfile.conf
我的下一个命令是./wallet-cli masternode genkey &>> myfile.conf
我需要将生成的 masternode 密钥包含在与 masternodeprivatekey= 相同的行中,以便该行最终如下所示 - masternodeprivatekey=abcd13def456ghi789
这可以做到吗?
我看到有人建议将 /c 添加到 echo 命令的末尾或将 -n 添加到行的末尾但是这些不起作用,他们只是将这些字符添加到末尾并且仍然 post下一行./wallet-cli masternode genkey &>> myfile.conf
的输出。
是否可以如我所愿?我很确定我可以将输出回显到两个不同的临时文件,然后将它们合并,但是有更简单的方法吗?
您可以使用带选项 -n 的回显,它不会输出结尾的换行符
echo -n 'masternodeprivatekey=' >> myfile.conf
在 sed 中,你可以用 $
来定位最后一行echo 'masternodeprivatekey=' >> myfile.conf
sed -i -r "$ s/(.*)/$(($RANDOM%100000))/" myfile.con
检查您的 sed 是否有 -i 和 -r 参数。这适用于 GNU-sed.
因为我不知道 ./wallet-cli,所以我在 $(...) 中使用了其他东西来执行生成输出的命令。所以对你来说,可能是
sed -i -r "$ s/(.*)/$(./wallet-cli masternode genkey)" myfile.con
既然你之前就知道等号后面要加东西,那你干嘛不呢:
echo "masternodeprivatekey=$(./wallet-cli masternode genkey)" >> myfile.con
根据 Mark Plotnick 的建议,使用 printf 代替 echo 效果很好。