Crates.io | which |
lib.rs | which |
version | |
source | src |
created_at | 2015-10-06 11:33:07.444737 |
updated_at | 2025-02-06 07:13:33.209772 |
description | A Rust equivalent of Unix command "which". Locate installed executable in cross platforms. |
homepage | |
repository | https://github.com/harryfei/which-rs.git |
max_upload_size | |
id | 3163 |
Cargo.toml error: | TOML parse error at line 19, column 1 | 19 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
A Rust equivalent of Unix command "which". Locate installed executable in cross platforms.
This project aims to support WebAssembly with the wasi extension. This extension is a requirement. which
is a library for exploring a filesystem, and
WebAssembly without wasi does not have a filesystem. which
cannot do anything useful without this extension. Issues and PRs relating to
wasm32-unknown-unknown
and wasm64-unknown-unknown
will not be resolved or merged. All wasm32-wasi*
targets are officially supported.
If you need to add a conditional dependency on which
for this reason please refer to the relevant cargo documentation for platform specific dependencies.
Here's an example of how to conditionally add which
. You should tweak this to your needs.
[target.'cfg(not(all(target_family = "wasm", target_os = "unknown")))'.dependencies]
which = "7.0.0"
To find which rustc executable binary is using.
use which::which;
let result = which("rustc").unwrap();
assert_eq!(result, PathBuf::from("/usr/bin/rustc"));
After enabling the regex
feature, find all cargo subcommand executables on the path:
use which::which_re;
which_re(Regex::new("^cargo-.*").unwrap()).unwrap()
.for_each(|pth| println!("{}", pth.to_string_lossy()));
This crate currently has an MSRV of Rust 1.70. Increasing the MSRV is considered a breaking change and thus requires a major version bump.
We cannot make any guarantees about the MSRV of our dependencies. You may be required to pin one of our dependencies to a lower version in your own Cargo.toml in order to compile with the minimum supported Rust version. Eventually Cargo will handle this automatically. See rust-lang/cargo#9930 for more.
The documentation is available online.