小编l0b*_*0b0的帖子

什么是查找实际最大参数列表长度的规范方法?

ARG_MAX之后,新进程的最大参数长度似乎ARG_MAX在运行 Ubuntu 12.04 的 Mac Mini 3,1 上定义错误(或至少含糊不清):

$ getconf ARG_MAX # arguments 
2097152
$ locate limits.h | xargs grep -ho 'ARG_MAX[ \t]\+[0-9]\+' | uniq | cut -d ' ' -f 8
131072
Run Code Online (Sandbox Code Playgroud)

实际限制似乎介于以下之间:

$ cd "$(mktemp -d)"
$ touch $(seq 1 131072) && find . -mindepth 1 -printf x | wc -c && rm *
131072
$ touch $(seq 1 131073) && find . -mindepth 1 -printf x | wc -c && rm …
Run Code Online (Sandbox Code Playgroud)

limit arguments

9
推荐指数
1
解决办法
2526
查看次数

什么是 readline 单词分隔符?

当我在 Bash 中删除一个“单词”时,它会在某些字符处停止,例如_/。例如,如果我输入

/foo/bar
Run Code Online (Sandbox Code Playgroud)

并激活backward-kill-word(通常映射到Alt-Backspace和/或Ctrl- w),剩余的文本是

/foo/
Run Code Online (Sandbox Code Playgroud)

. 这确实对应$COMP_WORDBREAKSreadlinerl_completer_word_break_characters。我如何检测(最好是在正在运行的系统中,而不是代码中的默认值,因为它们可能会被覆盖)哪些字符用于确定断字?

bash readline

9
推荐指数
1
解决办法
2026
查看次数

如何列出所有当前可用的撰写组合键?

是否有某种方法可以检查 X 的状态以准确且仅获取组合键快捷方式及其映射到的内容的列表,或者作为文字键,例如:

aa å
88 ?
Run Code Online (Sandbox Code Playgroud)

或作为字形名称,例如:

aa Latin Small Letter A with ring above
88 Infinity
Run Code Online (Sandbox Code Playgroud)

或者,理想情况下,组合。

没有使用 GNOME。


阅读已接受答案中的链接后,我最终得到了以下命令

less "/usr/share/X11/locale/$(grep --max-count=1 "${LANG%.*}.UTF-8\$" /usr/share/X11/locale/locale.dir | cut --delimiter=/ --fields 1)/Compose"
Run Code Online (Sandbox Code Playgroud)

x11 keyboard-layout compose-key

9
推荐指数
1
解决办法
2850
查看次数

在终端第一行显示屏幕标题

当我启动一个新终端时,提示在第一行。工作一段时间后(或运行产生一些输出的命令),提示出现在最后一行。除非我按Ctrl- l, runclearreset类似的东西,否则它将在会话的其余部分停留在那里。

为了在工作中获得某种程度的连续性,我使用screen一个技巧在标题中显示会话名称(我使用最后一个和 中的两个screen命令.screenrc)。

为了避免因工作区混乱而造成认知开销,我希望将此标题显示在终端的顶部。

gnu-screen terminal

8
推荐指数
1
解决办法
1759
查看次数

如何为 Awesome WM 创建屏幕锁定计时器?

我有一个带有 Awesome WM 的 Ubuntu 12.04 系统,我希望屏幕保护程序像在 Unity 中一样工作:

  1. GNOME屏幕保护程序
  2. Ctrl- Alt-L锁定
  3. N分钟超时,尊重暂时禁用屏幕保护程序的应用程序

键盘快捷键相对简单:

-- Lock screen
awful.key(
    { "Mod1", "Control" },
    "l",
    function ()
        awful.util.spawn("gnome-screensaver-command --lock")
    end)
Run Code Online (Sandbox Code Playgroud)

如何解决第 3 点?

screensaver awesome

8
推荐指数
1
解决办法
7952
查看次数

如何快速生成(不安全的)GPG 密钥?

我想在虚拟机中自动生成至少两个 GPG 密钥以进行测试和演示。由于这种情况,我想确保密钥生成速度很快,理想情况下根本不使用或修改/dev/*random例如,使用系统时钟作为唯一的随机源就可以了:

$ gpg --quick-gen-key 'alice' [options] --random-data $(date +%s)
$ sleep 2
$ gpg --quick-gen-key 'bob' [options] --random-data $(date +%s)
Run Code Online (Sandbox Code Playgroud)

我一直无法找到任何这样的选项。页面中没有的-quick-random和似乎受 支持,但不起作用。例如,这些命令在我杀死它们之前运行了几分钟:--debug-quick-randommangpg

$ gpg --batch --debug-quick-random --passphrase 'alice' --quick-gen-key 'alice@example.org'
$ gpg --batch -quick-random --passphrase 'alice' --quick-gen-key 'alice@example.org'
Run Code Online (Sandbox Code Playgroud)

使用gpg(GnuPG) 2.1.2。

testing gpg random

8
推荐指数
1
解决办法
2360
查看次数

为什么 gnome-keyring-daemon 需要公钥来缓存密码?

我有两台具有几乎相同设置的Arch Linux 机器,都运行/usr/bin/gnome-keyring-daemon --daemonize --login. 它们都具有相同的 SSH 密钥,但只有其中一个拥有公钥。在具有公钥的主机上,GNOME Keyring 守护进程工作正常 - 我可以按预期通过 SSH 连接到其他机器而无需任何提示。在没有公钥的主机上,GNOME Keyring 似乎忽略了我已经输入了密码,并且每次都会提示我:

$ ls ~/.ssh/id_rsa.pub
ls: cannot access /home/user/.ssh/id_rsa.pub: No such file or directory
$ ssh some-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':
$ ssh other-host exit
Enter passphrase for key '/home/user/.ssh/id_rsa':
Run Code Online (Sandbox Code Playgroud)

即使在输入密码后,它也不会列出身份

$ ssh-add -l
The agent has no identities.
Run Code Online (Sandbox Code Playgroud)

凭直觉复制公钥后,我不再提示输入密码。随后再次删除公钥后,症状又回来了。这种行为是否有原因,或者只是一个错误?

gnome-keyring

8
推荐指数
1
解决办法
726
查看次数

如何将 Git 存储库历史重播到子目录中?

比方说,我有两个库ayebee我想摆脱bee,这样的线性的历史,bee/master在一个新的子目录“重放”(几个层次深)的aye我只想要文件和提交消息,我不关心提交 ID。想要一个合理的历史,所以git subtree add --prefix=subdirectorygit read-tree --prefix=subdirectory/没有什么我要找的。

两个存储库都是私有的,因此不存在为其他人重写历史记录的风险。但是,bee 确实有一个子模块cee

git

8
推荐指数
1
解决办法
3507
查看次数

如何在 Arch Linux Docker 容器中运行 systemd 服务?

人们似乎有很多不同的方式能够在 Docker 容器中运行 systemd 服务。我发现的最新直接建议示例是使用--volume=/sys/fs/cgroup:/sys/fs/cgroup:ro --cap-add=SYS_ADMIN --security-opt=seccomp:unconfined. 但是,它仍然失败了

错误:无法启动服务[ntpd]:执行'/usr/sbin/systemctl start ntpd'返回1:无法连接到总线:没有这样的文件或目录

要在具有最新 Arch Linux 发行版的 docker 1.12.1 容器上在 systemd 231 下运行简单服务,我需要做的绝对最少的事情是什么?

arch-linux systemd docker

8
推荐指数
1
解决办法
3651
查看次数

如何解读无线质量指标?

我在几个地方看到过以某种分贝比例表示的网络质量指标,我认为这也/proc/net/wireless包含以下内容:

$ cat /proc/net/wireless
Inter-| sta-|   Quality        |   Discarded packets               | Missed | WE
 face | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22
wlp1s0: 0000   53.  -57.  -256        0      0      0      3   1001        0
Run Code Online (Sandbox Code Playgroud)

但是,作为不习惯使用分贝的人,我该如何解释它们?man procfs似乎没有任何相关信息。

wifi proc

8
推荐指数
1
解决办法
6541
查看次数