2

我想编写一个脚本来调用phantomjs目录中的一堆测试脚本。该脚本运行第一个测试,然后退出。

#!/bin/bash

find . -maxdepth 1 -name '*.js' -type f -exec phantomjs {} +

使用 执行类似的命令echo,例如

find . -maxdepth 1 -name '*.js' -type f -exec echo {} +

打印(如预期)目录中的所有文件名。

如何让 phantomjs 运行.js当前目录中的所有文件?这是 bash 问题还是 phantomjs 问题?

4

1 回答 1

3

AFAIK phantomjs 当时只支持一个文件。您需要告诉find为每个找到的文件调用 phantomjs:

#!/bin/sh
find . -maxdepth 1 -name '*.js' -type f -exec phantomjs {} ';'

您还可以使用:

#!/bin/sh
for file in *.js; do
  [ -f "$file" ] || continue
  phantomjs "$file"
done
于 2016-05-24T17:53:07.520 回答