Automaattisen tiedostojen lataus- ja lataustyökalun luominen WinSCP-komennolla.


Julkaisupäivä:9. joulukuuta 2020.



INFOMARTION > Automaattisen tiedostojen lataus- ja lataustyökalun luominen WinSCP-komennolla.

Yleiskatsaus.

Luo automaattinen tiedostojen lataus- ja lataustyökalu WinSCP-komennolla. Suorita WinSCP:n tarjoamat komennot komentorivillä. Ei ole yllättävää, että WinSCP tarjoaa komentoja. Yleensä käytetään WinSCP.exe-tiedostoa, mutta myös WinSCP.com-tiedosto on käytettävissä. Et melkein koskaan näe "C:\Program Files (x86)\ WinSCP"-kansiota pikakuvakkeessa, koska yleensä avaat sen periaatteessa pikakuvakkeesta, mutta jos katsot pikakuvakkeen määränpäätä, "WinSCP.com" pitäisi myös olla tallennettuna sinne. Täällä työkalu luodaan.

Sisällysluettelo

  1. Mikä on WinSCP-komento?
  2. Automaattinen lataustyökalu
  3. Automaattinen lataustyökalu
  4. Muita usein käytettäviä komentoja
  5. yhteenveto

1. Mikä on WinSCP-komento?

WinSCP-komento on komento, jonka avulla voit suorittaa WinSCP-toiminnot, jotka normaalisti suoritetaan graafisessa käyttöliittymässä. Tämä toiminto, jonka normaalisti suorittaisit näytöllä, suoritetaan komennolla.

1-1. Mitä voit tehdä.

Voit ladata ja ladata tiedostoja, luoda kansioita, kutsua komentotulkkikomentoja ja monia muita asioita.

Usein käytettäviä komentoja ovat mm.

open・・・Käytetään yhteyden muodostamiseen.

get・・・Käytetään tiedostojen lataamiseen.

put・・・Käytetään tiedostojen lataamiseen.

exit・・・Käytetään leikkaamiseen.

1-2. Mitä et voi tehdä.

Tiedostojen peruslataukset ja -lataukset ovat mahdollisia, mutta järjestelmän käytön jälkeen näyttää siltä, että yksityiskohtia on vaikea hallita.

Vaikutti esimerkiksi vaikealta "tarkistaa tiedoston päivityspäivämäärä ja hakea tiedosto, jonka päivityspäivämäärä on määritetty".

Jos haluat liittää käsiteltävään tiedostoon monimutkaisia ehtoja, voit kutsua komentotulkkia komennolla 'call', joka voidaan toteuttaa Windows- tai Linux-komennoilla jne.

2. Automaattinen lataustyökalu

Haluaisimme luoda työkalun, joka todella lataa automaattisesti Linux-palvelimelle sijoitetut lokit.

2-1. tekeminen

Luo työkalu seuraavilla ehdoilla.

・Windows 10 suoritusympäristönä.

・Hankittava palvelin on Linux.

・IP-osoite 192.168.50.10.

Luo ensin bat-tiedosto aktivoinnin lähtökohdaksi.

file_get.bat


@setlocal enabledelayedexpansion
@set time2=%time: =0%
@set MKDIR_NAME=%date:~0,4%%date:~5,2%%date:~8,2%%time2:~0,2%%time2:~3,2%%time2:~6,2%
@set FOLDER=%~dp0%MKDIR_NAME%
@mkdir %FOLDER%
@"C:\Program Files (x86)\WinSCP\WinSCP.com" /console /script=%~dp0ftp.txt /parameter %FOLDER% 

Viimeistä riviä lukuun ottamatta loppuosa prosessista on Windows-komento. Sisältö.

@setlocal enabledelayedexpansion

Viivästettyjen ympäristömuuttujien asetukset. Lyhyesti sanottuna tämä kuvaus estää asettamasta muuttujalle arvoa, joka ei ehkä heijastu.

@set time2=%time: =0%
@set MKDIR_NAME=%date:~0,4%%date:~5,2%%date:~8,2%%time2:~0,2%%time2:~3,2%%time2:~6,2%
@set FOLDER=%~dp0%MKDIR_NAME%

