【问题标题】:How do I run a gawk file with spaces in the path name?如何运行路径名中带有空格的 gawk 文件?
【发布时间】:2014-06-18 18:25:24
【问题描述】:

我正在尝试在 awk 脚本中运行以下行,但出现错误。我认为错误是因为文件名中有空格。如何在不更改路径名的情况下调用文件(即重命名文件/路径)?代码包含在 BEGIN{} 块中。

INSTALLATION_LOCATION_GAWK = "L:/CPU_Analysis/Sanity/CPUAnalysisApp/cpu_analysis_application/"
DATA_SUMMARY_LOCATION_GAWK = "C:/Program Files/CPU Analysis/data/data_summary.csv"
....
command = ("gawk -v version=" dataArray[1] " -v date=" dataArray[2] " -v platform=" dataArray[3] " -f ") (INSTALLATION_LOCATION_GAWK "generateSanity_Scripts/removeData.awk ") DATA_SUMMARY_LOCATION_GAWK
system(command)

更新:我还遇到了由于 Windows 限制,您无法在 C:\Program Files 中复制/保存/编辑文件的问题。我通过将我的项目移动到 C:\My Programs 解决了这个问题。

【问题讨论】:

  • 最好不要让我们猜测您遇到了什么错误...
  • @twalberg - 好点。我将确保在以后的问题中包含错误。我得到的错误是无效的文件路径。

标签: file command-line awk space gawk


【解决方案1】:

认为这将是在命令字符串中提供引号的情况:

command = "gawk"
command = command " -v version=\"" dataArray[1] "\""
command = command " -v date=\"" dataArray[2] "\""
command = command " -v platform=\"" dataArray[3] "\""
command = command " -f \"" INSTALLATION_LOCATION_GAWK "generateSanity_Scripts/removeData.awk\""
command = command " \"" DATA_SUMMARY_LOCATION_GAWK "\""

【讨论】:

  • 我把命令全部放在一行上,但这是包含引号的情况。谢谢!
猜你喜欢
  • 1970-01-01
  • 2021-11-22
  • 2013-04-24
  • 1970-01-01
  • 1970-01-01
  • 2016-01-09
  • 1970-01-01
  • 2015-07-26
  • 2014-09-07
相关资源
最近更新 更多