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

二次信任 提交于 2020-01-02 09:59:22

问题


I want to write a script to call phantomjs on a bunch of test scripts in a directory. This script runs the first test and then exits.

#!/bin/bash

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

Executing a similar command with echo, like

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

prints (as expected) all the filenames in the directory.

How can I make phantomjs run all .js files in the current directory? Is this a bash problem or a phantomjs problem?


回答1:


AFAIK phantomjs will only support one file at the time. You need to tell find to call phantomjs for each found file:

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

You can also use:

#!/bin/sh
for file in *.js; do
  [ -f "$file" ] || continue
  phantomjs "$file"
done


来源:https://stackoverflow.com/questions/37420286/make-phantomjs-run-all-js-files-in-the-current-directory

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!