bergman on 17 Nov 2018 16:22:31 -0800


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

Re: [PLUG] scripting help, variables in sed


In the message dated: Fri, 16 Nov 2018 09:45:35 -0500,
The pithy ruminations from Michael Lazin on 
[[PLUG] scripting help, variables in sed] were:
=> My girlfriend has a large collection of scanned family photos many of which
=> are different photos with the same name.  We eliminated all duplicates with
=> fdupes, but she would like to put them all in one folder and give it to her
=> sisters on a cd.
=> 
=> I had a bit of free time this morning and tried to write a for loop to
=> accomplish this but I'm getting syntax errors and I'm kinda stuck.  Any
=> help would be appreciated.  Here is my code so far:
=> 
=>   #!/bin/bash
=> var=1
=> for i in *.jpg; do sed -i -e "s/"($i)"/"($var++)""($i)/" ; done


	i=1 ls -1 *.jpg |while read filename; do mv $filename ${i}_${filename}; i=$((i+1)) ; done

Substitute "ls -1" with "find", change the target of "mv" to include a
directory, etc.

For bonus points...eliminate the $i variable and use options in "ls"
(or "find") to preceed the target filename with the source file's inode
number, guaranteeing a unique number (for a given filesystem).

Or
	i=1 ls -1 |awk '{print "mv " $1 " " NR "_" $1}' | sh

Mark

=> 
=> Thanks,
=> 
=> Michael
=> 
=> -- 
=> Michael Lazin
=> 
=> to gar auto estin noein te kai ennai
=> 
___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug