有没有办法将几个 csharp repl 命令变成终端别名?

Is there a way to turn several csharp repl commands into a terminal alias?

我每天都会制作一个 GUID,然后将其复制到剪贴板。

我通过打开我的终端,输入 csharp(如果您感到困惑,请参阅下面的 link)、输入 GUID.NewGuid()、复制输出并输入 quit 来完成此操作。

有什么方法可以将整个过程变成终端别名吗?

编辑:

澄清一下,我使用的是: https://www.mono-project.com/docs/tools+libraries/tools/repl/

您可以编写和编译控制台应用程序,问题是针对您是否可以将语句直接注入命令行工具,而不是如何制作一个微型可执行文件。

创建 C# 程序

using System;

namespace guid
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            new MainClass().run();
        }

        private void run()
        {
            Console.WriteLine(Guid.NewGuid());
        }
    }
}

编译为new-guid

像这样在 zsh 中使用

guid=$(./new-guid) #you may have to change the `.` to the appropriate path, depending on where the program is.
echo "${guid}"

在 Debian 中使用 zsh 和 mono-develop 测试 Gnu/Linux。

请注意,可能有更好的方法来执行此操作。一行 purl 脚本,或者可能是一些 Unix 命令。

BSD 有一个简单的命令来生成 UUID,它在 macOS 中可用。

uuidgen

如果您需要将 UUID 结果复制到剪贴板,请使用:

uuidgen | pbcopy

那么,UUIDGUID有什么区别呢?查看 this thread

这是我一直在寻找的答案,在这种情况下:

csharp -e 'Guid.NewGuid();' | pbcopy