后台启动&重启程序
- 后台运行程序:
nohup xxx.sh >> xx.log &
- 查看程序是否启动成功:
ps -x
- 若未找到对应的运行记录,则单独运行程序看看是否有报错:
./xxx.sh
- 我这里错误原因是
OSError: [Errno 98] Address already in use
,说明端口号被占用无法启动程序,那么需要查一下端口号被什么程序占用了:lsof -i:端口号
- 显示一个Python程序占用了端口号,我这里实际是因为上次手动杀掉程序时未释放端口号导致,因此手动停止该程序:
kill PID
- 使用lsof命令查看端口是否有被使用
- 未被使用则再次运行程序查看是否有报错,若有报错则进一步判断问题原因并解决即可!
- 如果要停止运行程序,需要终止程序并且终止端口号占用,需要kill两次。
文件夹操作
- 统计文件夹下的文件数(含子文件夹):
ls -lR| grep "^-" | wc -l
- 统计当前目录下文件的个数(不包括目录):
ls -l | grep "^-" | wc -l
- 查看某目录下文件夹(目录)的个数(包括子目录):
ls -lR | grep "^d" | wc -l
ls -lR
是列出所有文件,包括子目录。
grep "^-"
过滤ls的输出信息,只保留一般文件,只保留目录是grep "^d"
wc -l
统计输出信息的行数,统计结果就是输出信息的行数,一行信息对应一个文件,所以就是文件的个数。
定时任务
通过crontab -e
编辑定时任务,crontab具体用法可以参考:Linux crontab 命令
举例:每年的1月份每周一至周五14点30分运行get_data.sh脚本,运行日志新增输出到run.log文件中
30 14 * 1 1-5 get_data.sh >> run.log
crontab -l
查看已添加的定时任务
查看文件
less +G -n file
// 打开文件的时候,直接定位到文件的最底部,默认情况下是在首行。