limit of find

the error comes:
find: Failed to save working directory in order to run a command on…

with this command:

find ./ -name "*.jpg" -execdir convert "{}" -resize 1920x1280 -quality 70 "{}" \;

what can i do about it, it’s a folder with subfolders with 10000 jpg inside?

When I search on this, there is limited results but a suggestion that version findutils 4.5.10-1 may be at fault which is the default in openSUSE 12.2 if you have not updated your system. It suggests that over 1111 files might create a problem, but I am not sure if you have too many files to convert or a defective find application loaded. Tell us the findutils version and how many jpg files actually exist there. For anyone using KDE and are** not using Tumbleweed,** I suggest you take this approach to upgrade your system.

To fully upgrade, I would do the following tasks for openSUSE 12.2 using KDE:

  1. Go to YaST (Enter Root Password) / Software / Software Repository and specify the URL addition of the Packman Repository “Index of /suse/openSUSE_12.2/” excluding the quotes if not already done.
  2. Go to YaST (Enter Root Password) / Software / Software Management and select Options and check Allow Vendor Change.
  3. Again, still in Software Management select Package / All Packages / Update if newer version available and press the Accept button on the bottom right.

Thank You,

openSUSE 12.2 64bits @ KDE SC 4.9.95
findutils 4.5.10-5.8.1-x86_64

at this moment i do one by one folder (with subfolders) with the same command and it works
but on a folder with subflders like “Dag 01 (2011-09-03)” i get the fault.

but i’m not done yet, i will inform more later on :wink:

I installed “findutils-4.4.2-17.1.2.x86_64.rpm” (from openSUSE 12.1) and it’s OK now

so it’s a bug in version “findutils 4.5.10-5.8.1-x86_64” on openSUSE 12.2
that makes a error on folders with “(” “)”:

user@openSUSE:/Harddisk/Data/test/test/Reizen> find ./ -name "*.jpg" -execdir convert "{}" -resize 1920x1280 -quality 70 "{}" \;
find: Failed to save working directory in order to run a command on `2004-09-10-0147.jpg': Too many open files

You should consider filing a bug report on the issue here: Bugzilla Main Page

Thank You,

https://bugzilla.novell.com/show_bug.cgi?id=796173

Very good. There is a chance now this bug might get picked up and fixed and at least you are working again using an older version of find.

Thank You,

On 12/29/2012 11:46 AM, heelstraf wrote:
>
> the error comes:
> find: Failed to save working directory in order to run a command
> on…
>
> with this command:
>
> Code:
> --------------------
> find ./ -name “*.jpg” -execdir convert “{}” -resize 1920x1280 -quality 70 “{}” ;
> --------------------
>
>
> what can i do about it, it’s a folder with subfolders with 10000 jpg
> inside?

Try the following instead:


find . -name "*.jpg" -print0 |
xargs -0 -n1 -i convert {} -resize 1920x1280 -quality 70 {}

findutils 4.5.10-5.8.1-x86_64 (that standards comes with openSUSE 12.2)
is de follow command working like a charm.

find . -name "*.jpg" -print0 | xargs -0 -n1 -i convert {} -resize 1920x1280 -quality 70 {}