linux - 这里文件 : no parameter expansion

标签 linux bash shell

有什么办法可以关闭这里文档中的参数扩展吗?

shell 命令:

$ cat > analyze.sh <<EOF    
awk -F: '{print $NF}' asr.log | sort > tmp  
awk -F '(' '{print $NF}' asr.log | awk '{print $1}' |  sort > tmp2
EOF

我在 analyze.sh 中得到了这个:

awk -F: '{print }' asr.log | sort > tmp
awk -F '(' '{print }' asr.log | awk '{print }' |  sort > tmp2

最佳答案

您可以引用 EOF 来禁用扩展:

cat > analyze.sh <<'EOF'
awk -F: '{print $NF}' asr.log | sort > tmp  
awk -F '(' '{print $NF}' asr.log | awk '{print $1}' |  sort > tmp2
EOF

关于linux - 这里文件 : no parameter expansion,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31227601/

相关文章:

Linux 查找目录并只打印名称

linux - 弄错路径,失败并返回 "No rule to make target"

bash - 来自 bash 变量的 Linux whiptail/dialog 参数错误

bash - 如何在 bash shell 的 if 语句中使用 ls 命令的输出

arrays - 从数组中删除最后一个元素

linux - 为什么这个 cron 作业每分钟运行一次?

python - 如何在不同的目录中执行 python 脚本?

linux - 列出按时间排序的文件 key 对

ruby-on-rails - rails openssl 代码和终端加密的不同结果

linux - Bash - if 语句中的错误代码不起作用