首先启动 Apache
1.启动
sudo apachectl -k start
2.重新启动
sudo apachectl -k restart
设置Apache容器默认目录
1.Apache配置文件所在目录
cd /etc/apache2/
2.修改Apache配置文件
sudo vim httpd.conf
3.查找 DocumentRoot 字符串。“/”为查找定位的意思
将上述目录改为自己想要的目录就可以,默认是/Library/WebServer/Documents,也可以不改
4.在<Directory下添加
Options Indexes 这样通过ip访问就可以浏览目录了
添加
indexOptions NameWidth=128 显示的目录名就不是短名字了
然后配置定时运行程序
1.创建文件 ios.crash.launchd.plist 保存到 /Library/launchDaemons 目录下 ,StartCalendarInterval 它可以指定脚本在多少分钟、小时、天、星期几、月时间上执行
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>ios.crash.launchd.plist</string>
<key>ProgramArguments</key>
<array>
<string>/Users/iOSCMB/Auto/AutoiOSCrash.sh</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Minute</key>
<integer>0</integer>
<key>Hour</key>
<integer>1</integer>
</dict>
<key>StandardOutPath</key>
<string>/Library/WebServer/Documents/ioscrash/AutoiOSCrash.log</string>
<key>StandardErrorPath</key>
<string>/Library/WebServer/Documents/ioscrash/AutoiOSCrash.err</string>
</dict>
</plist>
更改文件拥有者和权限,不改的话,服务是跑不起来的
sudo chown root:wheel /Library/LaunchDaemons/ios.crash.launchd.plist
sudo chmod 644 /Library/LaunchDaemons/ios.crash.launchd.plist
2.创建AutoiOSCrash.sh文件,保存到/Users/iOSCMB/Auto目录下(目录随意,和ios.crash.launchd里的内容保持一致就行)
#!/bin/bash
/usr/bin/python /Library/WebServer/Documents/ioscrash/main.py
更改文件拥有者和权限
sudo chown root:wheel /Users/iOSCMB/Auto/AutoiOSCrash.sh
sudo chmod a+x /Users/iOSCMB/Auto/AutoiOSCrash.sh
main.py 就是符号化Crash的脚本
在脚本中需要注意几点
1.sys.path[0] 获取脚本文件所在目录
2.在终端输入命令 type 命令 ,可以知道命令工具的绝对路径 ,比如 输入type wget 输出 wget is /usr/local/bin/wget。
防止通过launchctl start 执行的python文件去执行shell脚本的时候提示 -bash: wget: command not found
launchctl load ios.crash.launchd.plist
launchctl unload ios.crash.launchd.plist
launchctl start ios.crash.launchd.plist
launchctl stop ios.crash.launchd.plist
launchctl list
要加载做好的plist文件,就是用上面的第一个命令load,这个时候糸统就会在每天的1点0分执行脚本。如果想去掉定时任务就可以用unload命令。
如果一个任务今天的1点0分执行过了,然后你改了,com.jackin.launchctl.plist里面的时间,比如说改到12点24分执行,必须unload之后再重新load一下,不然当天不会再执行这个命令。
start可以测试任务,这个是立即执行,不管时间到了没有
stop可以停止任务
在右下脚设置定时唤醒时间,以防止电脑睡眠后不能跑脚本的问题