小编Kar*_*rlo的帖子

在`dmesg | head`,(如何)在 10 行输出后 dmesg 被杀死?

如果我运行这些命令:

dmesg | head -n 10
Run Code Online (Sandbox Code Playgroud)

我认为操作系统发送回某种信号,dmesg一旦head读取了 10 行。这是如何运作的?这是什么head告诉内核?

这与程序终止不同,因为这是正常的“干净”停止。

pipe signals

15
推荐指数
2
解决办法
2123
查看次数

Yum 用户临时文件 (/var/tmp/yum*) 填满了 repo 数据

在我的 rhel6 系统上,非 sudo 用户可以执行 yum check-update。然后将文件放在/var/tmp/yum[user]*/. 那里的 repodata 变得非常大。我可以吗:

  1. 配置位置?
  2. 配置 yum 以便删除旧文件?

我的 /var/tmp/yum-nrpe*/x86_64/6Server 看起来包含以下内容:

28M     el-6-epel/5f32b55aa431745fe8b48deb2e0083a6507d19abbc29562a2e2b01b70ef93ada-primary.sqlite
29M     el-6-epel/89f1177c1b9f003409e2f5a91f7f3074a4b8e162376ffab286a35b8221e0a308-primary.sqlite
29M     el-6-epel/b98f6809469e5de3a13a5b251c5d35c622baecb9f3c593804245c443ace9a224-primary.sqlite
29M     el-6-epel/c79dd64a4e4aa8fb160353e9cd9d8e10120f5402a18aca730ae860d07f52bda3-primary.sqlite
29M     el-6-epel/e4b306d444fcfb361f7f2aace64a3ef67c8bd7fd1cbd251e64f150096f2f1ba9-primary.sqlite
1.2M    el-6-comp-extra/6c04e2f2f68bc085d529d857dd6c0539ff23d5139d2be21565dac3d8e586bae0-primary.sqlite
15M     rhel-6-server-optional-rpms/2469dd815fb83f3667f043cf3098a487a13ac6955ea36b2349bdc3a2ee1e20d2-primary.sqlite
15M     rhel-6-server-optional-rpms/bf8ce73943e4c78fc4205924fbfaf20ec4bcb72757f03366ec1245ffe2e0803e-primary.sqlite
15M     rhel-6-server-optional-rpms/e4f6cad281229297c712f8dd828c2062f8fbc02c6be215ea0df35059e98b4a5d-primary.sqlite
124M    rhel-6-server-rpms/5a411e3bf6a743656636e6baaec1680eec3480cf69acb79aad11c535862f2787-primary.sqlite
124M    rhel-6-server-rpms/60daa8229ca2386d6c7f319ce1fd819a46109e0b7a42c90e48acde23c3b200f6-primary.sqlite
124M    rhel-6-server-rpms/8592d0cd0b2e358c7850dee130497cb8969a72b9ac28cddc13a054caccee6d65-primary.sqlite
124M    rhel-6-server-rpms/f5798fe075da31815c5e43356a10c208af55a972b61fea37d63ea6edb3a78cae-primary.sqlite
Run Code Online (Sandbox Code Playgroud)

yum rpm rhel tmp

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

Bash Read:读取逗号分隔列表,最后一个元素丢失

下面命令的输出对我来说很奇怪。为什么它不给我返回元素 5?

$ echo '0,1,2,3,4,5' | while read -d, i; do echo $i; done
0
1
2
3
4
Run Code Online (Sandbox Code Playgroud)

我希望也能返回“5”。运行GNU bash, version 4.2.46(2)-release (x86_64-redhat-linux-gnu)。添加逗号有效,但我的输入数据没有逗号。我错过了什么吗?

bash shell-script shell-builtin read

8
推荐指数
3
解决办法
3418
查看次数

基于先前命令输出的颜色 PS1

我目前的 PS1 如下。的$?输出是真正有用的(第二行)。

export PS1="\
${PSOn_Blue}${PSBWhite}\t\
${PSColor_Off} \$?\
${PSColor_Off}${PSBGreen} \u\
${PSColor_Off}${PSWhite}@\
${PSColor_Off}${hostcolor}\h\
${PSColor_Off}:\
${PSBGreen}\w\
${PSColor_Off}\$\
 "
Run Code Online (Sandbox Code Playgroud)

如果返回代码 ($?) 在非零输出上为红色,那就更好了。

我怎样才能做到这一点?

command-line bash terminal bashrc

3
推荐指数
1
解决办法
1494
查看次数

正则表达式匹配逗号分隔的值列表,不允许尾随逗号

我想匹配:

  1. 啊啊啊啊
  2. 啊啊啊啊啊啊
  3. aaa,bbb,ccc

但不是带有尾随逗号的列表。我目前的正则表达式:

(\w{3},?)+
Run Code Online (Sandbox Code Playgroud)

还匹配带有尾随逗号 ( aaa,bbb,) 的列表。我在想我也可以这样做:

(\w{3})(,\w{3})*
Run Code Online (Sandbox Code Playgroud)

但那是相当丑陋的。我真正的正则表达式不匹配 3 个字母的单词,而是匹配更大的东西,并且重复正则表达式很丑陋。如何解决这个问题?

regular-expression

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