使用Windows机器上的bash移动具有特定名称的文本文件

时间:2016-01-29 15:56:24

标签: bash

我正尝试在bash的Windows机器上使用cygwin将具有特定名称的所有文本文件从一个目录移动到另一个目录。代码如下,但我不知道如何在bash中引用Windows路径。谢谢你:)。

for i in "C:\Users\cmccabe\Desktop\annovar"; do
  mv $i"\"*multianno.txt "C:\Users\cmccabe\Desktop\all""\"basename $i`multianno.txt
done

mv: cannot stat ‘C:\\Users\\cmccabe\\Desktop\\annovar\\*multianno.txt’: No such file or directory

1 个答案:

答案 0 :(得分:2)

您应该使用cygpath,这是一个用于将窗口转换为/从cygwin路径转换窗口的cygwin实用程序。

如果没有其他参数,它会将给定的Windows路径转换为它的cygwin等价物,这就是你想要的:

mv $(cygpath "windows_src") $(cygpath "windows_dst")

我不确定它是否适用于包含jokers的路径,但看起来确实如此:

$ cygpath "C:\path\*a*"
/cygdrive/c/path/*a*