什么是=>在我的bash脚本

时间:2015-11-05 05:04:01

标签: bash

我在bash脚本中有这一行,我无法弄清楚" =>"手段?我不认为它意味着等于或大于但可能确实如此。思考?

"echo '\"postgres\" => { \"archive_timeout\" => 300, \"backup\" => 1, \"base_backup_interval\" => 3600, \"restore\" => 1 },' >> /tmp/user_data.config\n",

2 个答案:

答案 0 :(得分:2)

它没有任何意义,因为它在一个字符串中。考虑:

$ echo 'foo'
foo

$ echo 'foo => bar'
foo => bar

=>没有任何意义;它只是echo写入其输出的字符串的一部分。

对于代码,echo命令及其字符串参数后跟>> /tmp/user_data.config,这意味着输出将附加到user_data.config文件。像这样:

$ touch /tmp/out.txt
$ echo 'foo => bar' >> /tmp/out.txt
$ echo 'baz => qux' >> /tmp/out.txt
$ cat /tmp/out.txt
foo => bar
baz => qux

答案 1 :(得分:0)

=>是正在回声的字符串的一部分。尝试在BASH中运行命令(开头没有",最后没有\n",),你会看到它只是回显字符串并将其附加到/tmp/user_data.config

$ echo '\"postgres\" => { \"archive_timeout\" => 300, \"backup\" => 1, \"base_backup_interval\" => 3600, \"restore\" => 1 },' >> /tmp/user_data.config
$ cat /tmp/user_data.config
\"postgres\" => { \"archive_timeout\" => 300, \"backup\" => 1, \"base_backup_interval\" => 3600, \"restore\" => 1 },