使phantomjs 运行 当前目录下的所有'*.js'文件

Make phantomjs run all '*.js' files in the current directory

我想编写一个脚本来调用 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 问题?

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