在UNIX和Linux系统管理手册说:
如果适当的目录可写,则 man 在 /var/cache/man 或 /usr/share/man 中维护格式化页面的缓存;然而,这是一个安全风险。大多数系统在安装时预先格式化一次手册页(请参阅 catman)或根本不预先格式化。
这里的“安全风险”是什么?
正如Ulrich Schwartz 在他们的回答中指出的那样,存在明显的安全风险,即有人可以更改手册页以欺骗(新手)用户运行一些不受欢迎的东西,但我正在寻找其他可以利用它的方式。谢谢!
艺术文件(cat -A输出):
.::""-, .::""-.$
/:: \ /:: \$
|:: | _..--""""--.._ |:: |$
'\:.__ / .' '. \:.__ /$
||____|.' _..---"````'---. '.||____|$
||:. |_.' `'.||:. |$
||:.-'` .-----. ';:. |$
||/ .' '. \. |$
|| / '-. '. \\ |. |$
||:. _| ' \_\_\\/( \ |$
||:.\_.-' ) || m `\.--._.-""-;$
||:.(_ . '\ __'// m ^_/ / '. _.`.$
||:. \__^/` _)```'-...' _ .-'.' '-.$
||:..-'__ .' '. . ' '. `'.$
||:(_.' .`' _. …Run Code Online (Sandbox Code Playgroud) 我有一个 shell 脚本,它记录作为参数传递给它的各种程序的性能,以帮助我选择性能最高的一个。相关片段:
#!/usr/bin/env sh
function cal_perf () {
real_t=0
user_t=0
sys_t=0
for (( trial=1 ; trial<=$3 ; ++trial )) ; do
shopt -s lastpipe
/usr/bin/time -f '%e:%S:%U' $1 $2 |& IFS=":" read real sys user
real_t=$(echo "$real + $real_t" | bc)
user_t=$(echo "$user + $user_t" | bc)
sys_t=$(echo "$sys + $sys_t" | bc)
done
real_t=$(echo "scale=2 ; $real_t / $3" | bc)
user_t=$(echo "scale=2 ; $user_t / $3" | bc)
sys_t=$(echo "scale=2 ; $sys_t / $3" | bc)
printf …Run Code Online (Sandbox Code Playgroud) 在这里不抱希望,但是是否有一些内置的日志记录机制,通过它我可以找出在重新启动时从 /tmp 中删除了哪些文件?我显然可以调整关闭脚本,但这不是我要问的。