Prosessi, jossa nykyisestä kellonajasta haetaan yyyymmddhmmss ja lopuksi sijoitetaan se FOLDER-muuttujaan.

@mkdir %FOLDER%

Luo kansio 'yyyymmddhmmss' suoraan sen kansion alle, jossa erä suoritettiin.

@"C:\Program Files (x86)\WinSCP\WinSCP.com" /console /script=%~dp0ftp.txt /parameter %FOLDER% 

WinSCP.com (WinSCP-komento). Suoritus suorittaa komennot, jotka on lueteltu tiedostossa "ftp.txt" samassa kansiossa, johon erätiedosto on tallennettu. Anna argumenttina juuri luomasi kansion polku.

Tämä viimeistelee soittajatiedoston luomisen. WinSCP-komento kuvataan tämän jälkeen tiedostossa "ftp.txt".

ftp.txt


option batch on
option transfer binary
open test:testpassword@192.168.50.10
get /var/log/httpd/access_log %1%\
close
exit

Sisältö.

option batch on

Kyselyä edellyttävien prosessien osalta järjestelmä olettaa automaattisesti, että "Ei" on valittu, ja suorittaa prosessin automaattisesti. Jos lisäät tämän, se korvaa automaattisesti kaikki päällekkäiset tiedostonimet. (Voit luoda kansion "yyyymmddhmmss" ja laittaa tiedostot sinne, jotta tiedostojen nimet eivät toistu.)

option transfer binary

Asetuksella siirretään tiedot binääritilassa.

open test:testpassword@192.168.50.10

'käyttäjätunnus:salasana@IP-osoite'. Muodosta yhteys IP-osoitteeseen "192.168.50.10".

get /var/log/httpd/access_log %1%\

Tallenna '/var/log/httpd/access_log' kansioon 'yyyymmddhhmmss'.('%1%' on file_get.bat-tiedostossa annettu argumentti.)

Myös säännöllisiä lausekkeita voidaan käyttää, joten jos kirjoitat "/var/log/httpd/*", koko loki voidaan hakea.

close
exit

Tämä on irrottautumisprosessi.

Tämä viimeistelee työkalun luomisen.

2-2. täytäntöönpanon valmistelu

Alustava sormenjälkien otto suoritetaan ennen teloitusta.

Jos palvelimeen ei ole koskaan muodostettu yhteyttä WinSCP:n kautta, sinulta kysytään, onko yhteyden muodostaminen turvallista. Jos painat "Kyllä", "Kyllä"-painalluksesta jää merkintä Windowsin rekisterialueelle. Näin varmistetaan, että järjestelmää ei tarkisteta toista kertaa. Työkalua suoritettaessa on tarpeen tehdä tämä etukäteen ja tallentaa palvelimen tiedot rekisterialueelle, jotta voidaan varmistaa, että siihen on turvallista muodostaa yhteys, joten suorita seuraavat komennot komentorivillä.

"C:\Program Files (x86)\WinSCP\WinSCP.com"
open test:testpassword@192.168.50.10 ⇒Sinua pyydetään vastaamaan, kirjoita "y".
close
exit
exit

'test:testpassword@192.168.50.10' olisi korvattava sanoilla 'käyttäjätunnus:salasana@IP-osoite'.

Näin alustavat valmistelut saadaan päätökseen.

2-3. toteutus

Lopuksi on aika panna se täytäntöön. Kaksoisnapsauta tiedostoa 'file_get.bat'.

Onnistuu, jos kansio "yyyymmddhhmmss" on luotu ja lokit on tallennettu kansioon.

3. Automaattinen lataustyökalu

Seuraava vaihe on luoda työkalu, jolla tiedostot voidaan siirtää Linux-palvelimelle. Perusrakenne on sama kuin lataustyökalussa.

3-1. tekeminen

Luo työkalu seuraavilla ehdoilla.

・Windows 10 suoritusympäristönä.

・Kohdepalvelin on Linux.

・IP-osoite 192.168.50.10.

Luo ensin bat-tiedosto aktivoinnin lähtökohdaksi.

