Questione : Shell script di Unix Per facilitare scp tramite traforo d'inversione dello ssh


Devo fare lo scp da parecchi assistenti di Unix (HP-UX & Linux) ad un dedicato
PC su una frequente base via Tcp2222.

Così su quel un dozzina sopra i server Unix, Pubblicherei:
  scp - administrator@localhost del source_file_on_Unix P2222: /g/temp

dove - P2222 è di fare lo scp per copiare via Tcp2222 mentre /g/temp
è l'azionamento & l'indice sul PC.  Avrò bisogno di uno shell script, Lo denomino ncp
per facilitare/ridurre l'ordine (come devo frequentemente scriv questo a macchina
ordine dello scp) tali che, devo appena scriv:

  pc del fileN del ncp file1 file2: /x/d

per cui file1, file2,…, fileN può essere fino a 12 archivi sorgente (assistente dello IE 0Unix (scp permette gli archivi sorgente multipli & quando lo scritto ha rilevato
pc:  sostituirà “il pc: „ con “administrator@localhost: „ mentre la x è
guidare che posso specificare (possono essere l'azionamento di C, IE dell'azionamento di F thumbdrive o a
azionamento tracciato della rete sul PC) mentre la d è il nome di indice dell'obiettivo
sul PC.  I nomi di schedario dell'obiettivo presupporranno i nomi di schedario di fonte

Risposta : Shell script di Unix Per facilitare scp tramite traforo d'inversione dello ssh

La versione in pieno controllo di dati:

#! /bin/bash
funzione readVal () {
       mentre allineare; fare
               eco - n “$1„
               leggere val
               [- di n “$2„] del && [- rottura del && del val= " $2„ del && di z “$val„];
               se “$3„ eval; allora
                       rottura;
               fi
               eco eval “$4„
       fatto
}

eco “ncp v1.0 dal rumi„
readVal “state copiando l'interi indice/dispositivo di piegatura? (y/N)„ =~ y “di n„ “[[“$val„|n|Y|La N]]„ “ha messo y o il N.„
caso “$val„ dentro
       Y|y)
               readVal “entrare nell'indice di fonte: „ del "" “[- l'indice di d “$val„]„ “\ “$val \„ non esiste. Prova ancora.„
               params= " - r $val "
               ; ;
       N|n)
               i=1
               mentre allineare; fare
                       readVal “entrare nella fonte file$i: „ “il _„ “[- f “$val„]„ “lima \ “$val \„ non esiste. Prova ancora.„
                       caso “$val„ dentro
                               “_„)
                                       rottura;
                                       ; ;
                               *)
                                       params= " $params \ “$val \ ""
                                       i=$ (($i+1))
                                       ; ;
                       ESAC
               fatto
               ; ;
ESAC

readVal “entrare nell'azionamento & nel dispositivo di piegatura della destinazione (per esempio: disposizione di /c/temp): „ "" “[[=~ /./ “di $val„. *]]„ “la disposizione dovrebbe essere \ “/c/temp \„. Prova ancora.„

echeggiare “effettuando lo scp - administrator@localhost di P2222 $params: $val…„
scp - administrator@localhost di P2222 $params: $val



rgds
rumi
Altre soluzioni  
 
programming4us programming4us