DEV Community

Sergey Chudakov
Sergey Chudakov

Posted on

Follow me on Chinese social network

I worked as an hashtag#SRE on a high-load #project for two years.

My #profile: https://github.com/meteoritt

I was a #community #manager at the #German #gameforge #gmbh: https://web.archive.org/web/20200105175935/http://metin2wiki.ru/wiki/FAQ_Linux#expand

Author of a book about #Linux: https://github.com/meteoritt/gentleman/blob/master/README.ru-RU.me (for those who want to add a star and check their #English, go to: https://github.com/meteoritt/gentleman

Become a member
Author of an open-source program in #Python: https://github.com/meteoritt/topalias

#Author of a module this Rust: https://github.com/meteoritt/topalias-rust

mod cli;
mod aliascore;
mod statistic;

pub fn example_function() {
    println!("Здесь будет основная логика aliascore");
}

use clap::{Parser};
use std::path::PathBuf;

#[derive(Parser, Debug)]
#[command(author, version, about, long_about = None)]
pub struct Cli {
    /// Минимальная длина акронима для алиаса
    #[arg(short = 'l', long, default_value_t = 1)]
    min: usize,

    /// Количество предлагаемых акронимов
    #[arg(short, long, default_value_t = 20)]
    count: usize,

    /// Фильтровать алиасы, уже используемые в истории
    #[arg(long, default_value_t = false)]
    filter: bool,

    /// Использовать историю zsh вместо bash
    #[arg(short, long, default_value_t = false)]
    zsh: bool,

    /// Свой путь к папке с .bash_aliases/.bash_history/.zsh_history
    #[arg(short = 'f', long)]
    path: Option<PathBuf>,

    /// Включить режим отладки
    #[arg(long, default_value_t = false)]
    debug: bool,
}

pub fn run() {
    let args = Cli::parse();

    if args.debug {
        println!("Debug mode включен: {:?}", args);
    }

    // TODO: Передать параметры в aliascore::run, реализовать основную логику
    println!(
        "min: {}, count: {}, filter: {}, zsh: {}, debug: {}, path: {:?}",
        args.min, args.count, args.filter, args.zsh, args.debug, args.path
    );
}

use clap::{Parser};
use std::path::PathBuf;

#[derive(Parser, Debug)]
#[command(author, version, about, long_about = None)]
pub struct Cli {
    /// Минимальная длина акронима для алиаса
    #[arg(short = 'l', long, default_value_t = 1)]
    min: usize,

    /// Количество предлагаемых акронимов
    #[arg(short, long, default_value_t = 20)]
    count: usize,

    /// Фильтровать алиасы, уже используемые в истории
    #[arg(long, default_value_t = false)]
    filter: bool,

    /// Использовать историю zsh вместо bash
    #[arg(short, long, default_value_t = false)]
    zsh: bool,

    /// Свой путь к папке с .bash_aliases/.bash_history/.zsh_history
    #[arg(short = 'f', long)]
    path: Option<PathBuf>,

    /// Включить режим отладки
    #[arg(long, default_value_t = false)]
    debug: bool,
}

pub fn run() {
    let args = Cli::parse();

    if args.debug {
        println!("Debug mode включен: {:?}", args);
    }

    // TODO: Передать параметры в aliascore::run, реализовать основную логику
    println!(
        "min: {}, count: {}, filter: {}, zsh: {}, debug: {}, path: {:?}",
        args.min, args.count, args.filter, args.zsh, args.debug, args.path
    );
}

fn main() {
    cli::run();
}
Enter fullscreen mode Exit fullscreen mode

terminal run /bin/bash

cargo install topalias-rust
topalias-rust

What about D:/crio-temp in left disk mc (Total Commnander), permanently not clearably folder trash recycle.

What about intepreted Rust language without package manager? Simply one file script? About Python.

covered #letter #recommendation #letter #Chinese

Year 2025 pharagraphe: 瓦斯鍋爐故障 — Gas boiler malfunction

