psftp的用法(超级详细)

本文介绍PSFTP客户端的基本操作,包括启动、登录、文件传输、路径切换等常用命令,以及权限设置、文件重命名等高级功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 PSFTP是PuTTY SFTP客户端,用于本地与服务器间安全传输文件(使用SSH连接)。

  1. 启动PSFTP

  在Windows命令提示符中输入

  set PATH=C:/PSFTP.exe所在路径;%PATH%

  之后,用psftp登录服务器

  psftp username@server.example.com

  也可以直接双击运行psftp.exe,命令提示符中出现以下信息

  psftp: no hostname specified; use "open host.name" to connect

  psftp>

  这时用open命令登录服务器

  open username@server.example.com

  2. PSFTP

  2.1 文件名中有空格时使用双引号

  如”space name.txt”

  2.2 使用通配符

  * 代替任何字串

  ? 替代一个字母

  [abc] 在a b c范围内替代一个字母

  [a-z] 在a到z范围内替代一个字母

  [^abc] 替代一个字母,不包括a b cmatches a single character that is not a, b, or c.

  [-a] 代表连接号(-)

  [a^] 代表脱字符号(^)

  / 放在上面的所有通配符之前,以取消其(通配符)涵义

  (文件夹名称不支持通配符)

  2.3 open, quit, close, help命令

  从名字就可以知道它们的作用了。其中quit是关闭PSFTP(bey和exit与quit相同),close是切断连接但不关闭PSFTP。

  2.4 cd, pwd, lcd, lpwd命令

  你已经知道cd和pwd是干什么的了,它们在远程服务器上工作。lcd和lpwd是在cd和pwd前加了Local,就是本地机器的改变路径和显示路径。也可以用!cd, !pwd来实现lcd, lpwd。

  2.5 get, put命令

  拿和放,象形命令:),代表下载和上传。

  get something.txt

  get something.txt another.txt

  上面的代码第一行代表下载something.txt,第二行代表下载something.txt,并重命名为another.txt。上传以此类推

  put something.txt

  put something.txt another.txt

  如果是下载上传文件夹,加上那个递归符号 -r

  get -r mydir newname

  put -r mydir newname

  可以直接输入文件或文件夹的绝对路径下载上传,就不用老打cd, lcd命令了。

  2.6 mget, mput, reget,reput命令

  可以理解为Multiple get, Multiple put,用来一次下载或上传多个文件和文件夹。除了不可以重命名文件或文件夹,其它参数和get, put一样。

  re是resume的简写,那么它们就是续传命令了。

  2.7 dir, del, mkdir rmdir命令

  dir就是ls;del是rm,但不可以删除文件夹;mkdir还是原来的意思(建立文件夹);rmdir是删除文件夹(某些服务器不允许删除非空文件夹,得现删除其中的文件才行)。

  2.8 chmod命令

  其参数u, g, o, a, +, -, r, w, x涵义分别是:

  u (the owning user)文档所有者

  g (members of the owning group)组成员

  o (everybody else - ‘others’)其它所有人

  a (‘all’, everyone)所有人

  + 加上(授予)

  - 减去(剥夺)

  r (permission to read the file)读

  w (permission to write to the file)写

  x (permission to execute the file)运行

  chmod go-rwx,u+w privatefile

  上面代码的涵义是剥夺组成员及其它任何人的读写运行权限,授予文件所有者写权限也(也就是私人文档)

  chmod a+r public*

  上面代码的涵义授予所有人读权限(也就是公开公开公开)

  直接用权限数字代码也可以

  chmod 640 groupfile1 groupfile2

  2.9 mv命令

  如果使用mv是更改文件或文件夹名称,也可以使用ren, rename命令

  2.10 !命令

  在上面的命令前加上叹号!,则在本地机器操作

### 虚拟机文件传输方法概述 虚拟机中的文件传输可以通过多种方式进行实现,具体取决于所使用的虚拟机平台以及操作系统环境。以下是几种常见的文件传输方式及其特点: #### 1. **共享文件夹** 共享文件夹是一种通过虚拟机软件内置功能来实现主机与虚拟机之间的文件交换的方式[^1]。此方法通常依赖于虚拟机软件(如 VMware 或 VirtualBox)提供的共享目录支持。配置完成后,可以在虚拟机中挂载指定的主机路径作为本地存储设备。 对于 VMware 用户而言,在版本 17 及以后,由于取消了部分传统磁盘映射功能,因此建议优先考虑使用共享文件夹完成日常文件传递需求。 #### 2. **PSFTP 工具** 针对 Linux 类型虚拟机用户,可以借助 PSFTP 这一基于 SSH 的客户端工具快速上传下载文件至远程服务器或者本机实例内部[^2]。相比其他手段来说更加灵活高效,并且无需额外设置复杂的网络参数即可达成目标操作。 例如,要将 Windows 上的一个名为 `example.txt` 的文档发送给 CentOS 中运行的服务端程序,则只需执行如下指令序列: ```bash put C:\path\to\your\file\example.txt /destination/folder/ ``` > 注意:首次启动前应确认服务已开启状态;如果遇到权限不足错误提示,请尝试切换超级管理员身份重试一次上述过程。 #### 3. **SSH 协议配合 Xshell 使用** 当涉及到跨平台交互场景时(比如从一台物理PC访问远端部署好的Ubuntu桌面版),则可通过安装并配置好 OpenSSH Server 后再结合图形界面友好的终端模拟器——像这里提到过的Xshell 来简化整个流程[^3]。 一旦建立稳定连接后就可以直接拖拽所需资源过去啦! 当然除此之外还有诸如SCP命令行脚本自动化处理大批量数据迁移任务等等高级玩法可供探索学习哦~ --- ### 提供一段 Python 实现 SCP 功能的小例子以便参考理解原理层面的东西: ```python import paramiko def scp_file_to_vm(hostname, port, username, password, local_path, remote_path): try: transport = paramiko.Transport((hostname, int(port))) transport.connect(username=username, password=password) sftp = paramiko.SFTPClient.from_transport(transport) # Upload file to VM sftp.put(local_path, remote_path) print(f'File {local_path} successfully uploaded to {remote_path}') sftp.close() transport.close() except Exception as e: print('An error occurred:', str(e)) # Example usage of the function above scp_file_to_vm('localhost', '22', 'root', 'mypassword!', './test_local.txt', '/home/user/test_remote.txt') ``` ---
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值