Dërgoni një skedar në një FTP me një komandë të vetme

Ne kemi parë tashmë se si të lidhemi me një server FTP dhe të punojmë me të (ose me përmbajtjen e tij) përmes terminalit, domethënë, pa përdorur aplikacione grafike.

Këtë herë ju sjell një plus ose një shtesë ... më lejoni ta shpjegoj.

Disa vite më parë i lashë një skenar bash që përdoret për të bërë kopje rezervë (ruan) të dhënat nga një server. Skenari kopjoi një seri dosjesh (si / etj /), eksportoi bazat e të dhënave, etj ... dhe e ngjeshi atë me një fjalëkalim në një skedar .RAR ose .7z (aktualisht përdor 7z), e vetmja gjë që skripti mungoi ishte duke qenë në gjendje të ngarkoni atëherë atë skedar të kompresuar në ndonjë server FTP, në këtë mënyrë kursimi nga serveri do të kopjohet në një vend tjetër.

Këto ditë mora skenarin për ta optimizuar pak, për ta përmirësuar dhe padyshim që doli në dritë nevoja për gjënë e fundit që ju përmenda, duke ngarkuar arkivin e kompresuar në një FTP të jashtëm.

Si të ngarkoni në një FTP me një komandë të vetme?

Ajo që më duhej ishte përmes një komande të vetme për t'u lidhur me një FTP me emër përdoruesi dhe fjalëkalim, dhe mirë; ngarkoni skedarin në një dosje specifike.

Aplikacionet terminale që më lejojnë të lidhem me një FTP, të vendos përdoruesin dhe fjalëkalimin dhe të ngarkoj skedarë ka shumë, por… që më lejojnë t'i bëj të gjitha në një rresht, me të gjitha parametrat e specifikuar tashmë. hej atje pyetja.

Pas shqyrtimit të 4 ose 5… mendova, hë !! ... por ekziston përdridhem

Ngarko në një FTP me curl

Me kaçurrela mund të bëj një numër të pafund të gjërave, mbase mund të bëj atë që dua ... dhe kaq!

Me parametrin -u mund të specifikoj emrin e përdoruesit dhe fjalëkalimin, gjithashtu me parametrin -T mund t'i them që të ngarkojë një skedar, dhe së fundmi t'i tregojë se në cilin FTP dhe cilën dosje dua ta ngarkoj, në fund thjesht vendos rrugën e plotë, pak a shumë si kjo :

curl -u usuario:password -T archivo-backup.7z ftp://192.168.128.2/SERVER_BACKUPS/

Ajo që bën kjo është të lidheni me FTP 192.168.128.2, me përdoruesin përdorues dhe fjalëkalimin Fjalëkalimi dhe ngarkoni në dosje SERVER_BACKUPS skedari me emrin skedar-rezervë.7z

Dhe gati!

E thjeshtë apo jo? ...

Sigurisht, kjo mund të jetë e dobishme për ne, si dhe vetëm komanda, megjithatë, mënyra më e mirë për ta përdorur atë është me një skenar të tillë si ... ai që përmenda më parë

Po në lidhje me atë skenar që përmendet?

Po bëj përmirësime në skenar, veçanërisht duke përfshirë disa kërkesa ose sugjerime nga përdoruesit.

  • Gjëja e parë që doja të bëja ishte pikërisht kjo që sapo ju shpjegova, me një komandë të vetme për të qenë në gjendje të ngarkoni skedarin e ruajtjes në një FTP.
  • Gjëja tjetër që një përdorues më rekomandoi ishte të dërgoja një email kur rezervimi ishte gati, për këtë mund ta përdor Dërgo postë ose skenari i jashtëm, Unë preferoj të përdor sendmail. Detaji i përdorimit të sendmail është se ju mund të përdorni llogarinë tuaj GMail (ose ndonjë tjetër) për të dërguar email, me enkriptim ... SSL dhe çfarëdo tjetër.
  • Gjithashtu, një përdorues rekomandoi që gjithashtu, si një formë më dinamike e njoftimit, një mesazh të dërgohet nga IM duke përdorur XMPP ose Hotmail të GTalk (Drejtpërdrejt ose diçka e tillë, madje nuk e di se si quhet). Unë do të përpiqem ta bëj atë së pari me GTalk, sepse për Hotmail do të duhet të mbaj mend ose të mbështes veten diku për të krijuar një llogari Hotmail, sepse me kaq shumë ndryshime që ka Microsoft, nuk ka ide se si është.
  • Një variant tjetër i kësaj të fundit do të ishte përdorimi i njoftimeve ose mesazheve që dërgohen nga Facebook ose Twitter. Për Twitter ju mund të përdorni Twidge ndërsa për Facebook mund ta përdorësh fbcmd. Të dy aplikacionet më lejojnë të bashkëveproj me këto rrjete sociale nga terminali.
  • Po mendoj gjithashtu të kontrolloj integritetin e sql që eksportoj, por kjo tashmë kërkon pak më shumë kohë :)

