小编Wou*_*eek的帖子

什么时候使用大括号扩展?

我了解什么是大括号扩展,但我不知道如何最好地使用它。

你什么时候使用它?
如果你有自己的小窍门,请教我一些方便和出色的例子。

shell bash ksh zsh brace-expansion

57
推荐指数
5
解决办法
2万
查看次数

如何增加 Fedora 上打开文件的最大数量?

我想增加 Fedora 27 中打开文件的最大数量,因为默认设置太低:

$ ulimit -Sn
1024
$ ulimit -Hn
4096
Run Code Online (Sandbox Code Playgroud)

首先,我通过添加以下行来确保系统范围的设置足够高/etc/sysctl.conf

fs.inotify.max_user_watches=524288
fs.file-max=100000
Run Code Online (Sandbox Code Playgroud)

然后,我通过将以下行添加到/etc/security/limits.confroot必须单独添加,因为通配符匹配root之外的所有用户)来设置特定于用户的设置 :

*     soft  nofile 100000
*     hard  nofile 100000
root  soft  nofile 100000
root  hard  nofile 100000
Run Code Online (Sandbox Code Playgroud)

为确保实际加载上述设置,我添加了以下行/etc/pam.d/login

session required pam_limits.so
Run Code Online (Sandbox Code Playgroud)

重新启动计算机并登录后,我仍然得到相同的结果ulimit -Snulimit -Hn。仅设置了系统范围的设置:

$ cat /proc/sys/fs/file-max
100000
Run Code Online (Sandbox Code Playgroud)

我有点不知所措……有人知道我如何诊断/解决这个问题吗?

fedora open-files ulimit

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

括号扩展不适用于少于 2 个参数

我期待大括号扩展适用于任意数量的参数。但是,对于 n=1,我得到以下信息:

$ find models/nsf-projects-{7}*
models/nsf-projects-{7}.rdf
Run Code Online (Sandbox Code Playgroud)

对于 n>1 扩展按预期发生,例如:

$ find models/nsf-projects-{6,7}*
find: ‘models/nsf-projects-6*’: No such file or directory
find: ‘models/nsf-projects-7*’: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我已经稍微浏览了 GNU 手册,但没有发现在任何地方明确声明 >1 个参数的要求。

问:n>1 确实是大括号扩展的要求吗?如果是这样,它为什么有用?

bash brace-expansion

4
推荐指数
2
解决办法
380
查看次数

标签 统计

bash ×2

brace-expansion ×2

fedora ×1

ksh ×1

open-files ×1

shell ×1

ulimit ×1

zsh ×1