bash: -exec in find command and &

bash, find

Solution

Try this:

$ find . -type f -name "*.my_format" -exec sh -c './my_script {} &' \;

The mostly likely reason your attempt didn't work is because find executes the command using one of the `exec(3)` family of standard c library calls which don't understand job control - the `&` symbol. The shell does understand the "run this command in the background" hence the `-exec sh ...` invocation

Problem

I want to run: ``` ./my_script.py a_file & ``` ... on all files in the current folder that end with `.my_format`, so I do: ``` find . -type f -name "*.my_format" -exec ./my_script {} & \; ``` but it doesn't work. How should I include `&` in the `-exec` parameter?

Original source

Related problems