FTP(1)

NAZWA
ftp - ARPANET'owy program do przesyłania plików

SKŁADNIA
ftp [-v] [-d] [-i] [-n] [-g] [-q] [host]

OPIS
Ftp jest interfejsem użytkownika do ARPANET'owego standardu - Protokołu Przesyłania Plików (File Transfer Protocol). Ten program pozwala użytkownikom przesyłać pliki na i z odległego miejsca w sieci.

Opcje mogą być podawane w linii poleceń lub w interpretatorze komend.

-v  Ta opcja każe ftp pokazywać wszystkie odpowiedzi z odległego serwera, a także statystyki o transferze danych.

-n  Wstrzymuje ftp od próbowania auto-logina przy pierwszym połączeniu. Jeśli auto-login jest włączony, ftp sprawdzi czy w pliku .netrc (zobacz niżej) w katalogu użytkownika istnieje wpis opisujący konto na odległej maszynie. Jeśli wpis nie istnieje, ftp spyta o login na odległym serwerze (standardowo jest to nazwa użytkownika, na komputerze lokalnym) i jeśli będzie potrzebne o hasło i konto na które się zalogować.

-i  Wyłącza interaktywne pytania podczas wielokrotnego ściągania plików.

-d  Włącza debuggowanie.

-g  Wyłącza rozszerzanie znaków specjalnych w nazwach plików (np. *,?,[],{})

-q  Wychodzi, gdy wystąpi błąd podczas wykonywania polecenia w makrze.

Host, z którym ftp ma się komunikować może być podany w linii poleceń. Jeśli tak się stanie, ftp od razu spróbuje się połączyć z serwerem FTP na tym hoście. W przeciwnym wypadku ftp wejdzie do swojego interpretatora poleceń i będzie czekał na polecenia od użytkownika. Kiedy ftp czeka na polecenia od użytkownika, ‘ftp>’ jest pokazywane na ekranie. Następujące komendy są rozpoznawane przez ftp:

! [komenda [arg]]
    Wywołuje interaktywny shell na lokalnym komputerze. Jeżeli podano jakieś argumenty, pierwszy jest uważany za polecenie do wykonania od razu, z resztą argumentów jako jego argumenty.

$ nazwa-makra [arg]
    Wykonuje makro o nazwie nazwa-makra zdefiniowane przy pomocy komendy macdef. Argumenty są przekazywane do makra bez rozszerzania nazw (unglobbed).

konto [hasło]
    Dostarcza dodatkowe hasło potrzebne, aby mieć dostęp do zasobów, po tym jak logowanie zostało zakończone pomyślnie. Jeśli nie podano żadnych argumentów, użytkownik będzie zapytany o hasło do konta w trybie bez wyświetlania znaków.

append plik-lokalny [plik-zdalny]
    Dopisz plik lokalny do plik na odległej maszynie. Jeśli plik-lokalny pozostał niezdefiniowany, nazwa lokalnego pliku jest używana do nazwania pliku odległego po zmianie komendami z ustawień poleceń ntrans lub nmap. Transfer pliku korzysta z ustawień type, format, mode, i structure.

ascii
    Ustawia tryb przesyłania plików ( type ) na sieciowy ASCII. Jest to standardowe ustawienie.

bell
    Włącza sygnał dźwiękowy po skończeniu każdego polecenia przesłania pliku.

binary
    Ustawia tryb przesyłania plików ( type ) na binarny.

bye Kończy sesję FTP z odległym serwerem i wychodzi z ftp. Koniec pliku także zakończy sesję i skończy działanie.

case
    Zmienia wrażliwość na wielkość liter w odległych plikach podczas polecenia mget. Kiedy case jest włączone (standardowo wyłączone), duże litery w nazwach plików na odległym komputerze zostaną zmienione na małe litery podczas zapisywania w katalogu lokalnym.

cd zdalny-katalog
    Zmienia aktualny katalog na odległym komputerze na zdalny-katalog.

cdup
    Zmienia aktualny katalog na odległym komputerze na katalog o jeden stopień wyższy.

chmod prawa nazwa-pliku
    Zmienia prawa dostępu do pliku nazwa-pliku na odległym komputerze na prawa.

close
    Kończy sesję FTP z odległym serwerem i wraca do interpretatora poleceń. Wszystkie zdefiniowane makra są usuwane.

