linux - how to find and execute command for each file in a directory? -
i have directory containing multiple files. these files coming via network location; source sending these file via scp command. have batch command run each of these incoming files; command runs around 5-6 hours.
i trying run below command in linux box
find documents/wget/ -maxdepth 1 -type f -exec btaudip '{}' \; my goal start batch program files in directory simultaneously. but, above command run 1 file @ time. so, changed command below. failed.
find documents/wget/ -maxdepth 1 -type f -exec btaudip '{}' & \; how should change command this?
the fact find gathers arguments after -exec option first semicolon , runs (exec) resulting command, without passing them shell. modifications, final command generated find like:
btaudip fname '&' therefore @ each run btaudip passed 2 parameters: current file name (as found find) , ampersand.
to achieve want, need invoke shell process '&' correctly, example using following command:
find documents/wget/ -maxdepth 1 -type f -exec bash -c "btaudip '{}' &" \;
Comments
Post a Comment