中文 | English
目录SyncClipboard.Server支持跨平台运行,依赖ASP.NET Core 8.0,安装ASP.NET Core 运行时
后,通过以下命令运行
dotnet /path/to/SyncClipboard.Server.dll --contentRoot ./
工作目录与dll所在目录一致,需要写入权限。如需修改工作目录,拷贝一份appsettings.json
到新工作目录并修改--contentRoot
后的路径
服务器通过appsettings.json
文件配置,形式如下:
如需启用HTTPS,请取消https
和Certificates
部分的注释,并设定HTTPS证书路径。最后将http
部分注释或删除以关闭不安全的连接。如需同时启用HTTP和HTTPS,请将二者Url
设置为不同的端口号
不同类型证书的配置方法可以参考微软官方文档
用户名和密码支持使用环境变量配置,当环境变量SYNCCLIPBOARD_USERNAME
、SYNCCLIPBOARD_PASSWORD
均不为空时,将优先使用这两个环境变量作为用户名和密码
环境变量ASPNETCORE_hostBuilder__reloadConfigOnChange
用于配置是否自动识别appsettings.json变动并重载配置,默认值为false
,修改为任何非false
值后会启用此功能
Warning
HTTP使用明文传输,在公共网络部署服务器请启用HTTPS或使用反向代理工具配置HTTPS。无法从证书颁发机构获取证书时,推荐使用开源工具mkcert或其他方式生成自签名证书
# docker docker run -d \ --name=syncclipboard-server \ -p 5033:5033 \ -e SYNCCLIPBOARD_USERNAME=your_username \ -e SYNCCLIPBOARD_PASSWORD=your_password \ --restart unless-stopped \ jericx/syncclipboard-server:latest # docker compose curl -sL https://github.com/Jeric-X/SyncClipboard/raw/master/src/SyncClipboard.Server/docker-compose.yml docker compose up -d
如需配置HTTPS,请自行映射appsettings.json
和证书文件,appsettings.json
的容器内路径为/app/appsettings.json
paru -Sy syncclipboard-server
配置文件路径为/etc/syncclipboard/appsettings.json
,修改配置后使用systemctl
命令启动即可:
sudo systemctl enable --now syncclipboard.service
桌面客户端(Windows/Linux/macOS)内置了服务器功能,可以使用可视界面配置
可以使用支持WebDAV协议的网盘作为服务器
测试过的服务器:
桌面客户端(Windows/Linux/macOS)运行在后台时将自动同步剪贴板
展开/折叠截图在Release页面下载名字以SyncClipboard_win_
开头的zip文件,解压后运行SyncClipboard.exe
在Release页面下载名字以SyncClipboard_macos_
开头的安装包,双击后拖动SyncClipboard图标到Applications文件夹
由于开发者无法验证,“SyncClipboard”无法打开
: 在macOS的设置
->隐私与安全性
页面,点击仍要打开
“SyncClipboard”已损坏,无法打开
:在终端中执行sudo xattr -d com.apple.quarantine /Applications/SyncClipboard.app
在Release页面下载名字以SyncClipboard_linux_
开头的安装包
Arch Linux 用户可以直接从AUR安装(由 @devome 维护):
paru -Sy syncclipboard-desktop
安装后从菜单中启动即可。如果在命令行中使用命令syncclipboard-desktop
启动报错,请将环境变量LANG
设置为en_US.UTF-8
,以LANG=en_US.UTF-8 syncclipboard-desktop
来启动。
xclip
(X11)或wl-clipboard
(Wayland),SyncClipboard会使用这些工具辅助获取剪贴板以增强稳定性。使用xclip -version
或wl-paste -version
命令确认是否已安装deb
、rpm
安装包时,升级安装失败时,请先删除旧版再安装新版AppImage
包时,请确认AppImage文件具有可执行权限Note
需要彻底删除SyncClipboard时请手动删除配置文件和临时文件目录:%AppData%\SyncClipboard\
(Windows),~/Library/Application Support/SyncClipboard/
(macOS),~/.config/SyncClipboard/
(Linux)
关闭已经运行的SyncClipboard,运行新的实例
运行指定命令,{command-name}
为命令名称,设置快捷键后,在配置文件中可以查看对应的命令名称,即使清除快捷键配置,命令行参数仍然有效
当存在已经运行的SyncClipboard时,不会启动新的实例,而是调用已经运行的SyncClipboard执行命令。当不存在已经运行的SyncClipboard时,将在启动完成后立刻执行命令
支持多个--command-{command-name}
参数,多个命令同时执行
Note
macOS使用命令行参数时,请使用可执行程序的完整路径/Applications/SyncClipboard.app/Contents/MacOS/SyncClipboard.Desktop.MacOS
导入这个配置文件,修改变量
中的UserName
,UserToken
,url
, url
不要以斜线分隔符/
结尾。HTTP Request Shortcuts
支持从下拉菜单、桌面组件、桌面图标、分享菜单中使用
导入js文件、修改每个文件头部的用户配置后,手动点击运行,或者为每个js文件设置触发方式,例如:开机时触发
Tasker是一款安卓系统上非常强大的自动化工具软件,你可以根据SyncClipboard的API创建适合自己的配置文件,如果你认为你的配置文件非常通用并希望分享出来,欢迎联系我置于此处
全平台依赖三条必要配置(配置的拼写可能会有所不同,含义相同)。
https://domain.com/dav/folder1/working%20folder
,特殊符号需要使用url转义字符代替,不要使用这个文件夹存储其他文件。不使用桌面客户端(Windows/Linux/macOS)时需在工作目录中再创建file
文件夹以同步文件,桌面客户端会在设置服务器时自动创建file
文件夹。url尽量不要以斜线分隔符/
结尾,在部分客户端中会出现问题。API基于WebDAV,在独立服务器运行环境下设定环境变量ASPNETCORE_ENVIRONMENT为Development后运行服务器,或桌面客户端打开服务器并打开设置里的诊断模式后, 访问http://ip:端口/swagger/index.html
可以打开API页面,以下是部分关键API
GET /SyncClipboard.json
PUT /SyncClipboard.json
GET /SyncClipboard.json
HEAD /file/filename // optional
GET /file/filename
PUT /file/filename
PUT /SyncClipboard.json
{
"Type" : "Text"
"Clipboard" : "Content",
"File":""
}
{
"Type": "Image", // or "File", "Group"
"Clipboard": "hash, optional",
"File": "filename"
}
NativeNotification
Magick.NET
.NET Community Toolkit
H.NotifyIcon
WinUIEx
moq
Avalonia
FluentAvalonia.BreadcrumbBar
FluentAvalonia
Vanara
Tmds.DBus
SharpHook
DotNetZip.Semverd
Quartz.NET
MiSans
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4