当我尝试运行下面的代码时,shell 正在替换(因为它们未定义为 bash 变量) $4 和 $2 用空格。我的问题是,如何防止 bash 尝试将 awk 的位置参数评估为其变量?我尝试在位置参数周围加上双引号和单引号,但是,这并没有抑制 bash 将它们解释为局部变量而不是字符串。
这是我返回的内容echo "$x$i$y"
date -r /root/capture/capture11.mp4 | awk '{print }' | awk -F":" '/1/ {print }'
代码:
#!/bin/sh
i=$(cat /etc/hour.conf)
x="date -r /root/capture/capture"
y=".mp4 | awk '{print $4}' | awk -F\":\" '/1/ {print $2}'"
$x$i$y
任何帮助将不胜感激!