write FTP URLs in file name text fields or when using the command line application?
According to the specification of URL formats (
RFC 1738
), an FTP
URL is of the form
ftp://<
user>:<
password>@<
host>:<
port>/<
url-path>
If you
wish to access a FTP server with SSL support, the URL must
start with "ftps" instead of "ftp".
Some or all of the parts "<
user>:<
password>@", ":<
password>", ":<
port>", and "/<
url-path>" may be excluded.
The different components obey the following rules:
user An optional user name.
password An optional password. If present, it follows the user
name separated from it by a colon.
The user name (and password), if present, are followed by a
commercial at-sign "@". Within the user and password field, any
":", "@", or "/" must be encoded.
An empty
user name or password is different than no user name or
password; there is no way to specify a password without
specifying a user name. E.g., <URL:ftp://@host.com/> has
an empty user name and no password, <URL:ftp://host.com/>
has no user name, while <URL:ftp://foo:@host.com/> has a
user name of "foo" and an empty password.
host The fully qualified domain name of a network host, or
its IP address as a set of four decimal digit groups
separated by ".". Fully qualified domain names take the form
as described in Section 3.5 of RFC 1034 [13] and Section 2.1
of RFC 1123 [5]: a sequence of domain labels separated by
".", each domain label starting and ending with an
alphanumerical character and possibly also containing "-"
characters. The rightmost domain label will never start with
a digit, though, which syntactically distinguishes all domain
names from the IP addresses.
port The port number to connect to. If the port is omitted,
the colon is as well.
url-path The rest of the locator supplies the details of how the
specified resource can be accessed. Note that the "/" between
the host (or port) and the url-path is NOT part of the
url-path.
The url-path of a FTP URL has the following syntax:
<
cwd1>/<
cwd2>/.../<
cwdN>/<
name>
Where <
cwd1> through <
cwdN> and <
name> are (possibly encoded) strings.
The <
cwdx> and <
name> parts may be empty. The whole
url-path may be omitted, including the "/" delimiting it from
the prefix containing user, password, host, and port.