小编Bri*_*tol的帖子

cat多个文件和子shell

是否有单个shell命令将执行以下操作:

cp header page.html
markdown page.md >> page.html
cat footer >> page.html
Run Code Online (Sandbox Code Playgroud)

(默认情况下Markdown输出到stdout.)

一位同事建议

echo $(cat header) $(markdown page.md) $(cat footer) >> page.html
Run Code Online (Sandbox Code Playgroud)

但除了三个子壳和两只猫,这可能会让我赢得"无用的猫"奖,它也会剥夺换行线 - 这是不好的,特别是在<pre><code>街区.

我想要的是这样的东西(显然不起作用)

cat header $(markdown page.md) footer > page.html
Run Code Online (Sandbox Code Playgroud)

我可以告诉cat使用子shell的输出来读取其中一个文件.理想情况下,无需设置任何临时文件,命名管道等.

bash pipe cat

2
推荐指数
1
解决办法
437
查看次数

如何为引用类型实现Add,以便我可以一次添加两个以上的值?

我想创建一个不可变的,引用数据类型,并添加如下:

use std::ops::Add;

struct Point {
    x: i64,
    y: i64,
}

impl<'a> Add for &'a Point {
    type Output = Point;
    fn add(self, other: &Point) -> Point {
        Point {
            x: self.x + &other.x,
            y: self.y + &other.y,
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

如何实现添加特征以引用结构?建议Add在引用类型上实现.

我可以做到这一点,在哪里abPoint:

let c = &a + &b;
let d = &c + &b;
Run Code Online (Sandbox Code Playgroud)

但不是这个:

let d = &a + &b + &b;
Run Code Online (Sandbox Code Playgroud)

我不介意这些&迹象,但不能连锁添加对我来说并不好看.我想实现乘法(z = a + …

add rust

2
推荐指数
1
解决办法
171
查看次数

标签 统计

add ×1

bash ×1

cat ×1

pipe ×1

rust ×1