基础自动化

我是一个新手服务器pipe理员,最近从Slicehost.com购买了一个帐户,并使用它来托pipe一些个人网站,所以我可以了解更多(我主要是一个Web开发人员)。

几年前,我记得在Windows上使用批处理脚本,可以让我自动化一些基本的东西。 有没有这样的Unix存在?

我想在Apache2中自动设置新域名,所以基本上创build目录,设置权限,在站点创buildconfiguration文件 – 然后运行a2ensite命令,最后重新启动Apache。

这可以从我可以从命令行运行的基本脚本实现吗? 任何基本的指针和指导,你可以给予非常感谢。

谢谢!

我build议你阅读bash脚本。

一些好的链接:

Bash比batch file更强大:)

这绝对是可行的。 任何可以通过命令行上的一系列命令完成的事情都可以放在一个bash脚本中,并从那里运行。

该脚本以#!/ bin / bash或#!/ bin / sh(对于sh而不是bash)开始#之后,启动注释行$ VARIABLE_NAME可用于引用由VARIABLE_NAME = foo设置的variables

命令行参数可以从$ 1开始抓取,($ 0是被调用的程序的名称)。

所以如果你想唤起脚本作为script.sh new_site

你可以让script.sh看起来像这样

#!/ bin / sh的

mkdir / var / www / htdocs / new_site chmod 755 / var / www / htdocs / new_site … apachectl restart

那么你只需要运行具有足够权限的脚本就可以执行所有运行的命令。

使用sh -x进行debugging(它将通过脚本输出大量脚本,以便您可以知道实际发生的情况)。

你也可以看看木偶。 对于一台服务器来说,这有点矫枉过正,但绝对是为了处理这种事情而devise的。