dirsearch
Usage
Article
ăăă«ăĄăŻă@ekusiadadusă§ăă CLI ăăŒă«äœăŁăŠăăŸăăïŒ CLI ăăŒă«ă Rust ă§äœăăšăă«ăæŻćç°ćąăæŽăăăźăéąćă ăŁăăźă§ăăăłăăŹăäœăăŸăăă ä»ćăŻăăźăăłăăŹăäœżăŁăŠăç°ĄæçăȘ CLI ăăŒă«ă Rust ă§çéă§äœăŁăŠăżăŸăă
ăăłăăŹăŒăăŻăăĄăă§ăă https://github.com/ekusiadadus/rust-cli-template
ä»ćäœăăłăăłăă©ă€ăłăăŒă«ăŻăăĄăă§ăă https://github.com/ekusiadadus/dirsearch
ăăłăăŹăäœżăŁăŠ CLI ăăŒă«ăäœă
ä»ćăŻăăăăăăăŁăŹăŻăăȘé äžă«ććšăăăă©ă«ăăăăĄă€ă«ăźæ°ăšăăźć€§ăăăèĄšç€șăă CLI ăăŒă«ăçéă§äœăŁăŠăżăŸăă
ăăłăăŹăăŻăăŒăłăă
ăŸăăŻăăăłăăŹăăŻăăŒăłăăŸăă
cargo run
ă§ćźèĄăăŠăżă
ăăłăăŹăäœżăă«ăŻăăăłăăŹăźăăŁăŹăŻăăȘă«ç§»ćăăŠăcargo run
ăćźèĄăăŸăă
ăăŸăăăă°ăăăăȘæăă§ărust-cli-template
ăšăăććăź CLI ăăŒă«ăćźèĄăăăŸăă
æąă«ăăźæź”éă§ăcargo run
㧠CLI ăăŒă«ăćźèĄă§ăăç°ćąăæŽăŁăŠăăŸăă
(äœè«) mold + cargo watch ăäœżă
mold + cargo watch ăŻäœżăăȘăăŠăăăă§ăăă仄äžăźçčă§äŸżć©ă§ăă
- ăăăăȘăăŒăăăăéçșç°ćą
- ăă«ăăéăăȘă
ăăăèŸșăŻăćèèšäșăèČŒăŁăŠăăăźă§ăăăăăŁăăäœżăŁăŠăżăŠăă ăăă
https://keens.github.io/blog/2021/12/20/moldwotsukautorustnobirudogahayakunaru/
https://qiita.com/kyamamoto9120/items/2081bc44c6c987b9ec29
ä»ćăźć Žćăcargo watch -s 'mold -run cargo run'
ă§ăăăăȘăăŒăă§ăăç°ćąă«ăăŠăăŸăă
Makefile ăèŒăăŠăăăźă§ămake watch
ă§ćăăŸăă
äżćăăăšèȘćçă«ăă«ăăăăŠăćźèĄăăăŸăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ăăă©ă«ăăźæ°ăšć€§ăăăèĄšç€șăă
walkDir ăäœżăŁăŠăăăŁăŹăŻăăȘé äžăźăăĄă€ă«ăăă©ă«ăăźæ°ăšć€§ăăăèĄšç€șăăăăă«ăăŸăă
walkDir ăă€ăłăčăăŒă«ăă
walkdirăă€ăăăŸăă
walkDir ăäœżăă«ăŻăuse walkdir::WalkDir;
ăèżœć ăăŸăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ăăă©ă«ăăććŸăă
use WalkDir;
cargo run
ă§ćźèĄăăăšăăăŁăŹăŻăăȘé
äžăźăăĄă€ă«ăăă©ă«ăăèĄšç€șăăăŸăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ăăă©ă«ăăźæ°ăšć€§ăăăèĄšç€șăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ăšăăă©ă«ăăè”°æ»ăăŠăăăĄă€ă«ăźæ°ăšć€§ăăăèĄšç€șăăăăă«ăăŸăă walkdir ăäœżăăšéćžžă«ç°Ąćă«ăăĄă€ă«ăšăă©ă«ăăè”°æ»ă§ăăŸăă
use WalkDir;
const DIR: &str = "./";
ćźéă«cargo run
ă§è”°ăăăŠăżăăšăăăȘæăă
çŸćšăźăăŁăŹăŻăăȘé
äžă«ăŻă626 ćăźăăĄă€ă«ăććšăăŠăç·ćă§304742935 bytes
ăźć€§ăăă«ăȘăăăšăăăăăŸăă
(äœè« 2) ăăĄă€ă«ă”ă€ășă Rust ă§ăăæăă«èĄšç€șăăă«ăŻ...
ăăĄă€ă«ă”ă€ășă Rust ă§ăăæăă«èĄšç€șăăă«ăŻăfile_sizeăäœżăăŸăă
use file_size::fit_4;
assert_eq!(&fit_4(999), "999");
assert_eq!(&fit_4(12345), "12K");
assert_eq!(&fit_4(999_999), "1.0M");
assert_eq!(&fit_4(7_155_456_789_012), "7.2T");
ăăăȘæăă§ăăăæăă«ăăĄă€ă«ă”ă€ășăèĄšç€șăăŠăăăăŻăŹăŒăă§ăă
;
))
äœżăŁăŠăżăăšăăăȘæăă
ăăăăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ă§äžäœ N 件ăæăŁăŠăă
ăăŁăŹăŻăăȘé
äžăźăăĄă€ă«ă§äžäœ N 件ăæăŁăŠăăăăă«ăăŸăă
ăăš main
ă性ăăăȘăŁăŠăăăźă§ăéąæ°ă«ćăćșăăŸăă
ćźèĄăăăšăăăȘæăă
ăăŁăŹăŻăăȘé äžăźăăĄă€ă«ă§äžäœ N 件ăæăŁăŠăă (䞊ććŠç)
Clap ăäœżăŁăŠăăłăăłăă©ă€ăłăăŒă«ă«ăă
clap v4 ăäœżăŁăŠăăłăăłăă©ă€ăłăăŒă«ă«ăăŸăă v4 ăŻăv3 ăšăŻăăȘăéăăźă§ăclap v4 ăźăăă„ăĄăłăăèŠăȘăăéČăăŸăăăă
use Parser;
// Read from `Cargo.toml`
ćźéă«ćźèĄăăăšăăăȘæăă«ăȘăăŸăă
--number
argument ăćżăăăšæăăăŸăă
äŸăă°ăäžäœ 100 件ăèĄšç€șăăă«ăŻă--number 100
ăšăăŸăă
ăăă©ă«ă㧠--help
ăäœżăăăăă«ăȘăŁăŠăăŸăă
Cargo.toml
ă«æžăăæ
ć ±ăă--help
ă§èĄšç€șăăăŸăă
[]
= "rust-cli-template"
= "0.1.0"
= "2021"
= "MIT"
= "đž Rust CLI Template using clap v4 đž"
= "README.md"
= "https://github.com/ekusiadadus/rust-cli-template"
= "https://github.com/ekusiadadus/rust-cli-template"
= ["cli", "Japan", "Rust"]
= ["command-line-utilities"]
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[]
= { = "4.0.29", = ["derive"] }
= "1.0.3"
= "2.3.2"