linux - 如何使用shell脚本附加一些具有变量名的行
问题描述
我想使用 tee 命令使用 bash 脚本创建/追加一个文件,但是我想在具有变量名的文件中添加/追加的行。当我执行该脚本时,它将显示空白代替变量名,但我想要那个变量名在那儿。我的脚本是 append.sh 具有以下代码
#!/bin/bash
tee config.json <<EOL
"metrics": {
"append_dimensions": {
"AutoScalingGroupName": "${aws:AutoScalingGroupName}",
"ImageId": "${aws:ImageId}",
"InstanceId": "${aws:InstanceId}",
"InstanceType": "${aws:InstanceType}"
},
EOL
现在,当我执行命令“cat config.json”时,它显示空白代替变量名 (${aws:AutoScalingGroupName}) 等。
`"metrics": {
"append_dimensions": {
"AutoScalingGroupName": "",
"ImageId": "",
"InstanceId": "",
"InstanceType": ""
},`
但我想要所有的行,就像我在脚本中写的那样请告诉我我是如何实现这一点的。
解决方案
您需要EOL
在它介绍的此处文档中引用以禁用扩展。喜欢:
tee config.json <<'EOL'
"metrics": {
"append_dimensions": {
"AutoScalingGroupName": "**${aws:AutoScalingGroupName}**",
"ImageId": "**${aws:ImageId}**",
"InstanceId": "**${aws:InstanceId}**",
"InstanceType": "**${aws:InstanceType}**"
},
EOL
推荐阅读
- r - Web将表格刮入R
- react-native-navigation - 按下按钮时打开 SideMenu
- php - gRPC 和 XAMPP 不工作
- angularjs - Angularjs实现谷歌地图没有被渲染
- swt - 使用 ScrollGraphicalViewer 滚动时出现重绘问题
- mysql - Laravel morphedByMany where 条件和计数
- matlab - 如何将一列字符插入矩阵?
- azure - 查找哪个 Web 作业正在记录应用程序日志中的内容
- c# - ASP.NET Core 2 - Angular 和 JWT 身份验证
- vb.net - VB.net 使用世界模板创建word文档