NcFTP – FTP z konsoli nie taki straszny

Łukasz Piotrowski Komentarzy 0

    Pracując ze zdalnymi serwerami jesteśmy przyzwyczajeni do korzystania z klientów FTP. W 90% przypadków jest to graficzny klient czy to pod Windows, Linux, Mac czy inny system. Jest to bardzo wygodne rozwiązanie biorąc pod uwagę bardzo popularnego FileZilla gdzie wszystko mamy na oku, widzimy co przenosimy, skąd przenosimy.

    Jednak sprawa się zmienia gdy nie mamy dostępu do graficznych programów. Może się tak zdarzyć gdy przenosimy pliki ze zdalnego serwera jeszcze dalej, albo z "Kucykowa" do krainy elfów. Nie istotne.
    Istotne jest to że brak nam GUI (Graphical User Interface). Wtedy to z pomocą przychodzi nam NcFTP. Bardzo lekki, przyjazny w komendy konsolowy klient FTP.


    Zaczynamy

    Aby zmusić (raczej poprosić :) ) program do pracy wystarczy go zainstalować. No może nie tylko. Odpalamy nasz program na kilka sposobów:

    1. ncftp
    2. ncftp nasz-bookmark
    3. ncftp -u xxx -p xxx nasz.host.pl

    1. To po prostu odpalenie prodgramu
    2. To odpalenie programu z zapisanym bookmarkiem (o tym później)
    3. To bezpośrednie podłączenie do hosta z uwierzytelnianiem. Niestety hasło to plaintext więc…

    Normalne łączenie

    Po odpaleniu programu 1-szym sposobem wita nas zachętnik:

    NcFTP 3.2.5 (Feb 02, 2011) by Mike Gleason (http://www.NcFTP.com/contact/).
    ncftp> 

    Teraz aby się połączyć wystarczy wydać polecenie open z odpowiednimi parametrami:

    Usage: open [-flags] [sitename]
    Flags:
      -a    : Open anonymously.
      -u XX : Login with username XX.
      -p XX : Login with password XX.
      -j XX : Login with account XX.
      -P XX : Use port number X when opening.
    Examples:
      open sphygmomanometer.unl.edu
      open -u mario bowser.nintendo.co.jp
    

    Proste i przyjemne.

    Bookmarki

    2-gim sposobem na łączenie się z zdalnym hostem jest możliwość wykorzystania bookmarków zapisanych w programie. Aby to zrobić trzeba sobie najpierw przygotować połączenie.

    Łączymy się tam gdzie chcemy standardowo czyli albo przez komendę open lub podając dane podczas uruchamiania (tak jak w przykładzie 3.)

    ncftp> open -u zzz -p xxx ftp.lpiotrowski.uboxi.com
    Connecting to 31.170.166.82...                                                  
    --------- Welcome to Pure-FTPd [privsep] [TLS] ----------
    You are user number 66 of 500 allowed.
    Local time is now 13:48. Server port: 21.
    This is a private system - No anonymous login
    You will be disconnected after 3 minutes of inactivity.
    Logging in...                                                                   
    OK. Current directory is /public_html
    Logged in to ftp.lpiotrowski.uboxi.com.                                         
    ncftp /public_html > 
    

    Przechodzimy sobie do dowolnego katalogu gdzie chcemy aby nasz bookmark startował:

    ncftp /public_html > cd test/ 
    OK. Current directory is /public_html/test
    ncftp /public_html/test >

    I robimy magię

    ncftp /public_html/test > bookmark testowy_serwer
    
    
    You logged into this site using a password.
    Would you like to save the password with this bookmark?
    
    Save? [no] 
    

    Aplikacja pyta się nas czy zapisujemy hasło. Jeżeli tak wpisyjemy yes i Enter.
    Dostajemy komunikat:

    Bookmark "testowy_serwer" saved.

    Super. Teraz przetestujmy czy działa:

    lpiotrowski@debian:~/Pobrane$ ncftp testowy_serwer
    NcFTP 3.2.5 (Feb 02, 2011) by Mike Gleason (http://www.NcFTP.com/contact/).
    Connecting to 31.170.166.82...                                                  
    --------- Welcome to Pure-FTPd [privsep] [TLS] ----------
    You are user number 50 of 500 allowed.
    Local time is now 13:52. Server port: 21.
    This is a private system - No anonymous login
    You will be disconnected after 3 minutes of inactivity.
    Logging in...                                                                   
    OK. Current directory is /public_html
    Logged in to ftp.lpiotrowski.uboxi.com.                                         
    OK. Current directory is /public_html/test
    Current remote directory is /public_html/test.
    ncftp /public_html/test > 
    

    Jak widzimy udało się. I na dodatek jesteśmy w katalogu w którym został zapisany bookmark.

    Edycja Bookmarków

    Sprawa łatwa. Uruchamiamy NcFTP i wpisujemy po prostu bookmarks i dostajemy ładne okienko:

                               NcFTP Bookmark Editor
    
                                        Number of bookmarks:   1
    Open selected site:       <enter>   testowy_serwer   ftp.lpiot..
    Edit selected site:       /ed       -                           
    Delete selected site:     /del      -                           
    Duplicate selected site:  /dup      -                           
    Add a new site:           /new      -                           
                                        -                           
    Up one:                   <u>       -                           
    Down one:                 <d>       -                           
    Previous page:            <p>       -                           
    Next page:                <n>       -                           
                                        -                           
    Capital letters selects first       -                           
      site starting with the letter.    -                           
                                        -                           
    Exit the bookmark editor: <x>       -                           
                                        -                           
                                        -                           
    
    ftp://xxx:PASSWORD@ftp.lpiotrowski.uboxi.com/test/
    

    Jak widać śliczność i prostota. Poszuszanie się banalne. Po liście klawiaszami U,D,P,N a do edycji naciskamy kombinację pokazaną obok komendy czyli /ed i Enter. Prawda że banalne?

    Wyślijmy coś

    Przyszedł czas na wysyłanie.
    Robimy to za pomocą komendy put.
    Użycie:

    Usage: put [-flags] file1 [file2...]
    Flags:
      -z   : Send the local file file1, and name the remote copy to file2.
      -f   : Force overwrite (do not try to auto-resume transfers).
      -a   : Send files using ASCII mode.
      -A   : Append entire local file to the remote file.
      -R   : Recursive.  Useful for sending whole directories.
    Examples:
      put README
      put -z ~/junk/windows-init-file WIN.INI
    

    Aby wysłać całą zawartość katalogu z podkategoriami wydajemy polecenie:

    put -R /home/user/send/* /send

    To nam wyśle całą zawartość katalogu send (zawartość, nie katalog) do katalogu send na serwerze.

    <2>Katalogi i polecenia

    Założenie jest takie że NcFTP lokalnie jest w katalogu z którego zaczęliśmy program.
    Program ma kilkanaście komend. Kilka z nich jest w wersji lokalnej i zdalnej np:
    ls – listuje katalog zdalny
    lls – listuje katalog lokalny
    cd – zmienia katalog zdalny
    lcd – zmienia katalog lokalny

    Ogóly spis poleceń:

    Commands may be abbreviated.  'help showall' shows hidden and unsupported 
    commands.  'help' gives a brief description of.
    
    ascii      cat     get      lookup    mkdir    pwd      set      
    bgget      cd      help     lpage     open     quit     show     
    bgput      chmod   jobs     lpwd      page     quote    site     
    bgstart    close   lcd      lrename   passive  rename   type     
    binary     debug   lchmod   lrm       pdir     rhelp    umask    
    bookmark   dir     lls      lrmdir    pls      rm       version  
    bookmarks  edit    lmkdir   ls        put      rmdir      
    
    For details, please see the manual ("man ncftp" at your regular shell prompt

    Można sobie poeksperymentować i zobaczyć co robią.

    Aby dowiedzieć się więcej nt. polecenia:

    help nazwa_polecenia

    ncftpput i ncftpget

    Standardowa instalacja programu NcFTP zawiera w sobie m.in. te 2 składniki: ncftpput incftpget.
    Jest to nic innego jak oddzielny program do wysyłania i pobierania z FTP (analogicznie do Put i Get). Nie będę rozpisywał się nad opcjami jakie posiadają bo są analogiczne.

    Aby coś wysłać na serwer wpisujemy:

    ncftpput [options] zdalny_host zdalny_katalog lokalny_plik ... 
    ncftpput [options] bookmark-name zdalny_katalog lokalny_plik ... 
    ncftpput -f configFile.cfg [options] zdalny_katalog lokalny_plik ... 

    I tak oto lecą nam pliczki na serwer.

    Małe podsumowanko

    Aplikacja leciutka, zwinna, zgrabna. Przydaje się w pracy. Jak już opanujemy jej moc to zabawa idzie nam dużo szybciej niż w graficznych programach. Ja polecam ze swojej strony, a Wy z czego korzystacie?

    Inne

    Strona domowa NcFTP
    Podobny programik i zbliżonych możliwościach: LFPT

    Inne artykuły

    Top