【问题标题】:Remove whitespaces in shell .SH file删除 shell .SH 文件中的空格
【发布时间】:2013-08-22 03:01:49
【问题描述】:

由于我无法控制的过程,我需要运行多个包含冗长 CURL 命令的 SH 文件。问题是,无论哪个进程创建了这些命令,最后似乎都包含了一行空格。如果我按原样调用它 - 它会失败。如果我实际打开文件并在第一个完整的空行上按退格键并保存文件 - 它可以完美运行。

有什么方法可以将某种命令放入 SH 文件中,以便删除任何不必要的东西?

【问题讨论】:

  • 你能放一些代码来展示你的尝试和期望吗?
  • 无法发布实际代码,但它是一个由 curl 'https.............................' --compressed > /dev/clipboard 组成的长 POST 命令,如果我手动退格最后一行,我希望它可以在剪贴板中使用。跨度>

标签: bash shell curl cygwin


【解决方案1】:

更多信息会有所帮助,但以下方法可能有效: 如果您需要在每个包含 curl 命令的文件中添加内容,您可以尝试将 exit 作为 curl 脚本的最后一行(也取决于您如何调用“curl 文件”

exit

如果您可以针对具有空行的文件运行单独的脚本,也许可以将空行删除?

sed -i s/^\s$// $fileWithLineOfSpaces

编辑: 或者(经过考虑),也许只是删除文件的最后一行......

sed -i '$d' $file

【讨论】:

  • 这可能有用,请原谅我,但我是新手。我到底应该输入什么来删除最后一行?说,我的文件是 cygwin64/bin/test.sh
  • 只需将最后一行代码中的“$file”替换为您的文件即可。示例:sed -i '$d' cygwin64/bin/test.sh
猜你喜欢
  • 1970-01-01
  • 2015-10-23
  • 2016-06-04
  • 1970-01-01
  • 1970-01-01
  • 2013-01-04
  • 2019-05-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多