如何让cygpath从文件中获取输入
How to get cygpath to take input from file
对于这个问题,我提前表示歉意,但我现在真的很困惑,我只是祈祷有人能帮助我。
我有一系列 c 文件,我需要在大约 100 个子目录中一次检查一个文件,每个文件名为 balance.d、balanced.c 或 balancer.c。我已经使用 find . -name "balance*"
获得了它们的列表,我可以使用 sed -n [NUM]p
选择其中一个。这是一个使用 Cygwin 的 Windows 环境,这些目录都是通过 Dropbox 与其他人共享的。路径经常涉及空格,我 运行 遇到了麻烦。
我知道 cygpath -sw 会给我没有空格的路径。我的最终目标是能够抓取每个文件,一次一个 gcc path/to/file.c -o ./a.exe
现在,我有
cygpath -sw $(echo find . -name "balance*" | sed -n 2p | awk '{gsub(/ /,"\ ")}8')
...但是 cygpath 不会让我过去的空间。它给我一个错误
awk: cmd. line:1: warning: escape sequence `\ ' treated as plain ` '
在您的命令替换周围加上引号,否则它的结果将接受 work splitting。
另外,您对 AWK 部分所做的操作也不需要。
您正在使用以下参数调用 echo
命令:
[find] [.] [-name] [balance*]
你想让它调用什么查找命令:
cygpath -sw "$(find . -name "balance*" | sed -n 2p)"
对于这个问题,我提前表示歉意,但我现在真的很困惑,我只是祈祷有人能帮助我。
我有一系列 c 文件,我需要在大约 100 个子目录中一次检查一个文件,每个文件名为 balance.d、balanced.c 或 balancer.c。我已经使用 find . -name "balance*"
获得了它们的列表,我可以使用 sed -n [NUM]p
选择其中一个。这是一个使用 Cygwin 的 Windows 环境,这些目录都是通过 Dropbox 与其他人共享的。路径经常涉及空格,我 运行 遇到了麻烦。
我知道 cygpath -sw 会给我没有空格的路径。我的最终目标是能够抓取每个文件,一次一个 gcc path/to/file.c -o ./a.exe
现在,我有
cygpath -sw $(echo find . -name "balance*" | sed -n 2p | awk '{gsub(/ /,"\ ")}8')
...但是 cygpath 不会让我过去的空间。它给我一个错误
awk: cmd. line:1: warning: escape sequence `\ ' treated as plain ` '
在您的命令替换周围加上引号,否则它的结果将接受 work splitting。
另外,您对 AWK 部分所做的操作也不需要。
您正在使用以下参数调用 echo
命令:
[find] [.] [-name] [balance*]
你想让它调用什么查找命令:
cygpath -sw "$(find . -name "balance*" | sed -n 2p)"