我可以从 shell 脚本开始处理 XML 吗?
can I start processing XML from shell script?
我用 crontab 启动一个 sh 脚本来创建一个 xml 文件 ("MyXML") "MyApp.exe" 使用来自 "SpecificDirectory":
的配置文件
#!/bin/bash
cd ~/MyDirectory
mono MyApp.exe ./SpecificDirectory
然后还有另一个 cron 选项卡将 MyXML 文件处理到数据库中。
1 7 * * * php /var/www/html/artisan xml:process MyXML >> /var/log/xml-process.log 2>&1
我能否将 artisan xml 进程添加到 shell 脚本中,使其不由 crontab 执行,而是在 exe 完成创建 MyXML 后立即执行?
如果是,那会是什么样子?
有时创建需要更长的时间,即使 xml 尚未完全创建,xml:process 也会开始。
如果相关,我使用 Ubuntu 16.04。
据我了解,您目前 运行 两个来自 cron
的单独计划任务。
一个shell脚本包含一系列命令,除非另有说明,否则它们将按照它们出现的顺序一条一条地执行。
如果您的 php
命令总是在 mono
命令完成后执行,那么只需将它添加到该脚本的底部并删除单独的 cron
条目:
#!/bin/bash
cd ~/MyDirectory
mono MyApp.exe ./SpecificDirectory
# it may be necessary to change directory here
# (but it doesn't look like it, since you're using absolute paths)
php /var/www/html/artisan xml:process MyXML >> /var/log/xml-process.log 2>&1
我用 crontab 启动一个 sh 脚本来创建一个 xml 文件 ("MyXML") "MyApp.exe" 使用来自 "SpecificDirectory":
的配置文件#!/bin/bash
cd ~/MyDirectory
mono MyApp.exe ./SpecificDirectory
然后还有另一个 cron 选项卡将 MyXML 文件处理到数据库中。
1 7 * * * php /var/www/html/artisan xml:process MyXML >> /var/log/xml-process.log 2>&1
我能否将 artisan xml 进程添加到 shell 脚本中,使其不由 crontab 执行,而是在 exe 完成创建 MyXML 后立即执行?
如果是,那会是什么样子?
有时创建需要更长的时间,即使 xml 尚未完全创建,xml:process 也会开始。
如果相关,我使用 Ubuntu 16.04。
据我了解,您目前 运行 两个来自 cron
的单独计划任务。
一个shell脚本包含一系列命令,除非另有说明,否则它们将按照它们出现的顺序一条一条地执行。
如果您的 php
命令总是在 mono
命令完成后执行,那么只需将它添加到该脚本的底部并删除单独的 cron
条目:
#!/bin/bash
cd ~/MyDirectory
mono MyApp.exe ./SpecificDirectory
# it may be necessary to change directory here
# (but it doesn't look like it, since you're using absolute paths)
php /var/www/html/artisan xml:process MyXML >> /var/log/xml-process.log 2>&1