linux - 将输出重定向到命令结果给出的文件名

标签 linux bash shell

假设我有一个文件格式,我想将数据库备份保存为给定的文件格式:

echo "~/backups/$(date +'%Y-%m-%d_%H-%M-%S').sql"

现在我如何指定这个结果作为 shell 中输出的文件名?

mysqldump my_db > ....?

顺便说一句: shell 将嵌套 echo 命令的结果解释为可执行命令/文件。所以    看来:

 mysqldump my_db > $(echo "something")

不起作用。相反,shell 会查找名为 something 的文件并尝试执行它?

最佳答案

无需使用嵌套回显。你可以避免它:

mysqldump my_db > ~/backups/$(date +'%Y-%m-%d_%H-%M-%S').sql

关于linux - 将输出重定向到命令结果给出的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15737881/

相关文章:

perl - 只需要在一个文件中匹配一个模式出现一次

更改环境变量的 Linux shell 脚本

bash - 如何在现有txt文件中添加新行

regex - 为什么这个shell脚本不能运行?

ubuntu - bash_completion 不工作,找不到源命令

mysql - 带有sql server的bash中的坏循环变量

shell - 如何插入作为参数发送的字符串?

c++ - 无法在 Linux 上找到 SDL2_gfx 库

linux - 在linux中使用终端获取.raw音频文件的文件信息

c - 从 C 字符串构建参数列表