当前位置: 首页 > wzjs >正文

wordpress语言更改优化疫情政策

wordpress语言更改,优化疫情政策,wordpress 复制版权,免费网战空间template 模板 模板是一个文本文件,可以做为生成文件的模版,并且模板文件中还可嵌套jinja语法 jinja2语言 网站:https://jinja.palletsprojects.com/en/2.11.x/ jinja2 语言使用字面量,有下面形式: 字符串&#xff1…

template 模板

模板是一个文本文件,可以做为生成文件的模版,并且模板文件中还可嵌套jinja语法

jinja2语言

网站:https://jinja.palletsprojects.com/en/2.11.x/
jinja2 语言使用字面量,有下面形式:

  • 字符串:使用单引号或双引号
  • 数字:整数,浮点数
  • 列表:[item1, item2, …]
  • 元组:(item1, item2, …)
  • 字典:{key1:value1, key2:value2, …}
  • 布尔型:true/false
  • 算术运算:+, -, *, /, //, %, **
  • 比较操作:==, !=, >, >=, <, <=
  • 逻辑运算:and,or,not
  • 流表达式:For,If,When

字面量:

表达式最简单的形式就是字面量。
字面量表示诸如字符串和数值的 Python 对象。如“Hello World”
双引号或单引号中间的一切都是字符串。无论何时你需要在模板中使用一个字符串(比如函数调用、过滤器或只是包含或继承一个模板的参数),如42,42.23
数值可以为整数和浮点数。如果有小数点,则为浮点数,否则为整数。在 Python 里, 42 和 42.0 是不一样的

算术运算:

Jinja 允许用计算值。支持下面的运算符:
+:把两个对象加到一起。通常对象是素质,但是如果两者是字符串或列表,你可以用这 种方式来衔接它们。无论如何这不是首选的连接字符串的方式!连接字符串见 ~ 运算符。 {{ 1 + 1 }} 等于 2
-:用第一个数减去第二个数。 {{ 3 – 2 }} 等于 1
/:对两个数做除法。返回值会是一个浮点数。 {{ 1 / 2 }} 等于 {{ 0.5 }}
//:对两个数做除法,返回整数商。 {{ 20 // 7 }} 等于 2
%:计算整数除法的余数。 {{ 11 % 7 }} 等于 4
:用右边的数乘左边的操作数。 {{ 2 2 }} 会返回 4 。也可以用于重 复一个字符串多次。 {{ ‘=’ 80 }} 会打印 80 个等号的横条
*:取左操作数的右操作数次幂。 {{ 2**3 }} 会返回 8

比较操作符

== 比较两个对象是否相等
!= 比较两个对象是否不等

如果左边大于右边,返回 true
= 如果左边大于等于右边,返回 true
< 如果左边小于右边,返回 true
<= 如果左边小于等于右边,返回 true

逻辑运算符

对于 if 语句,在 for 过滤或 if 表达式中,它可以用于联合多个表达式

  • and 如果左操作数和右操作数同为真,返回 true
  • or 如果左操作数和右操作数有一个为真,返回 true
  • not 对一个表达式取反
  • (expr)表达式组
    true / false true 永远是 true ,而 false 始终是 false

template

  • template功能:可以根据和参考模块文件,动态生成相类似的配置文件(通过变量)
  • template文件必须存放于templates目录下,且命名为 .j2 结尾
  • yaml/yml 文件需和templates目录平级,目录结构如下示例:

./
├── temnginx.yml
└── templates/nginx.conf.j2

范例:利用template 同步nginx配置文件

yum install nginx#如果有httpd先卸载
vim temnginx.yml
---
- hosts: webserversremote_user: roottasks:- name: install nginxyum: name=nginx- name: template config to remote hoststemplate: src=nginx.conf.j2 dest=/etc/nginx/nginx.conf#拷贝文件,但是相应的变量会对应发生变化notify: restart nginx#修改之后重启服务(可以需要时再加)- name: start serviceservice: name=nginx state=started enabled=yeshandlers:- name: restart nginxservice: name=nginx state=restarted

创建对应模板:

mkdir templates
cp /etc/nginx/nginx.conf templates/nginx.conf.j2#记得复制过来之后要将文件后缀该文.j2
vim templates/nginx.conf.j2
#将线程数改为 cpu数目+2/**2
worker_processes {{ ansible_processor_vcpus**2 }};    
worker_processes {{ ansible_processor_vcpus+2 }}; 

在这里插入图片描述

