Vraag : Het manuscript van Unix Shell om scp via omgekeerde sshtunnel te vereenvoudigen


Ik moet scp van servers verscheidene van Unix (PK-UX & Linux) aan specifiek doen
PC op een frequente basis via Tcp2222.

Zo op die één dozijn over de servers van Unix, zou ik uitgeven:
  scp - P2222 source_file_on_Unix administrator@localhost: /g/temp

waar - P2222 moet scp aan exemplaar via Tcp2222 maken terwijl /g/temp
is de aandrijving & de folder op PC.  Ik zal een manuscript van Shell, het roepen ncp nodig hebben
om te vereenvoudigen/verkort het bevel (aangezien I vaak dit moet typen
scp bevel) dusdanig dat, ik enkel moet typen:

  ncp fileN PC file1 file2: /x/d

waardoor file1, file2,…, fileN tot 12 brondossiers kan zijn (d.w.z. server 0Unix (scp staat veelvoudige brondossiers toe & wanneer het ontdekte manuscript
PC:  het zal „PC substitueren: “ met „administrator@localhost: “ terwijl x is
aandrijving die ik kan specificeren (kan de aandrijving van C, de aandrijving van F d.w.z. thumbdrive of a zijn
netwerk in kaart gebrachte aandrijving op PC) terwijl D de naam van de doelfolder is
op PC.  Doelfilename zal bronfilename veronderstellen

Antwoord : Het manuscript van Unix Shell om scp via omgekeerde sshtunnel te vereenvoudigen

De versie zal volledige gegevens controlerend:

#! /bin/bash
readVal functie () {
       terwijl waar;
               echo - n „$1“
               lees val
               [- n „$2“] && [- z „$val“] && val= " $2“ onderbreking &&;
               als eval „$3“; dan
                       onderbreking;
               FI
               eval echo „$4“
       gedaan
}

echo „ncp v1.0 door rumi“
readVal „kopi�ërt u volledige folder/omslag? (y/N)“ „n“ „[[„$val“ =~ y|n|Y|N]]“ „Gezet y of n.“
geval „$val“ binnen
       Y|y)
               readVal „ga bronfolder in: [- D „$val“]“ „de Folder“ "" „\ „$val \“ bestaat niet. Probeer opnieuw.“
               params= " - r $val "
               ; ;
       N|n)
               i=1
               terwijl waar;
                       readVal „ga bron file$i in: “ „_“ „[- F „$val“]“ „het Dossier \ „$val \“ bestaat niet. Probeer opnieuw.“
                       geval „$val“ binnen
                               „_“)
                                       onderbreking;
                                       ; ;
                               *)
                                       params= " $params \ „$val \ ""
                                       i=$ (($i+1))
                                       ; ;
                       esac
               gedaan
               ; ;
esac

readVal „ga bestemmingsaandrijving & omslag in (b.v.: /c/temp formaat): “ "" „[[„$val“ =~ /./. *]]“ „het Formaat zou \ „/c/temp \“ moeten zijn. Probeer opnieuw.“

weergalm „het presteren scp - P2222 $params administrator@localhost: $val…“
scp - P2222 $params administrator@localhost: $val



rgds
rumi
Andere oplossingen  
 
programming4us programming4us