Re: basic command pipe question

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

 



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Don Russell wrote:
> I need some basic CLI help. :-) I've googled, and read, and I can't
> find how to erase a bunch of files in one go.
>
> Specifically, I need a command that will erase *.zip files,
> regardless of the text case of the .zip part....
>
> So far, I have
>    ls | grep -iE \\.zip$
>
> That gives me the correct list of files.... but I don't know how to
> get rm to process that list.. It doesn't look like rm has an option
> to read the file name from stdin, it's expecting the file name as a
> CLI argument.

This is one of those things that you could do a whole lot of ways and
I'm sure more than a few people will provide options.  I'm looking
forward to learning a few new things out of this too (it always
happens, no matter how well I think I know the possibilities :).

Here are a few ways:

    ls | grep -iE \\.zip$ | xargs rm -f

You could use find instead of ls and grep too.  This example is
almost straight from the xargs man page:

    find -iname '*.zip' | xargs rm -f

Or, using some bash command substitution:

    rm -f $(ls | grep -iE \\.zip$)

Of course, it's best to run these without the -f option or only on a
copy of your files until you're sure that it works as you expect it to
work.

> I know this is basic stuff.... I'm obviously missing some fundamental 
> concept of command line processing. :-)

You're just missing a few new commands in your mental storage.  With
many thousands of them, it takes a long time to learn and remember the
myriad ways things can be used.  :)

- -- 
Todd        OpenPGP -> KeyID: 0xD654075A | URL: www.pobox.com/~tmz/pgp
======================================================================
(When asked whether he liked children) "Ah yes...boiled or fried."
    -- W.C. Fields

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: When crypto is outlawed bayl bhgynjf jvyy unir cevinpl.

iG0EARECAC0FAkSV0QEmGGh0dHA6Ly93d3cucG9ib3guY29tL350bXovcGdwL3Rt
ei5hc2MACgkQuv+09NZUB1pSGACglKHfwEcCzOOU9bIzZLtPkaF/3McAoMzuvhAF
x0kQRdAQK9RUqtBqS6Gn
=qzxa
-----END PGP SIGNATURE-----


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux