一个 UNIX 开发者需要掌握的 AIX 技巧
2010-08-16 00:00:00 来源:WEB开发网看到了么,在当前目录下,有一个文件就叫做 rm (在大量文件混杂的复杂目录下,很容易忽略它)!看看它的内容:
清单 5. 伪造的 rm 命令内容
root@Testing1:/experiment>cat rm
/usr/bin/rm -rf /experiment/ABB/*
/usr/bin/rm $1
root@Testing1:/experiment>
原来是它删除了我们重要的文件!它实际是一个经过伪装的 shell 脚本,我们执行的时候没有发现异常,但是它已经偷偷删除了我们的重要文件。
这里只列举了一个简单的例子。实际在系统遭遇恶意的破坏时,脚本里边可能写的是更危险的命令, 或者设置后门等危及系统安全的操作。
由这个例子我们知道,使用绝对路径是多么的重要,它可以防止我们不慎运行了不期望的命令,尤其是使用 root 用户操作的时候更要注意这一点。
另外,这里需要提及的一句是, UNIX 只在当前 shell 的 PATH 变量所设置的路径中搜寻你输入的命令所需要的执行文件。也就是说, 如果 PATH 里边没有’ . ’配置,UNIX 是不会搜寻当前目录下的可执行文件的。
为了操作方便,有时我们不想每次都使用绝对路径来执行命令,而这时又常常需要运行当前目录下的文件,这种情况下,使用“选择 1”也会保险的多!
使用 "history" 命令 , 复用你的输入 !
使用命令行的时候我们常常要输入很多命令,这些命令又经常会需要有很多参数配合,因此有时 AIX 的命令看起来显得很复杂冗长。尤其在调试的时候,常常会输入大量重复的命令。有没有办法可以提高工作效率? 这里解释一个复用历史命令的好方法。
首先介绍一下 AIX 的 shell 环境,默认情况下所有用户都使用 Korn Shell。Korn Shell 会在用户的 HOME 目录下维护一个命令日志文件 .sh_history 。默认情况下这个文件会纪录 128 条用户的历史命令信息。这是个文本文件,我们可以直接用文本工具查看它的内容。
更多精彩
赞助商链接