ansible-playbook -C temnginx.yml --limite linux101
ansible-playbook temnginx.yml --limite linux101
ansible linux101 -a 'pstree'

在这里插入图片描述

template中使用流程控制 for 和 if

template中也可以使用流程控制 for 循环和 if 条件判断,实现动态生成文件功能

  1. 创建脚本文件
vim temnginx2.yml
---
- hosts: webserversremote_user: rootvars:nginx_vhosts:- 81- 82- 83tasks:- name: template configtemplate: src=nginx.conf2.j2 dest=/data/nginx.conf
  1. 创建模板
vim templates/nginx.conf2.j2
{% for vhost in  nginx_vhosts %}
server {listen {{ vhost }}
}
{% endfor %}
  1. 执行
ansible-playbook  -C temnginx2.yml --limit linux101
ansible-playbook  temnginx2.yml --limit linux101
ansible linux101 -a 'cat /data/nginx.conf '

文件生成成功:
在这里插入图片描述
范例:

  1. 创建脚本文件
---
- hosts: webserversremote_user: rootvars:nginx_vhosts:- listen: 8080tasks:- name: config filetemplate: src=nginx.conf3.j2 dest=/data/nginx3.conf
  1. 创建模板
vim templates/nginx.conf3.j2
{% for vhost in nginx_vhosts %}   
server {listen {{ vhost.listen }}
}
{% endfor %}
  1. 执行
ansible-playbook -C temnginx3.yml --limit linux101
ansible-playbook temnginx3.yml --limit linux101
ansible linux101 -a 'cat /data/nginx3.conf 

在这里插入图片描述

在模版文件中还可以使用 if条件判断,决定是否生成相关的配置信息

  1. 创建yml文件
---
- hosts: webserversremote_user: rootvars:nginx_vhosts:- web1:listen: 8080root: "/var/www/nginx/web1/"- web2:listen: 8080server_name: "web2.magedu.com"root: "/var/www/nginx/web2/"- web3:listen: 8080server_name: "web3.magedu.com"root: "/var/www/nginx/web3/"tasks:- name: template config totemplate: src=nginx.conf4.j2 dest=/data/nginx4.conf
  1. 创建模板
{% for vhost in  nginx_vhosts %}
server {listen {{ vhost.listen }}{% if vhost.server_name is defined %}
server_name {{ vhost.server_name }}{% endif %}
root  {{ vhost.root }}
}
{% endfor %}
  1. 执行
ansible-playbook -C temnginx4.yml --limit linux101
ansible-playbook temnginx4.yml --limit linux101
ansible linux101 -a 'cat /data/nginx4.conf '

文件生成成功(可以用于在一个物理服务器上部署多个系统)
在这里插入图片描述

http://www.dtcms.com/wzjs/313249.html

相关文章:

  • 用买的服务器 做网站seo排名的职位
  • 淄博市住房城乡建设委官方网站合肥seo公司
  • 模板网站怎么做301全网搜索指数
  • 网站建设营销方案淄博网站制作
  • 秦皇岛建设网站企业培训机构排名前十
  • 网站怎么识别手机跳转企业培训考试app
  • 模具加工东莞网站建设技术支持中国公关公司前十名
  • 网站建设与管理书广州网站优化排名系统
  • 企业管理顾问咨询上海网站seoseodian
  • 用spl做网站今日新闻最新消息50字
  • google永久免费服务器网站产品怎么优化
  • 网站自做书本百度官方客服
  • 建站行业优化大师怎么强力卸载
  • 网站建设合同模版百度搜索 手机
  • 企业搭建pc端网站竞价排名适合百度吗
  • vs2008网站消息弹窗怎么做百度一下首页手机版
  • 怎么做网站的排名今日的头条新闻
  • 汕头服饰网站建设域名查询138ip
  • 个人网站 建设by网站域名
  • 宝鸡网站建设一般多少钱seo专业实战培训
  • 本地网站404错误seo推广多少钱
  • 中企动力免费做网站广州百度网站排名优化
  • wordpress用户权限管理seo工作内容和薪资
  • android系统下载应用商店aso优化
  • 做网站制作怎么样深圳电子网络推广查询
  • 注册过哪些网站草根seo视频大全网站
  • 服饰 视频 网站建设长春网站制作方案定制
  • 网站开发建设协议网络热词2022流行语及解释
  • 找点工程自己做哪 网站靠谱点关键词权重查询
  • 专门做网站建设的网站怎样优化文章关键词