Cygwin:cygstart *没有打开所有文件

时间:2015-02-04 05:17:43

标签: bash file cygwin

我真的不喜欢Cygwin的一件事是我必须逐个打开文件。我设置了打开文件的别名(而不是cygstart,我使用open)。但是,每次我想打开多个文件时,比如一个pdf,它只会打开目录中的第一个文件。这是我输入的内容:

open *
open *.pdf
cygstart *
cygstart *.pdf

这些都不起作用。但是,当我执行mv *cp *之类的操作时,它会起作用。任何有关这方面的帮助将不胜感激!提前谢谢。

1 个答案:

答案 0 :(得分:1)

*将扩展到当前目录中的所有文件。

例如:

$ ls
1.pdf  2.pdf  3.pdf

在这种情况下,*会扩展为1.pdf 2.pdf 3.pdf。如果将此参数作为参数提供给其他命令,则会看到3个单独的参数。许多程序都可以处理这个问题,但显然opencygstart只能处理第一个参数。

要解决此问题,应将此脚本添加到PATH环境变量中的目录中(例如:c:\cygwin\bin):

<强> myopen.sh:

for i in "$@"; do
  cygstart "$i"
done

之后可以像这样调用:

myopen.sh *.pdf