cr  Zmienia usuwanie znaku powrotu karetki na końcach linii w plikach przesyłanych w trybie ascii. Rekordy są kończone znakami cr/lf, w czasie przesyłania w trybie ascii. Kiedy cr jest włączone (standardowo), powrót karetki (cr) jest usuwane zgodnie z ogranicznikiem pojedynczej linii systemu UNIX. Rekordy w systemach nie-UNIX mogą zawierać linie. Ta struktura pozostanie tylko wtedy, kiedy cr jest wyłączone.

delete plik-zdalny
    Usuwa plik plik-zdalny na odległym komputerze.

debug [wartość-debuga]
    Zmienia tryb debuggowania. Jeśli opcjonalny argument wartość-debuga zostanie podany, jest on używany do ustawienia poziomu debugowania. Kiedy debugowanie jest włączone, ftp pokazuje każdą linię wysyłaną do serwera, poprzedzoną ciągiem ‘-->’

    dir [remote-directory] [local-file] Drukuje listę zawartości katalogu remote-directory, opcjonalnie umieszczając ją w pliku lokalnym local-file. Jeśli pytania interaktywne są włączone, ftp poprosi użytkownika o weryfikację ostatniego argumentu, będącego docelowym plikiem lokalny do którego zostanie zapisany wynik dir. Jeśli żaden katalog nie zostanie podany, używany jest aktualny katalog na odległym serwerze. Jeśli żaden lokalny plik nie zostanie podany lub local-file jest -, wynik zostanie pokazany na terminalu.

disconnect
    Synonim dla close.

forma format
    Zmienia formę przesyłania na format. Standardowym formatem jest file.

get plik-zdalny [plik-lokalny]
    Ściąga plik plik-zdalny i zachowuje go na lokalnym komputerze. Jeśli nazwa pliku lokalnego nie zostanie podana, plik nazywany jest tak jak na odległej maszynie, zgodnie z ustawieniami case, ntrans, i nmap. Aktualne ustawienia type, form, mode, i structure są używane przy przesyłaniu pliku.

glob
    Zmienia rozszerzanie nazw plików dla poleceń mdelete, mget i mput. Jeśli rozszerzanie jest wyłączone przy pomocy glob, argumenty będące nazwami plików nie są rozszerzane. Rozszerzanie dla mput jest wykonywane tak jak w csh(1). Dla mdelete i mget, każdy odległy plik jest rozszerzany osobno na odległym serwerze i lista plików nie jest łączona. Rozszerzanie nazw katalogów jest inne od rozszerzania nazw katalogów: dokładny rezultat zależy od odległego systemu operacyjnego i serwera ftp. Można go wcześniej podglądnąć przy pomocy ‘mls remote-files -’ Uwaga: mget i mput nie mają za zadanie przesyłać całe podkatalogi z plikami. To może być wykonywane przez przesyłanie archiwów tar(1) tych podkatalogów (w trybie binarnym).

