使用 gnu clisp 运行 shell 命令

2023-12-11

我正在尝试为 clisp 创建一个“系统”命令,其工作原理如下

(setq result (system "pwd"))

;;now result is equal to /my/path/here

我有这样的事情:

(defun system (cmd)
 (ext:run-program :output :stream))

但是,我不确定如何将流转换为字符串。我已经多次查看了 hyperspec 和 google。

编辑:使用 Ranier 的命令并使用 with-output-to-stream,

(defun system (cmd)
  (with-output-to-string (stream)
    (ext:run-program cmd :output stream)))

然后尝试运行grep,这是我的道路...

[11]> (system "grep")

*** - STRING: argument #<OUTPUT STRING-OUTPUT-STREAM> should be a string, a
      symbol or a character
The following restarts are available:
USE-VALUE      :R1      Input a value to be used instead.
ABORT          :R2      Abort main loop
Break 1 [12]> :r2

像这样的东西吗?

版本2:

(defun copy-stream (in out)
   (loop for line = (read-line in nil nil)
         while line
         do (write-line line out)))

(defun system (cmd)
  (with-open-stream (s1 (ext:run-program cmd :output :stream))
    (with-output-to-string (out)
      (copy-stream s1 out))))


[6]> (system "ls")
"#.emacs#
Applications
..."
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 gnu clisp 运行 shell 命令 的相关文章

  • 您能解释一下流的概念吗?

    我知道流是字节序列的表示 每个流都提供了向其给定的后备存储读取和写入字节的方法 但流的意义何在 为什么我们与之交互的不是后备存储本身 不管出于什么原因 这个概念并不适合我 我读过很多文章 但我想我需要一个类比或其他东西 选择 流 这个词是因
  • 使用azure逻辑应用程序将消息作为字符串发送到azure服务总线

    我正在使用逻辑应用操作 发送消息 向服务总线主题发送消息 在控制台应用程序中读取它时 如果我这样做 SubscriptionClient subClient SubscriptionClient CreateFromConnectionSt
  • (cons 'a (cons 'b 'c)) 和 (cons 'a '(b.c)) 之间的 Lisp 区别

    有什么区别 cons a cons b c A B C and cons a b c A B C 我需要使用 cons 创建以下列表 a b c 所以我试图理解 是什么 代表 L E 我有以下内容 cons cons a b c 但它产生
  • 解决斐波那契数列的 Lisp 方法

    我想尝试学习 Lisp 但很快就放弃了 我想我会再试一次 我正在看 求 400 万以下所有偶数斐波那契数的总和 我写了下面的代码 它可以工作 但是很丑陋 其中最主要的是它太慢了 因为它一直在进行简单的递归 当我用 Python 编写这个程序
  • 为什么在 emacs-lisp 中的函数参数之前使用#'?

    我熟悉 Emacs Lisp 但不熟悉 Common 或任何其他 Lisp 一些 Lisp 程序员建议 例如emacs 的基本功能 https stackoverflow com questions 17076646 a basic fun
  • 从when语句内的函数返回

    我想做的就是使用 when 语句返回一个值 我想要以下功能 if x return y 我正在尝试使用 when x y 但是when语句并没有以退出函数并返回y的方式进行计算 它只是愉快地继续下一行 有没有办法做到这一点而不需要制作一个看
  • 来自 file_descriptor_source (boost::iostreams) 或文件的 istream

    我需要为我的程序输入做这样的事情 stream input if decompressed input open filepath else file descriptor popen decompressor filepath r inp
  • Apache Kafka Streams 将 KTable 物化到主题似乎很慢

    我正在使用 kafka 流 并试图将 KTable 具体化为一个主题 它有效 但似乎每 30 秒左右完成一次 Kafka Stream 如何 何时决定将 KTable 的当前状态具体化为主题 有没有什么办法可以缩短这个时间 让其更加 实时
  • 如何说服 Lisp SBCL 进行内联 Fixnum 算术?

    我在其他 SO 答案中找到了一些技术 但显然我无法说服 SBCL 进行内联修复数算术 declaim optimize speed 2 safety 1 declaim ftype function fixnum fixnum double
  • std::ifstream::read 或 std::ofstream::write 参数为零?

    是否完全可以 根据标准明确定义的行为 调用 mystream read buffer 0 or mystream write buffer 0 当然 什么也不会被读或写 我想知道在调用这两个函数之一之前是否必须测试提供的大小是否为空 是的
  • Nodejs 中的 tail-stream 模块不打印文件的最后一条记录

    我正在使用 tail stream 从 csv 文件获取数据 并将每个 csv 记录转换为 json 格式并打印它 但是尾流不会打印文件的最后一行 而是将其保留为缓冲区 如果我更新文件 则从上一个最后一行 缓冲的最后一行 到更新的最后一行
  • .Net StreamWriter.BaseStream,这个定义是什么意思? “获取与后备存储接口的底层流。”

    我正在读关于StreamWriter今天 偶然发现了这个楼盘 BaseStream 我正在寻找定义并发现了这个 获取与后备存储接口的底层流 从这里MSDN StreamWriter BaseStream http msdn microsof
  • 如何检查文件是否有备用数据流?

    Delphi 有没有办法检查文件是否有任何备用数据流 看一下 Win32 APIFindFirstStreamW https msdn microsoft com en us library windows desktop aa364424
  • Java 中序列化的目的是什么?

    我读过很多关于序列化的文章 以及它如何如此美好和伟大 但没有一个论点足够令人信服 我想知道是否有人能真正告诉我通过序列化一个类我们真正可以实现什么 让我们先定义序列化 然后我们才能讨论它为什么如此有用 序列化只是将现有对象转换为字节数组 该
  • 当我们可以使用广播流时,为什么要使用 InheritedWidget | StreamBuilder 和静态变量 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 当我们可以使用广播流时 为什么要使用 InheritedWidget StreamBuilder 和静态变量 当我们可以拥有一个简单干净的架构时
  • 如何使用 FS2 中的分类器函数对对象进行分组?

    我有一个无序的流measurements 我想将其分组为固定大小的批次 以便以后可以有效地保留它们 val measurements for id lt Seq foo bar baz value lt 1 to 5 yield id va
  • 关于onlisp中的广义变量

    我不确定这里发生了什么 文中的宏观示例 基本上不知道如何使用get setf 方法 一个内置宏 也许是函数 具体来说 如果某些返回值是这样的情况呢 get setf 方法为零 例如 get setf 方法 x NIL NIL NEW 306
  • 在 C# 中使用流读取大文本文件

    我有一项可爱的任务 就是研究如何处理加载到我们应用程序的脚本编辑器中的大文件 就像VBA http en wikipedia org wiki Visual Basic for Applications用于我们内部产品的快速宏 大多数文件约
  • 获取与请求

    我正在使用 JSON 流并尝试使用 fetch 来使用它 该流每隔几秒发出一些数据 仅当流关闭服务器端时 使用 fetch 来使用流才可以访问数据 例如 var target the url var options method POST
  • C# List 处置/关闭

    我正在设置订阅服务 以便按计划向我们公司的各个人员发送报告 我计划通过电子邮件发送报告 我使用的报告系统能够导出为 PDF 流 而不是写入临时文件 大多数人会收到不止一份报告 因此我尝试将它们全部附加到一封电子邮件中 执行以下操作 List

随机推荐

  • 对 Base::object 链接器错误 @ c++ w/ freeglut 的未定义引用

    我有这个代码 Gnome cpp 文件 include Living h class Gnome public Living private public Gnome void drawObjects Gnome Gnome spriteI
  • 以编程方式更改 GridView 中的 ImageView

    我已经设置了带有 TextView 叠加层的 ImageView 网格 我的ImageAdapter代码如下 public View getView int position View convertView ViewGroup paren
  • 文字肖像可视化[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我停了下来 看到了这个可视化 它被称为文字肖像 我的问题是 如何做这样的事情 有描述这个的教程或论文吗 我从来没有见过这个 但我过去做过位图到 ASCII 艺术转换器 这是类似的
  • Swift 函数在应用程序中有效,但在 override func viewDidLoad() 中无效

    在我的 iOS 应用程序中 我有两个与 Firebase 相关的函数 我想在 viewDidLoad 中调用它们 第一个随机选择一个孩子 queryOrderedByKey 并将孩子的密钥作为字符串输出 第二个使用该密钥并且observeE
  • 将 Powershell.exe 的输入和输出重定向到 C++ 中的管道

    我正在尝试在 C 中执行 powershell 命令并通过管道获取其输出 我的程序非常适合 cmd exe 但是 当我尝试使用 powershell exe 执行相同的操作时 我只得到 W 作为输出 我已经注释了下面代码中需要修改才能执行
  • 在 asp.net 中动态调整图像大小

    为简单起见 假设我有一个网页需要显示图像的缩略图 图像位置存储在数据库中 图像存储在 Amazon S3 上 是否可以让我的网络服务器在将大图像传送到客户端之前缩小其尺寸 这样我就不必存储每个图像的缩略图 并且客户端可以下载较小的文件 关于
  • 如何在JNI中将指针从java传递到C?

    我有一个本机方法int sum int int 我如何从java端传递这个方法的参数 编辑 我成功运行的示例方法是 双 gsl stats mean doubleArray int int 这个方法在 GSL 中可用 因为我已经创建了共享对
  • Unicode (utf-8) 与 git-bash

    我在让 unicode 适用于 git bash 在 Windows 7 上 时遇到一些麻烦 我尝试了很多事情但没有成功 虽然 我不太确定造成这种情况的原因 所以我可能在错误的方向上工作 看来这应该是可能的 因为 cmd exe 的编码可以
  • PropertyAccessException:访问字段时出错

    我有一个实体User Entity public class User implements Serializable Id GeneratedValue strategy GenerationType IDENTITY Column na
  • 从变量更新 pom 文件的 Shell 命令

    以前 我使用以下命令获取 pom xml 中的版本并将其从 1 递增 在增量快照版本之前 0 0 1 bin bash version grep ri
  • 如何读取 build.gradle 中 local.properties 中定义的属性

    我已经设定sdk dir and ndk dir in 本地属性 我如何读取值sdk dir and ndk dir in the 构建 gradle file 您可以通过以下方式做到这一点 Properties properties ne
  • Delphi、OLE 和 Microsoft Scheduler 的问题

    我有控制台 Delphi 应用程序 它可以通过 OLE 与 Excell 一起使用 代码示例非常简单 procedure SaveBaseRecordsToFile BaseName string PaymentRecords TPayme
  • 在 RCP 应用程序中添加包资源管理器会导致丢失一些图标

    在我的 eclispe rcp 应用程序中 我添加了一个包资源管理器 添加了 org eclipse jdt ui 当我使用 rcp app 时 当我通过 新建项目向导 创建一个新项目以添加 常规项目 时 该项目已正确创建 但包资源管理器视
  • 文档写入给出了奇怪的输出

    我正在编写一个脚本来检测 jQuery 如果它不存在 则插入 Google CDN 版本和本地后备 不要问为什么 这不是我的想法 问题是当我尝试执行文档时 write 我得到一个奇怪的输出 document write
  • git word-diff-regex 可以处理多行更改吗?

    考虑一个像这样的简单文件 承诺 foo Edited bar 现在 当我跑步时git diff word diff regex a z 它给了我 foo bar 所以 这表明这个词foo已被替换为bar 请注意 分号未标记为已更改 没关系
  • 无法解析:com.android.support:design-v7:27.1.1

    我使用的是Android Studio 3 1 3 Gradle 构建同步失败 我使用了以下方法 但没有用 如果有任何解决方案请告诉我 maven url https maven google com 使重启和缓存无效 multiDexEn
  • 如何在 Android 中的 Facebook 页面墙上发帖?

    您好 我想发布任何消息或链接到 Facebook 页面 我尝试过的是这个 void postInfo try Bundle parameters new Bundle parameters putString message message
  • 使用 angularjs 从服务器下载文件

    我正在寻找一种方法来让用户选择服务器上存在的文件并使用 angularjs 下载它 我发现这段代码不起作用 所以有人有一种正确的方法吗 var content file content var blob new Blob content t
  • PowerShell - 如何使用 $_.Key 作为 $object 属性?

    我有一个像这样的哈希表 hash One One Two Two Three Three 这样做是行不通的 hash getEnumerator foreach object Key Value 然而这句话 hash getEnumerat
  • 使用 gnu clisp 运行 shell 命令

    我正在尝试为 clisp 创建一个 系统 命令 其工作原理如下 setq result system pwd now result is equal to my path here 我有这样的事情 defun system cmd ext