最近遇到很多刚接触虚拟机学习Linux的小伙伴,大家需要实现Windows和Linux系统间的文件互传。笔者将分享一种简单的方法。

环境配置

  • 虚拟机:VMware Workstation Pro 17.5.2
  • Linux系统:Ubuntu 22.04 LTS
  • Windows系统:Windows 11 22H2

Windows部分:

首先在桌面创建一个文件夹

然后右键文件夹,点击属性,选择共享,打开高级共享

直接选择共享此文件夹,点击确定,会显示共享式:

windows部分就完成啦!

然后我们打开虚拟机

选择虚拟机,打开设置

点击选项,双击共享文件夹,打开总是启用,然后点击添加。

点击下一步,点击浏览,并且找到刚刚的文件夹(这里为了演示方便放在桌面,具体路径自己选择哟)

点击下一步,启用共享并完成,并且点击确定

虚拟机设置完成啦!

Linux部分

打开虚拟机

点击文件图标, 按照图片顺序点击

找到mnt文件夹并且双击

一般都会有hgfs文件夹

如果没有也没有关系

双击进去你会发现没有文件夹

这时候在空白区域右键,打开终端

如果有hgfs文件夹,运行:

sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other

如果没有该文件夹,运行:

sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt -o allow_other

你就会看到你设置的共享文件夹啦!

恭喜你解锁互传文件!!!

快捷脚本

当然,我们解锁共享文件夹后会发现,每次互传文件夹会经过这么多步骤,实在麻烦,笔者提供了一个解决方案——脚本。

首先打开终端

依次运行以下指令

cd ~
mkdir bin
cd bin/
touch share
sudo apt-get install gedit
gedit share

将该文本复制粘贴到share文件中(如果没有hgfs文件夹,记得将 /mnt/hgfs/share folder/ 修改为 /mnt/share folder/ ,以及 /mnt/hgfs 修改为 /mnt)

#!/usr/bin/env bash

share () {
    local dest_dir="/mnt/hgfs/share folder/"
    local usage="Usage: ${0##*/} <filename1> [filename2 ...]"
    sudo mount -t fuse.vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other

    # 参数检查
    if [[ $# -eq 0 ]]; then
        echo "Error: Missing file arguments"
        echo "$usage"
        return 1
    fi

    # 检查目标目录是否存在
    if [[ ! -d "$dest_dir" ]]; then
        echo "Error: Destination directory $dest_dir does not exist"
        return 2
    fi

    # 处理所有文件参数
    local file
    for file in "$@"; do
        if [[ -e "$file" ]]; then
            if cp -rv "$file" "$dest_dir"; then
                echo "Success: $file copied to $dest_dir"
            else
                echo "Error: Failed to copy $file" >&2
            fi
        else
            echo "Error: File $file does not exist" >&2
        fi
    done
}
share "$@"

保存并退出

运行该命令查看当前工作目录(后面要用到)

pwd

然后运行一下命令

cd ~
gedit .bashrc

在文件末尾添加一下内容(先前的工作目录)

export PATH=$PATH:/home/<你的用户名>/bin

保存并退出。

在以后,如果你想要在linux分享文件到Windows,只需要在终端输入,就能够在Windows看到文件夹啦。

share <文件名>

操作演示:

我想要将share文件分享到Windows,只需运行。

share share

分享成功!!!

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