如何使用与默认值不同的 umask 在 Linux(zsh,如果重要)中交互式执行命令,仅用于一个命令?也许将命令组合在一行中?新的 umask 应仅应用于该命令,并为输入的下一个命令返回其默认值。
理想情况下,该命令在输入之前与有效的默认 umask 无关(换句话说,不必指定默认 umask)。
Sté*_*las 25
启动一个子shell:
(umask 22 && cmd)
Run Code Online (Sandbox Code Playgroud)
那么新的umask
只会改变那个子shell。
注意,zsh
在子shell进程中执行子shell的最后一个命令而不是fork另一个,这意味着如果那个命令是外部的,你甚至没有浪费一个进程,只是fork更早完成了(所以umask
完成了在稍后将执行您的命令的子进程中)。
归档时间: |
|
查看次数: |
8957 次 |
最近记录: |