#cli #text #echo #input #values #multiple #line

应用 fecho

一个简单的工具,用于输出多个文件、文本或管道值

3 个版本 (破坏性更改)

0.3.2 2023年11月20日
0.3.1 2023年11月19日
0.3.0 2023年11月19日
0.2.0 2023年11月12日
0.1.0 2023年11月12日

#195 in 命令行界面

MIT 许可证

10KB
147 代码行

fecho

echo 使用Rust编写,可以通过-f标志接受文件作为输入

安装

cargo install fecho

选项

A simple tool to echo multiple files, or text, or piped values

Usage: fecho [OPTIONS] [INPUT]...

Arguments:
  [INPUT]...  What should be repeated

Options:
  -f, --file                     [INPUT] becomes a list of files you want to fecho
  -c, --count <COUNT>            Quantity of repetitions [default: 1]
  -s, --separator [<SEPARATOR>]  Optional separator, newline if no argument is given
  -t, --top <TOP>                Return display the first [TOP] lines of each echo
  -h, --help                     Print help
  -V, --version                  Print version

示例

使用fecho获取文件的第一个两行

fecho Cargo.toml -f -n 2 -t 2

[package]
name = "fecho"
[package]
name = "fecho"

或多个文件

fecho Cargo.toml src/main.rs -f -n 2 -t 2 -s ";🦄;"

[package]
name = "fecho"
;🦄;
use std::{
    error::Error,
;🦄;
[package]
name = "fecho"
;🦄;
use std::{
    error::Error,

您也可以通过stdin管道传输

fecho Cargo.toml -f | ./fecho -n 2 -t 2

[package]
name = "fecho"
[package]
name = "fecho"

或者

fecho 'Hello World!' -n 3 -s 'Hello User!'

Hello World!
Hello User!
Hello World!
Hello User!
Hello World!

当fecho用于读取stdin时,可以使用--continuos标志使其持续读取stdin
不支持-n标志。
并且-t标志决定分隔符之间的行数。

ping archlinux.org -c 6 | fecho -c -t 2 -s "=============="

PING archlinux.org (xx.xxx.xxx.xxx) 56(84) bytes of data.
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=1 ttl=53 time=30.6 ms
==============
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=2 ttl=53 time=33.5 ms
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=3 ttl=53 time=33.2 ms
==============
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=4 ttl=53 time=32.7 ms
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=5 ttl=53 time=30.6 ms
==============
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=6 ttl=53 time=33.0 ms

与正常输出进行比较
它将接受整个输出,然后再打印。

ping archlinux.org -c 6 | ./fecho -t 2 -n 3 -s "=============="

PING archlinux.org (xx.xxx.xxx.xxx) 56(84) bytes of data.
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=1 ttl=53 time=44.3 ms
==============
PING archlinux.org (xx.xxx.xxx.xxx) 56(84) bytes of data.
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=1 ttl=53 time=44.3 ms
==============
PING archlinux.org (xx.xxx.xxx.xxx) 56(84) bytes of data.
64 bytes from archlinux.org (xx.xxx.xxx.xxx): icmp_seq=1 ttl=53 time=44.3 ms

许可证

MIT

依赖项

~1.2–1.8MB
~34K SLoC