LocalSend: 面向Linux开发者的文件共享
[[academy-video-youtube({"vid": "0LTwT-iSs3U", "start_time": "0", "title": "LocalSend: AirDrop for Every Platform", "creator": "Tim Corey", "length": "8m 20s"})]]
跨多个机器工作在跨平台开发中是常态。 您在Windows桌面上保存了一个命令,您需要在Linux计算机上使用。 一个配置文件存在于笔记本电脑上,但您正在虚拟机上进行测试。 通常的解决方法(向自己发送电子邮件、上传到云端存储、配置网络共享)都会给本该简单的事情增加摩擦。
在他的视频"LocalSend: AirDrop for Every Platform"中,Tim Corey介绍了LocalSend,这是一款免费开源的工具,可以在您的本地网络内在任意设备之间传输文件和文本,而无需触及云端。 我们将介绍如何通过Flatpak在Linux上安装它、配置设备名称以及在Windows机器和Linux桌面之间发送文本和文件。如果您在操作系统之间工作(甚至仅在手机和计算机之间),这是您工具包的实用补充。
现有文件传输选项的问题
[0:00 - 0:30] 在介绍工具之前,Tim回顾了开发者常用的常见解决方法以及每种方法的不足。 Microsoft Teams有一个自我消息通道,但它要求双方都安装Teams。 向自己发送电子邮件是可行的,但会弄乱您的收件箱并增加不必要的步骤。 网络共享可以完成任务,但涉及配置权限,在不同操作系统之间会变得复杂。
开发者真正需要的是更接近苹果AirDrop的东西:选择内容,选择目标设备,然后发送。 LocalSend适用于Windows,macOS,Linux,iOS和Android。
什么是LocalSend?
[1:01 - 1:46] LocalSend可以在localsend.org上使用,处理的是设备之间通过您的LAN进行共享,无需通过外部服务器传输。 所有内容都留在您的网络中。
与基于云的替代方案(OneDrive, Google Drive, Dropbox)的关键区别在于,数据不会离开您的本地环境。 对于处理源代码、凭据或大型二进制文件的开发者来说,这是一个重要的隐私和速度优势。 Tim强调这个工具没有赞助; 这是真诚的推荐,基于它在系列中涵盖的跨平台开发工作流程中的实用性。
通过Flatpak在Linux上安装LocalSend
[2:46 - 3:54] LocalSend下载页面为每个平台提供二进制文件。 在Linux上,推荐的方法是使用软件包管理器。 Tim选择Flatpak安装,这需要两个命令。
网站提供了一个复制按钮,因此完整的安装命令可以直接粘贴到终端中:
// Flatpak install (two commands combined)
flatpak install flathub app.localsend.localsend_app// Flatpak install (two commands combined)
flatpak install flathub app.localsend.localsend_app安装程序会提示确认两次:一次是批准软件包,一次是接受所需的更改。 之后,LocalSend安装完毕并准备启动。
一旦安装完成,将其固定到任务栏以便快速访问。 Tim关闭了从终端启动的实例,并从应用菜单中重新打开它,以便它独立运行。
配置设备名称
[4:11 - 4:36] 默认情况下,LocalSend会分配一个随机设备名称(类似于"Fantastic Orange")。 因为您将要从列表中选择设备以发送内容,所以描述性名称很重要。 Tim打开设置并将其更改为"Tim的Linux桌面",然后重新启动LocalSend服务器以应用更改。
服务器重启值得了解。 LocalSend在每个设备上运行一个轻量级服务器,这就是网络上的其他设备如何发现它的。 每个实例既是服务器(可发现且准备好接收),也是客户端(能够浏览并发送到其他设备)。 当您关闭LocalSend时,服务器停止,您的设备从网络中消失。
在机器间发送文本
[4:48 - 5:42] 在Linux桌面和Windows PC上运行LocalSend时,每个设备出现在对方的设备列表中。Tim展示了最简单的用例:从Windows发送一个文本片段到Linux。
在Windows机器上,他在文本字段中输入"hello world",从附近设备列表中选择Linux桌面,然后点击发送。 文本立即出现在Linux机器上,并带有一个复制按钮。 开发人员在机器间传输 shell命令、连接字符串或代码片段时,这完全消除了通过电子邮件或云存储的往返。
在机器间发送文件
[5:42 - 7:04] 文件传输的工作方式相同。 从Windows机器上,Tim选择一个TIFF格式的头像图片(925 MB)并将其发送到Linux桌面。接收机器提示接受传入的传输,然后才开始下载。
该接受提示是一项有意的安全功能。 网络上的设备无法未经您的明确批准向您的机器推送文件。 一旦接受,文件直接在两台机器之间下载。 没有云服务器参与,这意味着传输速度仅受您的局域网带宽限制,而不受您的互联网连接限制。 gigabit网络中的925 MB文件只需几秒钟,而不是通过云上传/下载周期所需的几分钟。
桌面之外的用例
[7:24 - 8:00] Tim强调了几个场景,其中LocalSend在视频中显示的双桌面设置之外证明有用。 如果您正在运行虚拟机,不想与主机配置共享文件夹,LocalSend可以在没有任何虚拟机特定设置的情况下处理传输。手机到桌面的传输取代了上传到OneDrive并再次下载的通常流程。 对于下一集即将推出的Docker和SQL工作流程,快速在机器间移动命令和配置文件的方式消除了一个摩擦来源。
该工具支持文件、文件夹、文本和剪贴板内容。 在您需要时打开它,不需要时关闭。 当应用程序不活跃时,没有后台服务在运行。
总结:一个消除实际摩擦的小工具
[7:51 - 8:11] LocalSend解决了大多数开发者绕过而不是修复的问题。 安装不到一分钟,界面一目了然,并且涵盖您可能遇到的每个平台组合。 对于任何跨操作系统工作的用户(这是本Linux上的C#系列的全部基础),它消除了一类日常摩擦,随着时间的推移会累积。
结论
[8:11 - 8:20] 总结一下:LocalSend是一个免费的、开源的、跨平台的文件和文本传输工具,通过您的本地网络工作,没有云依赖。 通过Flatpak在Linux上安装,设置一个易于识别的设备名称,并开始在Windows、macOS、Linux、iOS和Android设备之间发送内容。
如果您正在设置跨平台开发环境,这是值得与您的SDK和编辑器一起安装的首个实用程序之一。
示例提示:如果您经常在机器间传输shell命令或代码片段,请使用LocalSend的文本模式,而不是先保存到文件。将命令粘贴到发送机器上,发送它,并在接收端复制。 比创建临时文件更快,并且避免在两台机器上保留孤立的文本文件。
在他的YouTube频道上观看完整视频,获得更多有关跨平台开发工作流的见解。

