that is exactly the way I wanted to know. you are a great guy!
On Sat, Jan 30, 2016 at 2:52 PM, Brian Cluff <
brian@snaptek.com> wrote:
> \s does match any white space and is very different than /s. In my
> example this is what everything means
>
> rename 's/:/-/' *
> 0 12345678 9
>
> 0 - name of program
> 1 - the following should be interpreted literally by the shell
> 2 - we are going to do a regular expression search and replace
> 3 - Regular expression start character (you can actually change this to
> any character you like in your regular expression is going to contain
> slashes (/), but stick with / to begin with.
> 4 - The search pattern that will be searching for, in this case a colon
> 5 - the seperator beween the search and replace
> 6 - the pattern that we will be replacing our search matched with, in this
> case a -
> 7 - the end our of regular expression
> 8 - stop interpreting everything literally
>
> There are options that you can add after the last / that can make your
> regular expression case insensitive (i) or make it work more than once on
> the same line (g)...etc.etc.. but there aren't any in this case as they
> aren't needed.
>
> 9 - this star is now shell globing and makes the command operate on all
> the files in the current directory. In your case it would probably be
> better to do *:* so that it only touches files with a : in their names, so
> that you limit the damage if you get something wrong.
>
> I'm sure that's now as clear as mud. :)
>
> Brian Cluff
>
>
> On 01/30/2016 12:26 PM, Michael wrote:
>
> you know... the reason I was doubting that page is because it says that
> \s matches any white space and in the example that worked:
>
> rename 's/:/-/' *
>
> looks to me as if it is saying to search for a blank space followed by a
> colon and then (i guess) the next forward slash tells it to replace it with
> a dash. Then the final '\' closes the statement and that too is a tatement
> surrounded by apostrapheses.
> Is that right?
>
> On Sat, Jan 30, 2016 at 2:09 PM, Brian Cluff <brian@snaptek.com> wrote:
>
>> Regular expressions is a pretty big topic. It's not super easy like
>> globing (like the * you've been using in bash) which you can get the idea
>> from the 544 page book (
>> <http://www.amazon.com/Mastering-Regular-Expressions-Jeffrey-Friedl/dp/0596528124/>
>> http://www.amazon.com/Mastering-Regular-Expressions-Jeffrey-Friedl/dp/0596528124/
>> ) that can be bought on regular expressions. The equivalent book on
>> globing would be a pamphlet.
>>
>> That being said, the basics aren't too hard to learn, but you have to
>> keep in mind that they are fairly different, and don't always act like what
>> you would think.
>>
>> There are a ton of howtos out there and they take a lot of different
>> approaches to explaining thing, I would just search google for them until
>> you find one that speaks to you.
>>
>> Brian Cluff
>>
>>
>> On 01/30/2016 11:54 AM, Michael wrote:
>>
>> thank you Brian. Does anyone happen to know of a perl regexr list. I
>> found one but am not sure if it is right:
>> http://www.cs.tut.fi/~jkorpela/perl/regexp.html
>>
>> On Sat, Jan 30, 2016 at 11:43 AM, Brian Cluff < <brian@snaptek.com>
>> brian@snaptek.com> wrote:
>>
>>> You can't rename files that way. The * on the command line gets turned
>>> into real file names by bash before they are ever given to the mv command
>>> so you are tell the command line to consist of any files with a : followed
>>> by any files with an = or -.
>>> At best your command will error out, at worst it will overwrite an
>>> existing file.
>>> What you are needing is a program that can take a pattern and rename
>>> files with a different pattern. There are 2 that I've used, mmv and
>>> rename. Of the 2, you probably have rename on your system already since it
>>> gets pulled in with PERL. If not, just install the rename package.
>>>
>>> With rename all you have to do is:
>>> rename 's/:/-/' *
>>>
>>> That will use a regular expression to change all the files in the
>>> current directory that contain a : in their name to the same name with a -
>>> replacing the :.
>>>
>>> Be very very careful with the rename command, it can and will clobber
>>> every file that it touches before you know it just because you got a single
>>> character out of place.
>>> When in doubt add the -n option so that it will tell you what it's going
>>> to do without actually doing it. Then if everything looks good, run the
>>> command again without the -n to actually make the changes.
>>>
>>> Brian Cluff
>>>
>>>
>>>
>>> On 01/30/2016 08:29 AM, Michael wrote:
>>>
>>> I'm sure that will fix it but what am I doing wrong in my attempts to
>>> rename them?
>>>
>>> $ mv *:* *=*
>>> mv: target ‘*=*’ is not a directory
>>> $ mv *:* *-*
>>> mv: target ‘darktable-1:9Download’ is not a directory
>>> $ mv *:* ./*-*
>>> mv: target ‘./darktable-1:9Download’ is not a directory
>>>
>>>
>>> On Sat, Jan 30, 2016 at 10:29 AM, Matt Graham < <mhgraham@crow202.org>
>>> mhgraham@crow202.org> wrote:
>>>
>>>> On Fri, Jan 29, 2016 at 6:45 PM, Michael < <bmike1@gmail.com>
>>>> bmike1@gmail.com> wrote:
>>>>
>>>>> the filesystem is probably FAT because it is a thumb drive....
>>>>> rsync: mkstemp
>>>>> "/media/bmike1/RedSanDisk/Documents/Education/Darktable/.darktable-1:10WaterLilyEdit.CccL3o"
>>>>> failed: Invalid argument (22)
>>>>>
>>>>
>>>> It is not possible to have a ':' character in a filename on a FAT-based
>>>> filesystem. This is because that character was used to denote which disk
>>>> drive a file was on back in the DOS days... "C:\junk\stuff.txt" and so
>>>> forth.
>>>>
>>>> I am not sure what these hidden files contain, or whether they're
>>>> actually important. You can pass the "--exclude *\:*" option to rsync to
>>>> tell it to not try to transfer files that contain ':' characters, which may
>>>> help.
>>>>
>>>> --
>>>> Crow202 Blog: <http://crow202.org/wordpress>
>>>> http://crow202.org/wordpress
>>>> There is no Darkness in Eternity
>>>> But only Light too dim for us to see.
>>>>
>>>> ---------------------------------------------------
>>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
>>>> To subscribe, unsubscribe, or to change your mail settings:
>>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>>>
>>>
>>>
>>>
>>> --
>>> :-)~MIKE~(-:
>>>
>>>
>>> ---------------------------------------------------
>>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
>>> To subscribe, unsubscribe, or to change your mail settings:http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>>
>>>
>>>
>>> ---------------------------------------------------
>>> PLUG-discuss mailing list - <PLUG-discuss@lists.phxlinux.org>
>>> PLUG-discuss@lists.phxlinux.org
>>> To subscribe, unsubscribe, or to change your mail settings:
>>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>>
>>
>>
>>
>> --
>> :-)~MIKE~(-:
>>
>>
>> ---------------------------------------------------
>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
>> To subscribe, unsubscribe, or to change your mail settings:http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>
>>
>>
>> ---------------------------------------------------
>> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
>> To subscribe, unsubscribe, or to change your mail settings:
>> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>>
>
>
>
> --
> :-)~MIKE~(-:
>
>
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
> To subscribe, unsubscribe, or to change your mail settings:http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>
>
>
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss@lists.phxlinux.org
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.phxlinux.org/mailman/listinfo/plug-discuss
>
--
:-)~MIKE~(-:
---------------------------------------------------
PLUG-discuss mailing list -
PLUG-discuss@lists.phxlinux.org
To subscribe, unsubscribe, or to change your mail settings:
http://lists.phxlinux.org/mailman/listinfo/plug-discuss