Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

Self-Replace: A Utility For Self Replacing Executables

Crates.io License rustc 1.63.0 Documentation

self-replace is a crate that allows binaries to replace themselves with newer versions or to uninstall themselves. On Unix systems this is a simple feat, but on Windows a few hacks are needed which is why this crate exists.

This is a useful operation when working with single-executable utilties that want to implement a form of self updating or self uninstallation.

For details about the implementation refer to the documentation.

If you are looking for some higher level update logic, have a look at self_update which uses self-replace under the hood but provides automatic updating from GitHub releases or other distribution channels. Note that self_update is maintained by other maintainers.

Uninstall

To uninstall a binary, use self_delete.

self_replace::self_delete()?;

Updating

To replace a binary for updating, use self_replace.

let new_binary = "/path/to/new/binary";
self_replace::self_replace(&new_binary)?;
std::fs::remove_file(&new_binary)?;

License and Links

关于 About

Utility library that helps to implement processes that replace themselves

语言 Languages

Rust93.2%
Batchfile2.7%
Shell2.6%
Makefile1.5%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
1
Total Commits
峰值: 1次/周
Less
More

核心贡献者 Contributors