file_put.bat


@setlocal enabledelayedexpansion
@set FOLDER_NAME="put_files\*"
@set FOLDER=%~dp0%FOLDER_NAME%
@set PUT_FOLDER="/tmp/"
@"C:\Program Files (x86)\WinSCP\WinSCP.com" /console /script=%~dp0put_ftp.txt /parameter %FOLDER% %PUT_FOLDER%

Kuten automaattisessa lataustyökalussa on selitetty, pieni selitys on jätetty pois, mutta prosessi on se, että tiedostot tallennetaan 'put_files'-kansioon samaan kansioon, jossa eräajotiedosto suoritetaan: '/tmp/'. Varsinainen tallennusprosessi kuvataan asiakirjassa "put_ftp.txt".

put_ftp.txt


option batch on
option transfer binary
open test:testpassword@192.168.50.10
put %1% %2%
close
exit

Komento "put %1%\ %2%" lataa tiedostoja argumentteina annettujen "lähdetiedoston" ja "kohdekansion" mukaan, vaikka pieni selitys on jätetty pois, koska tämä selitetään myös automaattisessa lataustyökalussa.

3-2. täytäntöönpanon valmistelu

Kuten automaattisessa lataustyökalussa, sormenjäljet tarkistetaan etukäteen ennen suorittamista.(Ei tarvita, jos automaattinen lataustyökalu on suoritettu kerran.)

Suorita seuraava komento komentorivillä.

"C:\Program Files (x86)\WinSCP\WinSCP.com"
open test:testpassword@192.168.50.10 ⇒Sinua pyydetään vastaamaan, kirjoita "y".
close
exit
exit

'test:testpassword@192.168.50.10' olisi korvattava sanoilla 'käyttäjätunnus:salasana@IP-osoite'.

Näin alustavat valmistelut saadaan päätökseen.

3-3. toteutus

Lopuksi on aika panna se täytäntöön. Kaksoisnapsauta tiedostoa 'file_put.bat'.

Onnistuu, jos kohdassa 'put_files' tallennetut tiedostot siirretään kansioon '/tmp/'.

4. Muita usein käytettäviä komentoja

Olemme esitelleet peruslataamisen ja -lataamisen, mutta haluaisimme kuvata myös muita komentoja, joita saatetaan käyttää usein.

4-1. avaimen todennus

Aiemmin kirjauduit sisään salasanatodennuksella seuraavan kuvauksen mukaisesti.

open test:testpassword@192.168.50.10

'open käyttäjätunnus:salasana@IP-osoite'. Avaimen todennukseen sovelletaan seuraavaa.

open test@192.168.50.10 -privatekey=id_rsa.ppk

'-privatekey=id_rsa.ppk' on avaimen polku. Koska kyseessä on suhteellinen polku, oletetaan, että avain (id_rsa.ppk) on myös kansiossa, jossa suoritettava tiedosto (bat-tiedosto) sijaitsee. Jos avain sijaitsee esimerkiksi suoraan C-aseman alla, kirjoita "-privatekey=C:\id_rsa.ppk".

4-2. Shellin kutsuminen

Voit kutsua komentotulkin WinSCP-komennolla kirjoittamalla seuraavasti.

option batch on
option transfer binary
open test:testpassword@192.168.50.10
call sh /tmp/test.sh
close
exit

'test.sh' suoritetaan komennolla 'call sh /tmp/test.sh'. On myös mahdollista välittää argumentteja. Kun annat argumentteja, kirjoita ne muodossa "call sh /tmp/test.sh param1".

5. yhteenveto

WinSCP-komento on kuvattu.

Jos käytät normaalisti WinSCP:n graafista käyttöliittymää tiedostojen kirjaamiseen ja lataamiseen päivittäin, voit automatisoida tämän luomalla tässä artikkelissa kuvatut työkalut. Se voi olla pieni tehtävä, mutta se voi viedä paljon aikaa, paitsi jos sitä tehdään joka päivä. Kannustamme sinua luomaan työkaluja tehokkuuden parantamiseksi.

Kiitos, että katsoitte loppuun asti.