DOS FTP Команди
FTP (File Transfer Protocol) е
услуга за прехвърляне на файлове в ASCII или BINARY формат между два
компютъра, свързани в мрежа. Услугата се обслужва от свой протокол като
надстройка на TCP/IP протоколите. FTP е много
полезно средство особено за пренасяне на файлове с голям обем.
Осъществяване на FTP връзка между
два компютъра в мрежата и провеждане на
сесия изисква изпълнението на определена последователност от действия от страна
на клиента (FTP Client) в процеса на
установяване на връзка и извличане на информация от файловия сървър (FTP Server) на
кореспондентския компютър. Тези действия предполагат познаването на едно не
голямо множество от команди за този протокол.
FTP команди:
Команда
|
Съдържание
|
!
|
изпълнява локална shell
команда
|
?
|
извежда на екрана помощна информация (help)
|
ascii
|
установява ascii (текстов) режим на
файловия трансфер
|
bell
|
звуков сигнал за край на извличане или прехвърляне на файл
|
binary
|
установява binary режим на файловия трансфер
|
bye
|
прекратява връзката и изход от ftp услугата
|
cd
|
смяна на текущата директория в отдалечената машина
|
delete
|
изтрива файл в отдалечената машина
|
dir
|
извежда съдържанието на директория в отдалечената машина
|
disconnect
|
прекратява връзката
|
get
|
извлича файл от отдалечената машина
|
glob
|
включва/изключва употребата на wildcard символи (*.*)
|
hash
|
отпечатва символа "#" за всеки изпратен или получен пакет
|
help
|
извежда помощни съобщения за всяка ftp команда
|
lcd
|
смяна на текущата директория в локалната машина
|
ls
|
извежда съкратена форма на съдържанието на директория в отдалечената
машина (Unix формат)
|
mdelete
|
изтрива файлове в отдалечената машина
|
mget
|
извлича група файлове от отдалечената машина
|
mdir
|
извежда съдържанието на множество директории от отдалечената машина
|
mkdir
|
създава поддиректория в отдалечената машина
|
mput
|
прехвърля група файлове в отдалечената машина
|
open
|
начало на комуникация с отдалечен компютър
|
prompt
|
активира потвърждение за всяка входно-изходна операция от отдалечената машина
|
put
|
прехвърля файл в отдалечената машина
|
pwd
|
извежда текущата пътека в отдалечената машина
|
quit
|
затваря връзката и изход от ftp
|
quote
|
изпраща управляващ низ в отдалечената машина
|
recv
|
копира файл от отдалечената машина в локалната
|
remotehelp
|
получаване на информация от отдалечен сървър
|
rename
|
смяна името на файл
|
rmdir
|
премахва се посочената директория
|
send
|
изпращане на единичен файл
|
status
|
показва се текущият статус
|
trace
|
активира проследяването на входно-изходните пакети
|
type
|
установява типа на файловия трансфер
|
user
|
данни за потребител - име и парола
|
verbose
|
извежда данни за сървъра и обменената информация
|
При FTP услугата са
възможни два вида трансфер на файлове:
- ASCII - за файлове, чието съдържание е обикновен текст, включващи и кодовете
за нов ред (CR, LF) и нова
страница (FF).
- BINARY (IMAGE) - за файлове, записани в двоичен формат. Това са
изпълнимите файлове, архивните и компресираните.
Разширенията на
файловете могат да се приемат като идентификатори на техния формат. В таблицата
отдолу са изброени най-често срещаните символични
имена на разширения за различни платформи, помощните програми за тяхната
обработка и тълкувание на тези формати.
Разширение
|
Програма
|
Коментар
|
.txt,
.TXT
|
Text
Editor
|
текстов
файл без компресия
|
.doc,
.DOC
|
Text
Editor, Word
|
текстов файл или Word документ
|
pdf
|
Acroread
|
файл в Adobe pdf
формат
|
.gz
|
gunzip
|
Unix
компресия gunzip на
файл
|
.tar
|
tar
|
стандартен,
многотомен Unix архив
|
.tar.gz
|
tar+gunzip
|
архив с
компресия Unix
|
.exe
|
self-extract-archive
|
архив с компресия за WINDOWS
|
tar.bz2
|
tar + cvfj
|
архив с
компресия Unix
|
Успешното провеждане на една FTP сесия изисква изпълнението на
определена последователност от действия.
Първото действие е активиране на програмата, поддържаща
протокола.
ftp <Internet site>
|
където, <Internet site>е адресът
на кореспондентската машина. Адресът може да бъде зададен като IP адрес или чрез символичното
име на машината, например:
ftp 194.141.5.113
|
или
ftp media.univ.acad.bg
|
След натискане на клавиш >Enter от
клавиатурата програмата прави опит да установи контакт с избраната машина. При
нормална работа на мрежата и при възможност да се установи контакт не след
дълго на екрана на клиента се появяват опознавателните редове на отдалечената
машина. Следва разпознаване на клиента по установените в сървъра правила,
например:
Connected to media.univ.acad.bg.
Unix FTP Server (Version 5.01) Ready Name (media.univ.acad.bg:user): anonymous Password: guest |
Тук се въвежда име за потребител (Name) или Ctrl/C за прекъсване на връзката. Потребителското име е
необходимо за да се открие процес за този потребител в машината. Официално
регистрираните потребители използват своите потребителски имена за достъп до
тази услуга в тази машина. За
останалите е предвидено едно обобщено име, което е:
anonymous
|
Анонимен или неизвестен съвсем не означава, че
потребителя, търсещ достъп до файловата система на сървъра, остава такъв за
него. Следващият въпрос е паролата за достъп(Password). Това
предопределя същинските права на потребителя. Регистриран потребител добива
предписаните му права, а външен потребител добива достъп до общите части на
файловия сървър. В един FTP сървър като
общи и достъпни за публиката се заделят определени части от файловото му
пространство.
Всяка изпълнена от страна на потребителя операция се
регистрира в FTP сървъра и
представлява своеобразен протокол за неговите действия. Така всеки опит за неправомерни действия
се регистрира веднага.
230 Guest connection accepted.
Restrictions apply.
Remote system type is UNIX. Using binary mode to transfer files. ftp> |
Този финален акорд от въвеждащия протокол напомня на
потребителя, че му е осигурен достъп с определени ограничения. Отсрещната
операционна система е UNIX и
установения като текущ тип трансфер на файлове е Binary.
ftp> dir
|
Въведената команда >dir извежда на
екрана на локалния компютър съдържанието на текущата директория в отдалечената
машина в пълен формат.
200 PORT command successful
150 Opening ASCII mode data connection for /bin/ls. total 2636 -rw-rw-r-- 1 0 31 4444 Mar 3 11:34 README -rw-rw-r-- 1 0 31 160384 Mar 3 11:39 INDEX dr-xr-xr-x 2 0 1 512 Feb 8 1995 bin dr--r--r-- 2 0 1 512 Feb 8 11:06 etc drwxrwsr-x 5 13 22 512 Mar 19 12:19 map drwxr-xr-x 25 1016 31 512 Apr 2 15:01 info-mac drwxrwsr-x 13 0 20 1024 Mar 4 12:20 pub drwxr-xr-x 2 1077 20 512 Feb 21 13:05 user 226 ASCII Transfer complete 549 bytes received in 0.33 seconds (1.90 Kbytes/sec) ftp> |
В средата на Unix операционна система резултатът от изпълнението на
команда " >dir" може да бъде
този, показан по-горе. Съдържанието на отделните колони се нуждае от обяснение.
Преобладаващата част от FTP сървърите са
базирани на Unix машини и
файловата им структура обикновено е сходна. Различията се отнасят предимно до
предмета и обема на съхранявана информация.
На един ред от този списък е поместена информация за
характера на файла или директорията, правата за достъп, собственика или
създателя, обема в байтове, датата на последна модификация, името на файла или
директорията в последната колона. В първа колона буква "d" означава директория, следващите
букви определят възможностите за четене, запис, изтриване или изпълнение.
Първият файл в списъка с наименование README нормално съдържа обяснения за сървъра, правата за
достъп, e_mail адрес за кореспонденция, големината
му е 4444 байта, последната му модификация е направена 3 март в 11:34 часа. При
липса на информация за годината се приема текущата. За минали години, тя е
записана на мястото на часа. За да се прочете съдържанието на този файл трябва
да се “изтегли” в локалната машина. Файлът с наименование INDEX обикновено съдържа
каталога на директория /pub. От неговото
съдържание потребителят може да се ориентира за поддържаните рубрики в FTP-сървъра. Директорията /bin е създадена
на 8 февруари 1995. Командата за изтегляне на файл е следната:
ftp> get README
|
Трябва да се има предвид, че употребата на малки или
големи букви има значение и името на файла при всяка FTP команда да се изписва по начина, по
който то е записано.
|
За трансфер на група от файлове, отговарящи на определено
условие се прилагат команди за многократно четене или запис (mget, mput):
ftp> mget *.txt
|
Всички файлове с разширение .TXT в текущата
директория на сървъра ще бъдат прехвърлени един след друг в машината на
потребителя. При активен prompt за копирането
на всеки файл ще се иска потвърждение. Дезактивирането на това условие става с
изпълнение на команда prompt. Активирането му става с повторно
изпълнение на същата команда:
ftp> prompt
Interactive mode off |
Ако избраният за трансфер файл не е текстов, то трябва
изрично да се установи Binary режим на
трансфер. Повечето сървъри разполагат с FTP продукт, автоматично определящ типа на прехвърляния
файл, но внимание, това не винаги е
така. Ако един чисто текстов файл е прехвърлен по Binary mode това не е
фатално. Появяват се проблеми с неговото четене на екран от някои редактори
поради записването му в Unix формат,
загубва се символа <CR>.
Прехвърлянето на архивен или изпълним файл по ASCII mode прави файла
неизползваем! Установяването на един от двата режима се извършва с командите BINARY или ASCII,например:
ftp> binary
200 Type set to I |
Процесът на прехвърляне на един файл може да бъде
маркиран и проследяван стъпка по стъпка, което в повечето случаи е удобно и
показва моментната скорост на обмен по мрежата. Маркировка се установява с
команда hash.
Прехвърлянето в потребителския компютър на определено количество байтове се
маркира със знак “#” на екрана. В зависимост от настройките на софтуера,
маркировка се извежда на всеки 1024, 2048 или 8192 байта.
ftp> hash
Hash mark printing On (8192 bytes/hash mark) |
Смяна на директория с връщане една стъпка назад се
извършва чрез командата:
ftp> cd ..
250 CWD command successful |
Смяна на директория с връщане в корена на дървото се
извършва чрез командата:.
ftp> cdup
250 CWD command successful |
За прекратяване на връзката със сървъра се издава
следната команда:
ftp> bye
221 Goodbye. |
Автоматизация:
Ако искате да автоматизирате
качването/свалянето на файл или файлове, можете да го
направите чрез създаването на текстов файл, съдържащ FTP команди за изпълнение. Например, за
сваляне на определен файл, се създава текстов файл със следното
съдържание:
open host
username
password
cd directory
binary
get filename
bye
Ако вашият FTP сървър е ftp.myserver.com той се изписва на мястото на host. По същия начин се изписват стойностите
и на другите параметри: username, password,directory ,filename.
Този скрипт се записва с разширение .txt (пр. getfile.txt). За да се стартира ftp и този скрипт
да проработи е необходимо да се изпише ftp -i -s:getfile.txt.
Освен FTP скрипт, може да се създаде и batch file. Пример: Създайте текстов файл getfile.bat със следното съдържание:
@echo off
ftp -i -s:getfile.txt
За да се стартира този batch файле необходимо да се изпише getfile (или getfile.bat). Batch файлът ще се стартира и ftp ще прочете FTP скрипта getfile.txt.
Изпращане и получаване на файл по FTP
За да се свалят файлове от ftp сървър на персонален компютър се
използва команда - get. ( Ако е необходимо да се свалят повече файлове, се използва команда – mget.
Пример: mget *.doc (искат се
всички файлове с разширение .doc).
Получените файлове се записват в
собствената работна директория. Ако искате да смените директорията,
в която да се получат файловете използвайте lcd командата. Например в
cmd в Windows напишете - lcd c:\windows.
Няма коментари:
Публикуване на коментар