serveri ftp

Fund!

Epo, asgjë tjetër për të shtuar ... për momentin, unë jam duke marrë disa nga skenarët e mi të bërë në Bash për t'i optimizuar dhe përmirësuar ato, shpresoj se nuk do të vonojë shumë për të sjellë lajme

të fala


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.

  1.   barnarasta dijo

    Projekt i shkëlqyeshëm
    Do ta ndjek me shumë interes.
    - Ndonjë njoftim @ nëse serveri është i prishur ose dorëzimi nuk mund të bëhet?

    Jashtëzakonisht e këndshme për të lexuar artikuj nga adhuruesit e terminalit / konzollës.

    1 përshëndetje 2

    1.    KZKG ^ Gaara dijo

      Kënaqësia është e imja

      Ide e mirë, për të verifikuar nëse serveri FTP është në internet dhe nëse nuk është, të dërgoni një email ... Unë do ta marr parasysh ^ _ ^

  2.   Moisi Serrano dijo

    Unë kisha adaptuar skenarin tuaj rezervë dhe përshtati një projekt që ju lejon të ngarkoni skedarin përfundimtar në Dropbox (https://github.com/andreafabrizi/Dropbox-Uploader) dhe dërgoni një email në fund me sendmail.

  3.   dhunues dijo

    Gaara duhet të provosh mjetin e duhur për këtë: lftp

    Ai madje mbështet pasqyrimin, për të sinkronizuar repot nga ftp është i pavlefshëm.

    http://www.cyberciti.biz/faq/lftp-mirror-example/

  4.   Jorge dijo

    Shumë interesante, është bukuria e këtij sistemi, ju mund të merrni të njëjtin rezultat në mënyra të shumëfishta; Unë ju tregoj metodën në të cilën unë isha duke arritur të ngarkoj skedarë në një server ftp, është pak fshatar por ende funksionon:

    {
    echo fjalëkalimin e përdoruesit të përdoruesit
    koshi i jehonës
    jehonë e shpejtë
    echo cd / direktoria / nga / serveri / ftp
    skedari jehonë e vendosur
    jehonë afër
    jehonë mirupafshim
    } | ftp -n server.ftp

    1.    KZKG ^ Gaara dijo

      OOOHHH interesante, nuk e dija se çfarë mund të bëhej kështu
      Thanks !!

  5.   Sephiroth dijo

    Mënyra të tjera, për shembull me wput:

    wput skedarin_për të ngarkuar ftp: // PERRDORUESI: PASS@123.123.123.123: 21

    ose për ata që preferojnë thjeshtësinë në një skenar duke përdorur telnetin e vjetër:

    ftp -n server_ip << EOF
    përdorues anonim test@test.cu
    dërgoni FILE.txt
    dalje
    Eof

  6.   Xavier dijo

    Përshëndetje, unë jam një fillestar në Linux dhe nuk e di shkencën kompjuterike - vetëm në nivelin e përdoruesit - ose programimin, apo diçka të ngjashme, unë jam praktikisht injorant për këtë. Po lexoja këtë artikull dhe lexova në fund të paragrafit të dytë fjalën "vendndodhja"; ajo fjalë është keqpërdorur, ju keni menduar: vendndodhjen, vendndodhjen, vendndodhjen, vendin. Fjala vendndodhje do të thotë diçka tjetër siç thotë RAE "http://dle.rae.es/?id=NXeOXqS".