我的意思是,如果两个用户具有相同的名称,那么系统在强制执行文件权限时如何知道他们实际上是不同的用户?
当我考虑/home/old-arch在重新安装系统之前重命名我的家时,这个疑问出现在我的脑海中(我有/home自己的分区,我没有格式化它),这样我就可以拥有一个新的、原始的/home/arch. 我想知道新系统是否会给我对我的文件的旧权限,或者它是否会将我识别为不同的arch.
例如,我希望能够查看是否show-all-if-unmodified在当前会话中启用。
在测试对程序重复执行的输出求和的脚本时,我遇到了我不理解的行为。要重现它,请创建文本文件out,它代表我的程序的输出,以及sum保存先前执行返回的值的总和的文件,该文件作为 的副本开始out,
cat > out << EOF
2 20
5 50
EOF
cp out sum
Run Code Online (Sandbox Code Playgroud)
奇怪的事情发生在跑步
paste out sum | awk '{$1 += $3; $2 += $4; NF = 2; print}' | tee sum
Run Code Online (Sandbox Code Playgroud)
几次(可能需要 15-20 次)。每次运行时,此命令应将sum相应值中的值相加out并将结果写回sum. 我得到的是它工作的次数不可预测,然后sum恢复到
2 20
5 50
Run Code Online (Sandbox Code Playgroud)
我后来了解到我无法将输出重定向或 tee 输出到我正在处理的同一个文件,并使用临时文件解决了这个问题,但这种行为让我感到困惑:
为什么完全… | tee sum有效(即使只进行有限次数的迭代),而… > sum从不覆盖sum?
为什么它不能以可预测的次数工作?
bash ×2
autocomplete ×1
command-line ×1
multiuser ×1
permissions ×1
readline ×1
tee ×1
users ×1