Unix/Linux - 网络通信实用程序



在本章中,我们将详细讨论 Unix 中的网络通信实用程序。在分布式环境中工作时,您需要与远程用户通信,并且还需要访问远程 Unix 机器。

有几个 Unix 实用程序可以帮助用户在网络化、分布式环境中进行计算。本章列出了其中的一些。

ping 实用程序

ping 命令向网络上可用的主机发送回显请求。使用此命令,您可以检查远程主机是否正常响应。

ping 命令适用于以下情况:

  • 跟踪和隔离硬件和软件问题。
  • 确定网络和各种外部主机的状态。
  • 测试、测量和管理网络。

语法

以下是使用 ftp 命令的简单语法:

$ping hostname or ip-address

上述命令每秒钟开始打印一次响应。要退出命令,您可以按CNTRL + C键终止它。

示例

以下是一个检查网络上可用主机的可用性的示例:

$ping google.com
PING google.com (74.125.67.100) 56(84) bytes of data.
64 bytes from 74.125.67.100: icmp_seq = 1 ttl = 54 time = 39.4 ms
64 bytes from 74.125.67.100: icmp_seq = 2 ttl = 54 time = 39.9 ms
64 bytes from 74.125.67.100: icmp_seq = 3 ttl = 54 time = 39.3 ms
64 bytes from 74.125.67.100: icmp_seq = 4 ttl = 54 time = 39.1 ms
64 bytes from 74.125.67.100: icmp_seq = 5 ttl = 54 time = 38.8 ms
--- google.com ping statistics ---
22 packets transmitted, 22 received, 0% packet loss, time 21017ms
rtt min/avg/max/mdev = 38.867/39.334/39.900/0.396 ms
$

如果主机不存在,您将收到以下输出:

$ping giiiiiigle.com
ping: unknown host giiiiigle.com
$

ftp 实用程序

这里,ftp 代表File Transfer Protocol。此实用程序可帮助您将文件从一台计算机上传和下载到另一台计算机。

ftp 实用程序具有自己的一套类 Unix 命令。这些命令可帮助您执行以下任务:

  • 连接并登录到远程主机。

  • 浏览目录。

  • 列出目录内容。

  • 上传和下载文件。

  • 将文件传输为asciiebcdicbinary

语法

以下是使用 ftp 命令的简单语法:

$ftp hostname or ip-address

上述命令将提示您输入登录 ID 和密码。验证身份后,您可以访问登录帐户的主目录,并且可以执行各种命令。

下表列出了一些重要的命令:

序号 命令和描述
1

put filename

将 filename 从本地机器上传到远程机器。

2

get filename

将 filename 从远程机器下载到本地机器。

3

mput file list

将多个文件从本地机器上传到远程机器。

4

mget file list

将多个文件从远程机器下载到本地机器。

5

prompt off

关闭提示。默认情况下,您将收到使用mputmget 命令上传或下载文件的提示。

6

prompt on

打开提示。

7

dir

列出远程机器当前目录中所有可用的文件。

8

cd dirname

将远程机器上的目录更改为 dirname。

9

lcd dirname

将本地机器上的目录更改为 dirname。

10

quit

帮助注销当前登录。

需要注意的是,所有文件都将下载或上传到或从当前目录。如果要将文件上传到特定目录,则需要先更改到该目录,然后上传所需文件。

示例

以下示例显示了一些命令的工作原理:

$ftp amrood.com
Connected to amrood.com.
220 amrood.com FTP server (Ver 4.9 Thu Sep 2 20:35:07 CDT 2009)
Name (amrood.com:amrood): amrood
331 Password required for amrood.
Password:
230 User amrood logged in.
ftp> dir
200 PORT command successful.
150 Opening data connection for /bin/ls.
total 1464
drwxr-sr-x   3 amrood   group       1024 Mar 11 20:04 Mail
drwxr-sr-x   2 amrood   group       1536 Mar  3 18:07 Misc
drwxr-sr-x   5 amrood   group        512 Dec  7 10:59 OldStuff
drwxr-sr-x   2 amrood   group       1024 Mar 11 15:24 bin
drwxr-sr-x   5 amrood   group       3072 Mar 13 16:10 mpl
-rw-r--r--   1 amrood   group     209671 Mar 15 10:57 myfile.out
drwxr-sr-x   3 amrood   group        512 Jan  5 13:32 public
drwxr-sr-x   3 amrood   group        512 Feb 10 10:17 pvm3
226 Transfer complete.
ftp> cd mpl
250 CWD command successful.
ftp> dir
200 PORT command successful.
150 Opening data connection for /bin/ls.
total 7320
-rw-r--r--   1 amrood   group       1630 Aug  8 1994  dboard.f
-rw-r-----   1 amrood   group       4340 Jul 17 1994  vttest.c
-rwxr-xr-x   1 amrood   group     525574 Feb 15 11:52 wave_shift
-rw-r--r--   1 amrood   group       1648 Aug  5 1994  wide.list
-rwxr-xr-x   1 amrood   group       4019 Feb 14 16:26 fix.c
226 Transfer complete.
ftp> get wave_shift
200 PORT command successful.
150 Opening data connection for wave_shift (525574 bytes).
226 Transfer complete.
528454 bytes received in 1.296 seconds (398.1 Kbytes/s)
ftp> quit
221 Goodbye.
$

telnet 实用程序

有时我们需要连接到远程 Unix 机器并在该机器上远程工作。Telnet 是一种实用程序,允许一个站点上的计算机用户建立连接、登录,然后在另一个站点上的计算机上进行工作。

使用 Telnet 登录后,您可以在远程连接的机器上执行所有活动。以下是 Telnet 会话的示例:

C:>telnet amrood.com
Trying...
Connected to amrood.com.
Escape character is '^]'.

login: amrood
amrood's Password: 
*****************************************************
*                                                   *
*                                                   *
*    WELCOME TO AMROOD.COM                          *
*                                                   *
*                                                   *
*****************************************************

Last unsuccessful login: Fri Mar  3 12:01:09 IST 2009
Last login: Wed Mar  8 18:33:27 IST 2009 on pts/10

   {  do your work }

$ logout
Connection closed.
C:>

finger 实用程序

finger 命令显示给定主机上用户的信息。主机可以是本地的或远程的。

出于安全原因,其他系统上的 Finger 可能被禁用。

以下是使用 finger 命令的简单语法:

检查本地机器上所有已登录的用户:

$ finger
Login     Name       Tty      Idle  Login Time   Office
amrood               pts/0          Jun 25 08:03 (62.61.164.115)

获取本地机器上特定用户的信息:

$ finger amrood
Login: amrood                           Name: (null)
Directory: /home/amrood                 Shell: /bin/bash
On since Thu Jun 25 08:03 (MST) on pts/0 from 62.61.164.115
No mail.
No Plan.

检查远程机器上所有已登录的用户:

$ finger @avtar.com
Login     Name       Tty      Idle  Login Time   Office
amrood               pts/0          Jun 25 08:03 (62.61.164.115)

获取远程机器上特定用户的信息:

$ finger [email protected]
Login: amrood                           Name: (null)
Directory: /home/amrood                 Shell: /bin/bash
On since Thu Jun 25 08:03 (MST) on pts/0 from 62.61.164.115
No mail.
No Plan.
广告