今天,我们来学习下Unix中的一些工具。我们首先介绍Unix SFTP的知识。Unix SFTP 命令是一种与 FTP 类似的替代方法,它使用 SSH 协议提供的安全通信通道。要打开 SFTP 连接,请在命令行上指定主机名: $ sftp remotehost
请记住,上面的命令假设您希望使用的登录方式与当前主机相同。要使用不同的登录方式,请将在主机名前加上用户名:$ sftp mc @remotehost
尽管Unix SFTP 的工作方式与 FTP 类似,但仍存在一些局限性和差异。例如,FTP 中的 dir 提供了一个长文件列表(请参见清单 8)。
清单 8. FTP 中的 dir 提供了一个长文件列表
- ftp> dir
- 502 'EPSV': command not understood.
- 227 Entering Passive Mode (192,168,0,110,150,159)
- 150 Opening ASCII mode data connection for directory listing.
- total 1472
- drwx------ 3 mcstaff 102 Nov 4 11:17 Desktop
- drwx------ 3 mcstaff 102 Nov 4 11:17 Documents
- drwx------ 18 mcstaff 612 Nov 5 18:01 Library
- drwx------ 3 mcstaff 102 Nov 4 11:17 Movies
- drwx------ 3 mcstaff 102 Nov 4 11:17 Music
- drwx------ 4 mcstaff 136 Nov 4 11:17 Pictures
- drwxr-xr-x 4 mcstaff 136 Nov 4 11:17 Public
- drwxr-xr-x 6 mcstaff 204 Nov 4 11:17 Sites
- drwxrwxrwx 3 root staff 102 Dec 24 07:30 tmp
- drwxr-xr-x 7 root staff 238 Dec 11 08:39 trial
- 226 Transfer complete.
在Unix SFTP 中,dir 的作用相当于主机目录列表命令的别名,它在 Unix 或 Linux 中为 ls。在缺省情况下,dir 仅提供一个简短列表(请参见清单 9)。
清单 9.Unix SFTP 中的 dir 仅提供一个简短列表
sftp> dir
DesktopDocuments LibraryMovies Music Pictures Public
Sites tmptrial
要获得长列表,请使用与 ls 相同的选项(请参见清单 10)。
清单 10. 长列表
- sftp> dir -l
- drwx------3 mc staff 102 Nov 4 11:17 Desktop
- drwx------3 mc staff 102 Nov 4 11:17 Documents
- drwx------ 18 mc staff 612 Nov 5 18:01 Library
- drwx------3 mc staff 102 Nov 4 11:17 Movies
- drwx------3 mc staff 102 Nov 4 11:17 Music
- drwx------4 mc staff 136 Nov 4 11:17 Pictures
- drwxr-xr-x4 mc staff 136 Nov 4 11:17 Public
- drwxr-xr-x6 mc staff 204 Nov 4 11:17 Sites
- drwxrwxrwx3 root staff 102 Dec 24 07:30 tmp
- drwxr-xr-x7 root staff 238 Dec 11 08:39 trial
其他命令,如更改目录(cd,本地为 lcd)、创建目录(mkdir)以及发送(put)和接收(get)文件保持不变。
后两个命令 put 和 get 都接受通配符(类似于 FTP 中的 mput 和 mget),但在Unix SFTP 中传输不带通配符的多个文件时要小心。例如,sftp> mget file1 file2 file3 被识别为试图获取 file1 和 file2,并将它们放置在本地目录 file3 中,但该目录可能不存在。
【编辑推荐】