Hello Craig,

On 5/6/17, Craig Sanders via luv-main <[email protected]> wrote:
> On Fri, May 05, 2017 at 08:16:52PM +1000, Mark Trickett wrote:
>
>> > Most rename scripts you'll write are just one or more
>> > 's/search/replace/' one-liner statements, but they can be a quite
>> > complicated perl script if required.
>>
>> I need to learn perl, but will do a lot better around other people,
>
> most renames won't need much perl, just regular expression search & replace.

It will not be just for renames, it is a very potent language for what it does.

>> >     $ rename --version
>> >     /usr/bin/rename using File::Rename version 0.20
>> >
>> > or check 'man rename' - if it mentions perl, it's good.
>>
>> That reported perl, but the --version option is not supported on the
>> rename on this install.
>
> that sounds like the default rename included in the perl package. it
> should work but has some problems that are fixed in later versions.
>
> the rename package is only 12 KB in size, so won't use much bandwidth to
> download.
>
> it has no dependencies other than perl, either so I could mail it to you if
> you want.  or download direct from your nearest debian mirror without
> bothering with 'apt-get' (updating the package lists will be tens of
> megabytes).  install with 'dpkg -i' (as root, of course).

I tend to stick with the repositories, for a variety of reasons. This
is part of why I want to be involved with a group of people, putting
heads together, that I can better learn and brush up command line and
administrative tasks.

> Package: rename
> Version: 0.20-4
> Installed-Size: 36
> Maintainer: Debian Perl Group <[email protected]>
> Architecture: all
> Replaces: libfile-rename-perl
> Provides: libfile-rename-perl
> Depends: perl
> Conflicts: libfile-rename-perl
> Description-en: Perl extension for renaming multiple files
>  This package provides both a perl interface for renaming files
>  (File::Rename) and a command line tool 'rename' which is intended to
>  replace the version currently supplied by the perl package.
> Description-md5: f25bdadb8b97cbf70a4a78c50ca2e8af
> Homepage: https://metacpan.org/release/File-Rename
> Section: perl
> Priority: optional
> Filename: pool/main/r/rename/rename_0.20-4_all.deb
> Size: 12464
> MD5sum: 11987300e5cbab887e2b34692665dc3a
> SHA256: 51ed56802ac8f84b588cc9db117469071e7b434cf8544aab2ef1d66c6686a00f
>
>
>> > but in the meantime, try something like this to start with:
>> >
>> > #              DD    MM    YYYY   (nnn)
>> > rename -n 's/(\d\d)(\d\d)(\d{4})\./$3-$2-$1(000)./;
>> >            s/(\d\d)(\d\d)(\d{4})(\(\d{3}\))\./$3-$2-$1$4./;
>> >           ' *.jpg
>> >
>> > the first s/// statement matches and replaces filenames WITHOUT
>> > the 3-digit sequence (and adds a sequence of "(000)").  The second
>> > matches filenames WITH them.
>>
>> I think I can start to follow what you are doing, and I need to be
>> careful, In typing emails and the like, I am hitting extra keys
>
> the s/// statements above should work with the filenames you listed.
>
> and copy-and-paste the rename command into a terminal should also work,
> no need for error-prone typing. that's part of the reason why I used
> the '-n' option, so it only does a dry-run and doesn't actually rename
> anything.

I did copy and paste, but a few extra characters from somewhere, so
posted into gedit, turned into a single line by deleting whitespace
with whatever did not show, and it worked a treat. Many thanks. The
next paragraph I should have remembered, but as said, the years are
adding up, with experience and the other less desirable effects.

> or paste it into a text file, insert a first line of '#!/bin/sh', and
> make it executable with 'chmod +x'. and change *.jpg to "$@" so you can
> specify the filenames on the command line. like so:
>
> #!/bin/bash
>
> rename -n 's/(\d\d)(\d\d)(\d{4})\./$3-$2-$1(000)./;
>             s/(\d\d)(\d\d)(\d{4})(\(\d{3}\))\./$3-$2-$1$4./;
>           ' "$@"
>
>
> get rid of the '-n' when you've tested it and seen that it will work as
> required.
>
> craig
>
> --
> craig sanders <[email protected]>

Regards,

Mark Trickett
_______________________________________________
luv-main mailing list
[email protected]
https://lists.luv.asn.au/cgi-bin/mailman/listinfo/luv-main

Reply via email to