我通过使用本指南开始学习 Bash 脚本:http://www.tldp.org/LDP/abs/abs-guide.pdf
但是我被第一个脚本卡住了:
cd /var/log
cat /dev/null > messages
cat /dev/null > wtmp
echo "Log files cleaned up."
第 2 行和第 3 行在 Ubuntu 中做了什么(我理解 cat)?它仅适用于其他 linux 发行版吗?以 root 身份运行此脚本后,我得到的输出是已清理的日志文件。但是/var/log 仍然包含所有文件。
最佳答案
/dev/null
是一个特殊的文件,可以用来重定向你不想要的输出。
至于阅读,那就是cat /dev/null
,它只是不打印任何内容,因为它就像一个空文件。
由于>
是将标准输出重定向到文件(此处为 messages
和 wtmp
)的运算符,您将看到:
/var/log/messages
和 /var/log/wtmp
如果这里不存在,现在将存在 关于bash - 这个脚本如何在 Ubuntu 中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25452440/