小编Ale*_*x B的帖子

向 Linux 用户解释 BSD/OSX 驱动程序是如何工作的

Linux 驱动程序以内核模块(*.ko文件)的形式出现,在加载到内核时可以给它参数,通常存在于/lib/modules/<kernel version>.

BSD/OSX 的类似安排是什么?例如,我刚刚安装了 MacFUSE 并且很难理解安装程序到底在我的系统中做了什么。

osx drivers

7
推荐指数
1
解决办法
1136
查看次数

捕获 bash 内置的多行输出

通常,bash 能够分配命令的多行输出:

L=`ls`
Run Code Online (Sandbox Code Playgroud)

这适用于交互式 shell 和脚本。但似乎无法在变量中捕获内置函数的输出:

L=`dirs -l -p`
Run Code Online (Sandbox Code Playgroud)

这在交互式 shell 中有效,但在脚本中只有第一行在变量中结束,可能是由于 bash 对内置函数的不同处理。

为什么会发生这种情况,我该如何做我需要的事情?

bash shell-builtin

7
推荐指数
1
解决办法
3014
查看次数

惯用的 Unix 程序如何检测它们安装在什么前缀下?

如果我安装一个带有非标准前缀的二进制文件,例如/opt/bin/foo,它需要一些来自 的静态文件/opt/share/foo,它如何找到它们?使用相对于可执行文件 ( ../share/foo) 的反向引用?在编译时硬编码?

应用程序处理可变安装前缀的惯用方式是什么?所有目录都应该加前缀吗?(怎么样/var?)

packaging software-installation

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

如何在 GNU Make 中从外部列出先决条件?

如何从 GNU Make makefile 查询目标的先决条件?

例如,如果目标指定如下:

fred: wilma barney betty
Run Code Online (Sandbox Code Playgroud)

我想打印fred这样的先决条件:

$ make some_action fred
wilma barney betty
Run Code Online (Sandbox Code Playgroud)

make gnu-make

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

设置列数据时数字列的对齐方式

我使用column -t格式化数据以便于在 shell 中查看,但似乎没有指定列对齐的选项(例如向右对齐)。

有 Bash 俏皮话可以做到这一点吗?我有任意数量的列。

utilities shell-script table

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

如果并行删除,则 rm -rf 失败

rm -rf如果某些东西试图删除相同的文件树,将会失败(我认为是因为rm首先枚举文件,然后删除)。

一个简单的测试:

# Terminal 1
for i in `seq 1 1000`; do mkdir -p /tmp/dirtest/$i; done

# Now at the same time in terminal 1 and 2
rm -rf /tmp/dirtest
Run Code Online (Sandbox Code Playgroud)

会有一些输出到 stderr,例如:

...
rm: cannot remove directory `/tmp/dirtest/294': No such file or directory
rm: cannot remove directory `/tmp/dirtest/297': No such file or directory
rm: cannot remove directory `/tmp/dirtest/304': No such file or directory
Run Code Online (Sandbox Code Playgroud)

我可以通过将其重定向到 来忽略所有 stderr 输出/dev/null,但删除/tmp/dirtest实际上失败了!两个命令都执行完后,/tmp/dirtest还是在那里。

如何rm正确删除目录树并真正忽略所有错误?

rm concurrency files

4
推荐指数
1
解决办法
1799
查看次数

ssh 是否单独压缩隧道中的连接?

我有一个压缩的 SSH 隧道,其中一个隧道和多个连接。隧道化的每个连接中的数据相当均匀,但压缩交错流显然会使压缩更糟。SSH 如何通过多个连接压缩数据:

  1. 在 TCP 连接级别(即一个压缩流,一个 zlib 压缩状态)?
  2. 还是在逻辑隧道内连接级别(一个 TCP 连接上的多个逻辑流,每个流的 zlib 状态)?

实现是OpenSSH。

ssh compression

4
推荐指数
1
解决办法
3032
查看次数