Linux
- sys.argv 表示命令行参数
- python 后跟的都是命令行参数
- 其中文件名始终是第一个参数
- 安装软件的方式
- 包管理工具 - yum/rpm centos
- yum clean all 清除缓存
- yum makecache 将服务器上的软件包信息 现在本地缓存,以提高搜索安装软件的速度
- yum install 软件名 装软件
- yum remove 软件名 移除软件
- yum list installed 查安装好的软件
- 安装程序 - *.bin
- 压缩文件 - 解压缩 + 配置环境变量
- 源代码 - 构建安装(c语言构建安装)
web server——http服务器
- IIS- Internet Information Service
- Apache
- NginX
- nginx
- nginx -s reload 重启nginx
- ps -aux | grep 进程名 查进程| 检索标准
- /usr/share/nginx/html
firewall——防火墙
- firewalld 防火墙
- firewall-cmd –state 查看防火墙状态
- systemctl stop firewalld 关闭防火墙
- systemctl start/restart firewalld 开启/重启 防火墙
- systemctl status firewalld 查看防火墙状态
- firewall-cmd –zone=public –add-port=80/tcp –permanent (–permanent永久生效,没有此参数重启后失效)
- http是80端口 https是443d端口
python2 下实现打印日历
import sys
def my_cal(year):
weekdays = ['Sun', 'Mon', 'Tues', 'Wed', 'Thur', 'Fri', 'Sat']
months_name = ['January', 'February', 'March', 'April', 'May', 'June', 'July',
'August', 'September', 'October', 'November', 'December']
months_days = ([31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31],
[31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
)[is_years(year)]
y = int(str(year)[-2 :])
c = year // 100
for month, month_name in enumerate(months_name):
print month_name
for week, weekday in enumerate(weekdays):
print weekday + '\t',
print ''
for empty in range(day_week(year, month + 1, 1)):
print ' ' + '\t',
for day in range(1, months_days[month] + 1):
if day_week(year, month + 1, day) == 6:
print day
else:
print day,
print '\t',
print ''
def day_week(year, month, day):
if month < 3:
my_month = month + 12
my_year = year - 1
else:
my_month = month
my_year = year
y = int(str(my_year)[-2:])
c = my_year // 100
return (y + y // 4 + c // 4 - 2 * c + 26 * (my_month + 1) // 10 + day - 1) % 7
def is_years(year):
if year % 100 != 0 and year % 4 == 0 or year % 400 == 0:
return True
return False
def main():
if len(sys.argv) == 2:
my_cal(int(sys.argv[1]))
else:
my_cal(2018)
if __name__ == '__main__':
main()