[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: apt-cacher errors




On 3/25/19 9:21 AM, Greg Wooledge wrote:
On Mon, Mar 25, 2019 at 12:11:21PM +0000, Adam Weremczuk wrote:
I've found 30 entries referencing wheezy and removed them all:

sudo find /var/cache/apt-cacher/ -type f -name *wheezy* | xargs rm
sudo find /var/cache/apt-cacher -type f -name '*wheezy*' -delete

There are three mistakes in your command:

1) The glob must be quoted, or the shell will expand it based on the files
    in the current working directory, wherever that happens to be.

2) xargs without -0 is unsafe to use for filenames, because they may contain
    whitespace or single quotes or double quotes, all of which are special
    to xargs.

3) You ran find with sudo privileges (probably not necessary), and failed
    to run the rm with sudo privileges.  All of the removals are therefore
    going to fail.

You might argue that "apt-cacher never has any files with spaces!"
That may be true.  But it's still a good habit to develop.  Also, -delete
is more efficient than | xargs rm, albeit not portable to POSIX scripts.

If you want it to be portable as well as safe, then:

sudo find /var/cache/apt-cacher -type f -name '*wheezy*' -exec rm {} +

That's less efficient than -delete, but it's the best you can do if
POSIX portability is required.



Great thoughts Greg.

Helped me too.




Reply to: