lisp - osicat-posix:stat 冻结
问题描述
我对 Common Lisp 很陌生,在使用“osicat”系统中的功能时需要帮助。我想要完成的是获取文件的大小。为此,我想使用 osicat 系统的“stat”函数返回的结果。在尝试从我启动 sbcl 的同一目录中找到的文件中获取信息时,似乎该函数需要永远从文件中收集信息,或者它不执行任何操作并因未知原因挂起。我不太了解如何解决这个问题,我也不知道是什么导致了这个问题。
以下是在我遇到问题之前采取的一系列行动:
- 打开 Powershell。
- 执行cygwin
- 执行 sbcl
- (ql:quickload :osicat) (加载时没有任何抱怨)
- (包内:osicat-posix)
- (osicat-posix:stat "env.db")
执行完最后一条命令后,就好像 repl 循环挂起一样。我尝试在互联网上搜索任何关于为什么会发生这种情况的线索或答案,但只找到给出相同说明的教程,这让我很难过。任何见解、线索、提示或帮助将不胜感激。
解决方案
你的动作顺序没有错,你应该期待你想要的结果。这是我在 SLIME 中的输出:
CL-USER> (osicat-posix:stat "/etc/passwd")
#<OSICAT-POSIX:STAT {1039159BB3}>
CL-USER> (describe (osicat-posix:stat "/etc/passwd"))
#<OSICAT-POSIX:STAT {103916B4F3}>
[standard-object]
Slots with :INSTANCE allocation:
DEV = 64769
INO = 25166054
MODE = 33188
NLINK = 1
UID = 0
GID = 0
RDEV = 0
SIZE = 2324
BLKSIZE = 4096
BLOCKS = 8
ATIME = 1576246741
MTIME = 1575707407
CTIME = 1575707407
也许,您的问题与cygwin
交互有关。您可能会通过sbcl
在strace
.
推荐阅读
- python - Jupyter Lab 停止、忽略导入的包和内核失败
- javascript - 如何使用 setAttrubute 添加多功能?
- angular - 它是外部 ngx-bootstrap 模块的正确实现吗?
- python - 使用有向图与无向图的可见集
- ios - 简单的 SwiftUI 代码产生:UIViewAlertForUnsatisfiableConstraints。为什么?
- python - 项目无法读取文件
- azure - 无法将 azure cli 升级到最新版本
- sql - 如何用 Google Big Query Table 中的另一个分区重写一个分区?
- android - 从 Activity 到片段的 intent.putExtra 返回 null
- kotlin - 如何使用另一个列表的 id 过滤列表?