hash
    Zmienia wypisywanie hasha (``#'') dla każdego przesłanego bloku danych. Długość każdego bloku wynosi 1024 bajty.

help [komenda]
    Pokazuje informację o znaczeniu polecenia komenda. Jeśli nie podano żadnego argumentu ftp pokazuje listę wszystkich poleceń.

idle [sekundy]
    Ustawia licznik bezczynności na odległym serwerze na sekundy sekund. Jeśli sekundy zostały pominięte, pokazywany jest aktualny licznik bezczynności.

lcd [katalog]
    Zmienia aktualny katalog na lokalnej maszynie. Jeśli katalog nie został podany, używany jest katalog domowy użytkownika.

    ls [remote-directory] [local-file] Pokazuje zawartość katalogu na odległej maszynie. Lista zawiera informacje systemowe, które zostały wybrane przez serwer; np. większość systemów UNIX pokaże listę z komendy ‘ls -l’. (Zobacz także nlist.) Jeśli nie podano remote-directory aktualny katalog roboczy jest używany. Jeśli interaktywne pytania są włączone, ftp każe użytkownikowi potwierdzić, że ostatni argument rzeczywiście jest docelowym plikiem lokalnym do którego zostanie zapisany wynik polecenia ls. Jeśli nie podano pliku lokalnego lub local-file jest ‘-’, lista pokazywana jest w oknie terminala.

macdef nazwa-makra
    Definiuje makro. Kolejne linie są zapisywane do makra o nazwie nazwa-makra; pusta linia kończy wprowadzanie poleceń. Istnieje limit 16 makr i 4096 znaków we wszystkich zdefiniowanych makrach. Makro pozostaje zdefiniowanym dopóki nie wykona się polecenia close. Przy wykonywaniu makra, znaki `$' i `\' interpterowane są jako znaki specjalne. Liczba lub liczby poprzedzone znakiem `$' są zamieniane na odpowiednie argumenty z linii wywołującej makro. `i' poprzedzone przez `$' sygnalizuje, że makro ma zostać zapętlone. Przy pierwszym przejściu `$i' zamieniane jest przez pierwszy argument w linii wywołania makra, przy drugim przejściu zamieniany jest przez drugi argument, itd. Dowolny znak poprzedzony przez `\' zamieniany jest na ten znak. Możesz użyć `\' aby zapobiec specjalnemu traktowaniu znaku `$'.

mdelete [zdalne-pliki]
    Usuwa pliki zdalne-pliki z odległego serwera.

mdir zdalne-pliki plik-lokalny
    Tak jak dir, tylko, że można podać wiele plików. Jeśli włączone są interaktywne pytania, ftp każe użytkownikowi potwierdzić, że ostatni argument rzeczywiście jest plikiem lokalnym do którego zostanie zapisany wynik polecenia mdir.

mget zdalne-pliki
    Rozszerza nazwy dla zdalnych-plików na odległym serwerze i wykonuje get dla każdego pliku otrzymanego w ten sposób. Zobacz także glob, gdzie opisane są detale rozszerzania nazw. Każdy z tych plików zostanie przetworzony zgodnie z ustawieniami case, ntrans, i nmap. Pliki są przesyłane do lokalnego aktualnego katalogu, który może zostać zmieniony przy pomocy ‘lcd katalog’; nowy katalog lokalny może zostać utworzony przez ‘! mkdir katalog’.

mkdir nazwa-katalogu
    Tworzy nowy katalog na odległej maszynie.

mls zdalne-pliki plik-lokalny
    Tak jak nlist, poza tym, że może być podane wiele odległych plików oraz katalog lokalny plik-lokalny musi zostać podany. Jeśli włączone są interaktywne pytania, ftp każe użytkownikowi potwierdzić, że ostatni argument rzeczywiście jest plikiem lokalnym, do którego zostanie zapisany wynik polecenia mls.

tryb [nazwa-trybu]
    Ustawia tryb przesyłania na nazwę-trybu. Standardowo jest to tryb stream.

modtime nazwa-pliku
    Pokazuje datę ostatniej modyfikacji pliku na odległym serwerze.

mput pliki-lokalne
    Rozszerza znaki specjalne w nazwach plików lokalnych podanych jako argumenty i wykonuje put dla każdego otrzymanego pliku. Zobacz także glob, gdzie opisane są detale rozszerzania nazw. Każdy z tych plików zostanie przetworzony zgodnie z ustawieniami ntrans, i nmap.

newer nazwa-pliku [plik-lokalny]
    Pobiera plik, gdy data modyfikacji na odległym serwerze jest późniejsza niż data modyfikacji pliku lokalnego. Jeśli lokalny plik nie istnieje, plik odległy jest uważany za nowszy. W przeciwnym wypadku ta komenda jest identyczna z get get.

    nlist [zdalny-katalog] [plik-lokalny] Pokazuje listę plików w katalogu na odległym komputerze. Jeśli zdalny-katalog nie został podany, używany jest aktualny katalog roboczy. Jeśli włączone są interaktywne pytania, ftp każe użytkownikowi potwierdzić, że ostatni argument jest plikiem lokalnym, do którego zostanie zapisany wynik polecenia nlist. Jeśli lokalny plik nie został podany lub podano -, wynik pokazywany jest na terminalu.

nmap [inwzorzec outwzorzec]
    Włącza lub wyłącza mechanizm mapowania nazw plików. Jeśli nie podano argumentów jest on wyłączany. Jeśli podano argumenty pliki odległe są mapowane w czasie komend mput oraz put wydanych bez podanych plików odległych. Jeśli podano argumenty, pliki lokalne są mapowane podczas komend mget oraz get wydanych bez podanych plików lokalnych. To polecenie jest przydatne podczas połączeń z systemami nie-UNIX z inną konwencją nazywania plików. Mapowanie robione jest ze wzorców inwzorzec i outwzorzec. [Inwzorzec] jest wzorem dla plików przychodzących (które mogły już być przetworzone zgodnie z ustawieniami ntrans i case ). Zmienne wzorcowe są robione przez umieszczanie sekwencji `$1', `$2', ..., `$9' w inwzorzec. Użycie `\' zapobiega specjalnemu traktowaniu znaku `$'. Wszystkie inne znaki są traktowane dosłownie i używane do określenia wartości zmiennych nmap [inwzorzec]. Np. podanie jako inwzorzec $1.$2 oraz jako odległą nazwę pliku "mydata.data", $1 przyjmie wartość "mydata", a $2 przyjmie wartość "data". Outwzorzec określa rezultat po mapowaniu. Sekwencje `$1', `$2', ...., `$9' są zamieniane przez wartości wynikające ze wzorca inwzorzec. Ciąg `$0' jest zamieniany przez oryginalną nazwę pliku. Dodatkowo ciąg ‘[seq1, seq2]’ zamieniany jest przez [seq1] jeśli seq1 nie jest puste; w przeciwnym wypadku zamieniane jest na seq2. Np. polecenie

        nmap $1.$2.$3 [$1,$2].[$2,file]

    da wynik "myfile.data" dla danych nazw "myfile.data" oraz "myfile.data.old", "myfile.file" dla plików wejściowych "myfile" i "myfile.myfile" dla ".myfile". Odstępy mogą być zawarte w outwzorzec, tak jak w przykładzie: `nmap $1 sed "s/ *$//" > $1' . Użycie znaku `\' zapobiega specjalnemu traktowaniu znaków `$','[','[', oraz `,'.

ntrans [inznaki [outznaki]]
    Włącza lub wyłącza mechanizm tłumaczenia znaków nazw plików. Jeśli nie podano argumentów, mechanizm translacji znaków nazw plików jest wyłączony. Jeśli podano argumenty, znaki zdalnych nazw plików podlegają podczas wywoływania komend mput i put tłumaczeniu. (o ile nie podano jawnie zdalnej nazwy pliku.) Podobnie ma się sprawa z działaniem komend mget i get . Komenda ta jest przydatna do podłączania się do nie-UNIX owego komputera o innych konwencjach nazywania plików. Znaki nazwy pliku, odpowiadające znakom w inznaki są podmieniane na ich odpowiedniki w outznaki. Jeśli pozycja znaku w inznaki jest dalsza niż długość outznaki, to znak jest kasowany z nazwy pliku.

open host [port]
    Nawiąż połączenie z podanym hostem FTP . Dodatkowo można podać numer portu; wtedy ftp spróbuje zestawić połączenie z serwerem FTP na określonym porcie. Jeśli włączona jest opcja auto-login (a jest to domyślne), ftp spróbuje też automatycznie zalogować użytkownika na serwer FTP (patrz niżej).

prompt
    Włącz interaktywne zapytywanie. Pojawia się to podczas wielokrotnych transferów plików, umożliwiając użytkownikowi selektywne wysyłanie lub pobieranie plików. Jeśli jest to wyłączone (domyślnie jest włączone), wszelkie operacje mget i mput będą przenosić wszystkie pliki; mdelete również nie będzie oszczędzać niczego.

proxy komenda-ftp
    Wywołaj komendę ftp w drugorzędnym połączeniu. Komenda ta zezwala na równoczesne połączenie do dwóch zdalnych serwerów ftp i przesyłanie plików między nimi dwoma. Pierwszą komendą proxy powinna być open, do zestawienia drugorzędnego połączenia. Aby zobaczyć listę komend ftp, dostępnych w drugorzędnym połączeniu, wpisz "proxy ?". Następujące komendy zachowują się inaczej po poprzedzeniu przez proxy: open nie definiuje nowych makr podczas procesu autologowania, close nie kasuje istniejących definicji makr, get i mget przesyłają pliki z hosta w połączeniu pierwszorzędnym na host w połączeniu drugorzędnym, a put, mput, i append przesyłają pliki z hosta w połączeniu drugorzędnym na host w połączeniu pierwszorzędnym. Trzeciorzędne transfery plików zależą od obsługiwania przez serwer połączenia drugorzędnego komendy PASV protokołu ftp.

put plik-lokalny [plik-zdalny]
    Zapisz plik lokalny na zdalnej maszynie. Jeśli plik-zdalny nie jest podany, używana jest lokalna nazwa plików (po przetworzeniu według ustawień ntrans lub nmap ). Transfer plików używa bieżących ustawień dla type, format, mode, i structure.

pwd Drukuj nazwę bieżącego katalogu roboczego zdalnej maszyny.

quit
    Synonim bye.

quote arg1 arg2 ...
    Podane argumenty są przesyłane dosłownie do zdalnego serwera FTP .

recv plik-zdalny [plik-lokalny]
    Synonim get.

reget plik-zdalny [plik-lokalny]
    Reget działa jak get, lecz jeśli plik-lokalny istnieje i jest mniejszy niż plik-zdalny , to plik-lokalny jest uważany za częściowo odebraną kopię pliku-zdalnego , a transfer będzie rozpoczynany w odpowiednim miejscu pliku. Komenda ta jest przydatna do transferowania bardzo dużych plików poprzez sieci, mające tendencje do zrywania połączeń.

remotehelp [nazwa-komendy]
    Zażądaj pomocy od zdalnego serwera FTP . Jeśli podano nazwę-komendy to jest ona również przekazywana serwerowi.

remotestatus [nazwa-pliku]
    Bez argumentów, pokaż status zdalnej maszyny. Jeśli podano nazwy-pliku , pokaż status nazwy-pliku zdalnej maszyny.

    rename [z] [na] Zmień nazwę pliku z na zdalnej maszynie na plik na.

reset
    Wyczyść kolejkę odpowiedzi. Komenda ta resynchronizuje sekwencjonowanie komendy/odpowiedzi ze zdalnym serwerem ftp. Resynchronizacja jest niezbędna po pogwałceniu protokołu ftp przez zdalny serwer.

restart marker
    Restartuj następujący zaraz get lub put pod wskazanym markerem. Na systemach UNIX marker jest zazwyczaj offsetem bajtowym w pliku.

rmdir nazwa-katalogu
    Usuń katalog ze zdalnej maszyny.

runique
    Włącz zapisywanie plików na lokalnym systemie z unikalnymi nazwami plików. Jeśli plik o danej nazwie już istnieje, komendy get i mget dopiszą do nowej nazwy pliku ".1". Jeśli i ta nazwa jest nazwą istniejącego pliku, do nazwy oryginalnej doklejane jest ".2". Proces ten trwa aż do ".99". Później drukowany jest komunikat o błędzie i transfer dalej nie zachodzi. Generowanie unikalnej nazwy pliku będzie raportowane. Zauważ, że runique nie wpływa na pliki lokalne, wygenerowane komendą powłoki (patrz niżej). Domyślnie jest to wyłączone.

send plik-lokalny [plik-zdalny]
    Synonim put.

sendport
    Włącz używanie komend PORT . Domyślnie ftp próbuje używać komendy PORT podczas nawiązywania połączenia dla każdego transferu danych. Używanie komendy PORT może zapobiec opóźnieniom podczas wielokrotnych transferów plików. Jeśli komenda PORT zawiedzie, ftp użyje domyślnego portu danych. Gdy używanie komendy PORT jest wyłączone, nie są podejmowane żadne próby w kierunku używania komend PORT podczas transferów plików. Jest to przydatne dla niektórych implementacji FTP , które ignorują komendy PORT , lecz nieprawidłowo wskazują, że zostały one przyjęte.

site arg1 arg2 ...
    Argumenty są przesyłane dosłownie do zdalnego serwera FTP jako komenda SITE .

size nazwa-pliku
    Zwraca rozmiar nazwy-pliku na zdalnej maszynie.

status
    Pokaż obecny status ftp.

struct [nazwa-struktury]
    Ustaw strukturę transferu plików na nazwę-struktury. Domyślnie używana jest struktura stream.

sunique
    Włącz zapisywanie plików na maszynie zdalnej według konwencji unique. Serwer zdalny musi obsługiwać komendę STOU protokołu FTP. Zdalny serwer będzie zgłaszał unikalne nazwy. Domyślnie jest to wyłączone.

system
    Pokaż typ systemu operacyjnego zdalnej maszyny.

tenex
    Ustaw typ transferu plików, wymaganego do rozmawiania z maszynami TENEX .

trace
    Włącz śledzenie pakietów.

type [nazwa-typu]
    Ustaw typ transferu plików na nazwę-typu. Jeśli nie podano typu, drukowany jest aktualnie ustawiony. Domyślnym typem jest sieciowy ASCII.

umask [nowamaska]
    Ustaw domyślną umaskę na zdalnym serwerze na nowąmaskę. Jeśli nowamaska jest pominięta, drukowana jest wartość bieżącej.

    user nazwa-użytkownika [hasło] [konto] Zezwala na identyfikację przed serwerem FTP . Jeśli hasło nie jest podane, a serwer go wymaga, ftp zapyta o nie (po wyłączeniu lokalnego echa). Jeśli nie podano pola konta , a serwer FTP go wymaga, użytkownik zostanie o nie zapytany. Jeśli podano pole konta , a zdalny serwer nie wymagał go podczas logowania, to po zakończeniu sekwencji logowania serwerowi zostanie przekazana komenda account. O ile ftp nie był wywołany z wyłączonym auto-login, proces ten jest dokonywany automatycznie w początkowym połączeniu z serwerem FTP .

verbose
    Włącz tryb gadatliwy. W trybie tym wszystkie odpowiedzi serwera FTP są użytkownikowi drukowane. Dodatkowo, tryb ten po transferach plików daje statystyki. Domyślnie tryb ten jest włączony.

? [komenda]
    Synonim help.

Zawierające spacje argumenty komend mogą być cytowane znakami cudzysłowów `"'.

PRZERYWANIE TRANSFERU PLIKÓW
Aby przerwać transfer plików, użyj terminalowego klawisza przerwania (zwykle Ctrl-C). Transfery wysyłane zostaną zatrzymane natychmiast. Transfery odbierane zostaną zatrzymane przez wysłanie komendy ftp ABOR do zdalnego serwera i przez odrzucenie wszelkich dalszych odebranych danych. Szybkość dokonania tego zadania, zależy od tego, jak zdalny serwer obsługuje ABOR . Jeśli serwer nie obsługuje komendy ABOR , znak zachęty ‘ftp>’ nie pojawi się aż serwer nie zakończy wysyłać żądanego pliku.

Sekwencja terminalowa przerwania będzie ignorowana w wypadku gdy ftp zakończył przetwarzanie lokalne i oczekuje odpowiedzi od zdalnego serwera. Długie opóźnienie w tym trybie może wynikać z obsługi ABOR, opisanej powyżej, lub z nieoczekiwanego zachowania zdalnego serwera, łącznie z pogwałceniami protokołu ftp. Jeśli opóźnienia wynikają z nieoczekiwanego zachowania zdalnego serwera, lokalny program ftp musi być ubijany ręcznie.

KONWENCJE NAZYWANIA PLIKÓW
Pliki, przekazane komendom ftp jako argumenty są przetwarzane według następujących zasad.

1.  Jeśli podana jest nazwa pliku ‘-’ to do odczytu używane będzie stdin a dla zapisu stdout .

2.  Jeśli pierwszy znak nazwy pliku to ‘|’, to reszta traktowana jest jako komenda powłoki. Ftp wtedy rozwidla (fork) powłokę przy użyciu popen(3) i odczytuje (zapisuje) ze stdout (stdin). Jeśli komenda powłoki zawiera spacje, argument musi być zacytowany; np. " ls -lt". Szczególnie użytecznym przykładem tego mechanizmu jest: dir more.

3.  Przy nieudanym zakończeniu powyższych sprawdzeń, o ile włączone jest ``globowanie'', nazwy lokalnych plików są rozwijane według reguł używanych w csh(1); c.f. komenda glob . Jeśli komenda ftp oczekuje pojedynczego pliku lokalnego (np. put), to używany jest tylko pierwszy plik wygenerowany operacją "globowania".

4.  Dla komend mget i get bez podanych lokalnych nazw plików, nazwa lokalna jest identyczna ze zdalną, choć może być przekształcana przez ustawienia case, ntrans, lub nmap . Ostateczna nazwa pliku może być jeszcze ewentualnie zmieniona jeśli włączone jest runique .

5.  Dla komend mput i put bez podanych zdalnych nazw plików, zdalne nazwy są identyczne z lokalnymi, choć mogą być przekształcone przez ustawienia ntrans lub nmap . Ostateczna nazwa pliku może być jeszcze ewentualnie zmieniona jeśli włączone jest sunique .

PARAMETRY TRANSFERU PLIKÓW
Specyfikacja FTP podaje wiele parametrów, które mogą dotyczyć transferu plików. Parametr type może być jednym z ascii, image (binary), ebcdic i local byte size (przeważnie dla PDP-10's i PDP-20's ). Ftp obsługuje typy ascii oraz image transferu plików plus local byte size 8 dla transferów w stylu tenex .

Ftp obsługuje tylko domyślne wartości dla pozostałych parametrów transferu plików: mode, form, i struct.

PLIK .netrc
Plik .netrc zawiera informacje loginowe i inicjalizacji, używane przez proces autologowania. Znajduje się w katalogu domowym użytkownika. Rozpoznawane są następujące elementy; mogą być one rozdzielone spacjami, tabulacjami lub nowymi liniami:

machine nazwa
    Zidentyfikuj zdalną maszynę nazwa. Proces autologowania przeszukuje plik .netrc w poszukiwaniu elementu machine , który odpowiada zdalnej maszynie podanej w linii komend ftp, lub jako argument komendy open . Jeśli element zostanie znaleziony, przetwarzane są dalsze elementy .netrc , z zatrzymaniem się po osiągnięciu następnego elementu machine lub elementu default .

default
    Jest to to samo co machine nazwa lecz default odpowiada dowolnej nazwie Zdefiniowany być może tylko jeden element default i musi znajdować się on za wszystkimi innymi elementami machine . Normalnie jest używany jako:

        default login anonymous password user@site

    dając tak użytkownikowi automatyczne logowanie anonimowego ftp na maszyny niewskazane w .netrc. Może to być przeciążone przez użycie flagi -n , która wyłącza autologowanie.

login nazwa
    Określ użytkownika zdalnej maszyny. Jeśli ten element istnieje, autologowanie rozpocznie logowanie z użyciem podanej nazwy.

password łańcuch
    Przekazuje hasło. Jeśli ten element jest obecny, proces autologowania przekaże podany łańcuch jeśli zdalny serwer wymaga hasła jako części procesu logowania. Zauważ, że jeśli element ten jest obecny w .netrc dla użytkowników innych niż anonymous, ftp przerwie proces autologowania jeśli .netrc jest odczytywalne przez kogokolwiek poza użytkownikiem.

konto łańcuch
    Przekaż dodatkowe hasło konta. Jeśli ten element jest obecny, proces autologowania przekaże podany łańcuch jeśli serwer zażąda dodatkowego hasła konta. Jeśli nie zażąda, autologowanie rozpocznie komendę ACCT .

macdef name
    Definiuje makro. Ten element funkcjonuje jak komenda macdef . Makro jest definiowane z podaną nazwą; jego zawartość rozpoczyna się w następnej linii .netrc i trwa aż do spotkania pustej linii (kolejne znaki nowej linii). Jeśli zdefiniowane jest makro o nazwie init , to jest ono wykonywane automatycznie jako pierwszy krok procesu autologowania.

ŚRODOWISKO
Ftp korzysta z następujących zmiennych środowiskowych.

HOME
    Dla domyślnego położenia pliku .netrc , o ile taki istnieje.

SHELL
    Dla domyślnej powłoki.

ZOBACZ TAKŻE
ftpd(8)

HISTORIA
Komenda ftp pojawiła się w 4.2BSD.

BŁĘDY
Prawidłowe wykonywanie wielu komend zależy od prawidłowego zachowania się zdalnego serwera.

Błąd w traktowaniu powrotów karetki w kodzie transferu trybu-ascii w 4.2BSD został poprawiony. Poprawka ta może powodować nieprawidłowości w przesyłaniu plików binarnych do i od 4.2BSD w trybie ascii. Sposobem na uniknięcie tego problemu jest używanie typu binarnego.