Community: https://github.com/ruopsdev
Twitter (X.com): https://x.com/RuOpsDev

Top comments (1)

Collapse
 
csredrat profile image
Sergey Chudakov

I worked as an hashtag#SRE on a high-load #project for two years.

My #profile: github.com/meteoritt

I was a #community #manager at the #German #gameforge #gmbh: FAQ Linux

Author of a book about #Linux: github.com/meteoritt/gentleman/blo... (for those who want to add a star and check their #English, go to: github.com/meteoritt/gentleman

Become a member
Author of an open-source program in #Python: github.com/meteoritt/topalias

#Author of a module this Rust: [https://github.com/meteoritt/topalias-rust](https://github.com/meteoritt/topalias-rust)

mod cli;
mod aliascore;
mod statistic;

pub fn example_function() {
    println!("Здесь будет основная логика aliascore");
}

use clap::{Parser};
use std::path::PathBuf;

#[derive(Parser, Debug)]
#[command(author, version, about, long_about = None)]
pub struct Cli {
    /// Минимальная длина акронима для алиаса
    #[arg(short = 'l', long, default_value_t = 1)]
    min: usize,

    /// Количество предлагаемых акронимов
    #[arg(short, long, default_value_t = 20)]
    count: usize,

    /// Фильтровать алиасы, уже используемые в истории
    #[arg(long, default_value_t = false)]
    filter: bool,

    /// Использовать историю zsh вместо bash
    #[arg(short, long, default_value_t = false)]
    zsh: bool,

    /// Свой путь к папке с .bash_aliases/.bash_history/.zsh_history
    #[arg(short = 'f', long)]
    path: Option<PathBuf>,

    /// Включить режим отладки
    #[arg(long, default_value_t = false)]
    debug: bool,
}

pub fn run() {
    let args = Cli::parse();

    if args.debug {
        println!("Debug mode включен: {:?}", args);
    }

    // TODO: Передать параметры в aliascore::run, реализовать основную логику
    println!(
        "min: {}, count: {}, filter: {}, zsh: {}, debug: {}, path: {:?}",
        args.min, args.count, args.filter, args.zsh, args.debug, args.path
    );
}

use clap::{Parser};
use std::path::PathBuf;

#[derive(Parser, Debug)]
#[command(author, version, about, long_about = None)]
pub struct Cli {
    /// Минимальная длина акронима для алиаса
    #[arg(short = 'l', long, default_value_t = 1)]
    min: usize,

    /// Количество предлагаемых акронимов
    #[arg(short, long, default_value_t = 20)]
    count: usize,

    /// Фильтровать алиасы, уже используемые в истории
    #[arg(long, default_value_t = false)]
    filter: bool,

    /// Использовать историю zsh вместо bash
    #[arg(short, long, default_value_t = false)]
    zsh: bool,

    /// Свой путь к папке с .bash_aliases/.bash_history/.zsh_history
    #[arg(short = 'f', long)]
    path: Option<PathBuf>,

    /// Включить режим отладки
    #[arg(long, default_value_t = false)]
    debug: bool,
}

pub fn run() {
    let args = Cli::parse();

    if args.debug {
        println!("Debug mode включен: {:?}", args);
    }

    // TODO: Передать параметры в aliascore::run, реализовать основную логику
    println!(
        "min: {}, count: {}, filter: {}, zsh: {}, debug: {}, path: {:?}",
        args.min, args.count, args.filter, args.zsh, args.debug, args.path
    );
}

fn main() {
    cli::run();
}
Enter fullscreen mode Exit fullscreen mode

terminal run /bin/bash

cargo install topalias-rust
topalias-rust

What about D:/crio-temp in left disk mc (Total Commnander), permanently not clearably folder trash recycle.

What about intepreted Rust language without package manager? Simply one file script? About Python.

covered #letter #recommendation #letter #Chinese

Year 2025 pharagraphe: 瓦斯鍋爐故障 — Gas boiler malfunction

Community: github.com/ruopsdev
Twitter (X.com): x.com/RuOpsDev