Forums before death by AOL, social media and spammers... "We can't have nice things"
|    alt.os.linux    |    Getting to be as bloated as Windows!    |    107,822 messages    |
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
|    Message 106,018 of 107,822    |
|    Java Jive to Paul    |
|    Re: Specifying an action to copy a file     |
|    30 Mar 24 16:31:50    |
   
   XPost: uk.comp.os.linux   
   From: java@evij.com.invalid   
      
   On 30/03/2024 16:06, Paul wrote:   
   > On 3/29/2024 6:54 PM, Java Jive wrote:   
   >> As some here may recall, I'm in the midst of several years' work scanning   
   family documents, post-processing them, and then releasing them either to the   
   general public for generations sufficiently removed from living people, or   
   else just back to the    
   source branch of the family. Currently there are nearly 15,000 original   
   documents with equal numbers of post-processed versions arranged as below, but   
   around 7,000 of them completed in previous stages already have final   
   documents, so there are around 8,   
   000 newly added documents left to do. What I need to do is use a program,   
   feh seems a likely choice, to work through those documents that don't yet have   
   a final version, choose one from five possible versions described below, copy   
   it to its    
   corresponding final directory, and move on to the next.   
   >>   
   >> The documents are arranged as follows:   
   >>   
   >> Family History   
   >> /_all/1o/subs Original scans   
   >> /_all/2n/subs Normalised versions of the originals   
   >> /_all/3t/subs Textcleaned versions ditto   
   >> /_all/4nt/subs Normalised then textcleaned versions ditto   
   >> /_all/5tn/subs Textcleaned then normalised versions ditto   
   >> /subs Final docs chosen from the best of the above   
   >>   
   >> Example for one particular subdirectory:   
   >>   
   >> Family History/_all/1o/Alston   
   >> Family History/_all/2n/Alston   
   >> Family History/_all/3t/Alston   
   >> Family History/_all/4nt/Alston   
   >> Family History/_all/5tn/Alston   
   >> Family History/Alston   
   >>   
   >> I've tried the following command line for feh (sorry can't help any line   
   wrap):   
   >>   
   >> user@computer:~# feh -Fdr -A 'echo cp -a \"%F\" \"$(echo %F | sed -E "{   
   s~/_all/[1-5][ont]{1,2}~~ ; s~ +\([ont]{1,2}\)~~ }" )\"' 'Family   
   History/_all/1o'   
   >>   
   >> ... which results in ...   
   >>   
   >> cp -a "Family History/_all/1o/Alston/Alston Descent - 2nd Earl Of Montrose,   
   William - 1 (o).png" "Family History/Alston/Alston Descent - 2nd Earl Of   
   Montrose, William - 1.png"   
   >>   
   >> ... which looks as though it should do the job, however removing the echo   
   ...   
   >>   
   >> user@computer:~# feh -Fdr -A 'cp -a \"%F\" \"$(echo %F | sed -E "{   
   s~/_all/[1-5][ont]{1,2}~~ ; s~ +\([ont]{1,2}\)~~ }" )\"' 'Family   
   History/_all/1o'   
   >>   
   >> ... results in ...   
   >>   
   >> cp: target '1.png"' is not a directory   
   >>   
   >> Can anyone suggest a magical incantation which will yield the desired   
   result?   
   >>   
   >> Another problem is that I'm going to have order the files so that each of   
   the 5 possible versions are displayed successively so that I can use the arrow   
   keys to go back and forth between them to choose the best. I think I might   
   be able to use a file    
   list to do this, but as yet I haven't given much thought as to how to create   
   it, it would have to be of the form:   
   >>   
   >> Family History/_all/1o/Alston/Document 1 (o).png   
   >> Family History/_all/2n/Alston/Document 1 (n).png   
   >> Family History/_all/3t/Alston/Document 1 (t).png   
   >> Family History/_all/4nt/Alston/Document 1 (nt).png   
   >> Family History/_all/5tn/Alston/Document 1 (tn).png   
   >> Family History/_all/1o/Alston/Document 2 (o).png   
   >> Family History/_all/2n/Alston/Document 2 (n).png   
   >> Family History/_all/3t/Alston/Document 2 (t).png   
   >> Family History/_all/4nt/Alston/Document 2 (nt).png   
   >> Family History/_all/5tn/Alston/Document 2 (tn).png   
   >> etc.   
   >>   
   >> I could also use Windows if there's a better solution available there, but   
   that seems unlikely to me.   
   >>   
   >> Any help gratefully received.   
   >>   
   >   
   > If cp had a --dry-run, you could obtain what it sees that way.   
   > When it doesn't have such an option, you can debug another way.   
   >   
   > Make yourself a "dumper" to dump the parameters seen on the command line.   
   > You can put "dumper" in place of "cp" and get the parameters that way.   
   >   
   > gcc -o dumper dumper.c   
   >   
   > #include
|
[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]
(c) 1994, bbs@darkrealms.ca