【发布时间】:2011-09-15 21:20:08
【问题描述】:
我正在尝试编写一个 Linux Shell 脚本来在我的服务器上进行一些自动化操作。顺便说一句,我使用的是 Ubuntu 11.04。
基本上流程如下:
A.我在一个目录 (/home/mydir) 中使用 PHP 创建了多个文本文件。这些文本文件是 shell 脚本的存根,它们只包含变量定义。以下是其中一个文件中可能包含的内容的示例。
username="myusername1"
password="mypassword1"
othersettings="othersettings1"
B.我有一个引用上述变量的设置 shell 脚本。以下是脚本中可能包含的部分内容:
#!/bin/bash
mkdir /home/newdir/$username
我正在尝试编写一个激活 shell 脚本,它将找出 /home/mydir 中有多少这些文件,然后为目录中的每个文件执行设置 shell 脚本。因此,例如,如果我有 5 个具有 5 个不同用户名、密码等的文件,则安装脚本将使用每个文本文件中的变量运行 5 次,以完成此脚本中定义的任务。
对于如何编写这样的脚本,我将不胜感激。我的想法是我应该使用 ls -1 /home/mydir | grep .txt 来获取所有 txt 文件,然后将它们提取到一个数组中,然后迭代并执行脚本,但我不是 shell 脚本专家,所以我需要一些帮助与语法。如果 shell 脚本是 PHP,那对我来说就不是问题,但可惜不是。
提前致谢。
【问题讨论】:
-
您知道,您可以在命令行中使用 PHP。我相信 Ubuntu 软件包是
php5-cli。然后你就可以编写 PHP 脚本了。 -
@Derobert:是的,我知道,但我打算使用 CRON 运行这个脚本。
-
没有什么能阻止你从 cron 运行 PHP 脚本。 Shell 脚本并没有什么特别之处。将
#!/usr/bin/php放在最上面,chmod +x 它,它会像任何其他程序一样运行。 -
好的,我会这样做的,我相信它也会容易得多。我正在使用我从源代码编译的 PHP-FPM。无论如何我都必须安装php-cli吗?!
-
好吧,我只是假设您使用的是打包的 PHP。如果您使用的是自编译版本,则只需编译它以获得命令行支持。您可能已经这样做了;看看你有没有 'php' 或 'php5' 命令。