小编Wit*_*iko的帖子

测试文件描述符是否有效

我想让 bash 脚本在文件描述符(FD)打开时将附加信息输出到大于或等于 3 的文件描述符(FD)。为了测试 FD 是否打开,我设计了以下技巧:

if (printf '' 1>&3) 2>&-; then
  # File descriptor 3 is open
else
  # File descriptor 3 is not open
fi
Run Code Online (Sandbox Code Playgroud)

这足以满足我的需求,但我很好奇是否有更惯用的方法来测试 FD 是否有效。我特别是约是否存在所述的映射感兴趣fcntl(1)系统调用到外壳命令,这将允许FD标志的检索(O_WRONLY和 O_RDWR测试的FD是否可写,和O_RDONLY和 O_RDWR测试的FD是否可读)。

bash file-descriptors

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

包含其他文件串联的虚拟文件

有没有办法创建一个类似于这样的文件系统对象:

mknod files p
cat file1 file2 ... fileN > files
Run Code Online (Sandbox Code Playgroud)

但是这样就可以找到它,就好像它是一个普通文件一样?

filesystems files cat fifo

16
推荐指数
2
解决办法
3906
查看次数

如何处理grep中的CRLF行结尾?

假设我有一个包含 CRLF 行结尾的任意文本输入:

$ curl -sI http://unix.stackexchange.com | head -4
HTTP/1.1 200 OK
Cache-Control: public, max-age=60
Content-Length: 80551
Content-Type: text/html; charset=utf-8

$ curl -sI http://unix.stackexchange.com | head -4 | hexdump -C
00000000  48 54 54 50 2f 31 2e 31  20 32 30 30 20 4f 4b 0d  |HTTP/1.1 200 OK.|
00000010  0a 43 61 63 68 65 2d 43  6f 6e 74 72 6f 6c 3a 20  |.Cache-Control: |
00000020  70 75 62 6c 69 63 2c 20  6d …
Run Code Online (Sandbox Code Playgroud)

grep regular-expression

5
推荐指数
1
解决办法
6830
查看次数