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

Ansible运行临时命令及常用模块介绍

目录

一.运行临时命令

1.基本语法格式

2.查看当前版本已安装的所有模块

二.ansible常见模块

1.command模块

2.shell模块

3.raw模块

4.script模块

5.file模块

参数列表:

示例:

6.copy模块

参数列表:

示例:

7.fetch模块

参数列表:

示例:

8.yum/apt/dnf

参数列表:

示例:

9.service模块

参数列表:

示例:

10.systemd模块

11.get_url

参数列表:

12.cron模块

参数列表:

13.user模块

参数列表:

示例:

14.Archive(打包压缩)/unarchive(解包解压)模块


一.运行临时命令

1.基本语法格式

ansible 主机/组 -m 模块名称 -a 模块参数 其他选项

#使用ping模块来测试节点连通性
[student@workstation ~]$ ansible servera -m ping
servera | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"
}
[student@workstation ~]$ ansible servera -m ping -o   #-o使输出在一行
servera | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"ping": "pong"}

2.查看当前版本已安装的所有模块

[student@workstation ~]$ ansible-doc -l | wc -l
2834[student@workstation ~]$ ansible-doc ping   
#直接使用"ansible-doc 模块名"来获取模块使用帮助,可以在查看后搜索"/EXAMPLES"来查看示例
[student@workstation ~]$ ansible-doc -s ping  #查看模块用法和后接参数

二.ansible常见模块

1.command模块

(1)通过-a后面跟上需要运行的命令,直接执行,但命令行不能包含“<,>,|,&”不指定模块时默认执行command模块

[student@workstation ~]$ ansible servera -m command -a 'free -m'
servera | CHANGED | rc=0 >>total        used        free      shared  buff/cache   available
Mem:            821         222         366          11         232         464
Swap:             0           0           0

(2)参数简介

chdir:切换目录

[student@workstation ~]$ ansible servera -m command -a 'chdir=/etc pwd'
servera | CHANGED | rc=0 >>
/etc

creates:文件存在时,后方接的命令不会执行

[student@workstation ~]$ ansible servera -m command -a 'creates=aaa.txt ls'
#不存在aaa.txt,ls命令执行
servera | CHANGED | rc=0 >>
anaconda-ks.cfg
original-ks.cfg

removes:文件不存在时,后方接的命令不会执行

[student@workstation ~]$ ansible servera -m command -a 'removes=aaa.txt ls'
#不存在aaa.txt,ls命令跳过执行
servera | SUCCESS | rc=0 >>
skipped, since aaa.txt does not exist

2.shell模块

同command,基于/bin/bash执行命令,可以支持“<,>,|,&”

[student@workstation ~]$ ansible servera -m shell -a 'free -m | grep Swap'
servera | CHANGED | rc=0 >>
Swap:             0           0           0

free_form:要执行的linux命令

executable:切换执行shell绝对路径来执行命令

3.raw模块

同command和shell,可以执行含特殊符号的命令,但raw模块没有chdir,creates,removes等参数

[student@workstation ~]$ ansible-doc -s raw
- name: Executes a low-down and dirty commandraw:executable:            # Change the shell used to execute the command. Should be an absolute path to the executable. When using privilege escalation (`become') a default shellwill be assigned if one is not provided as privilege escalation requires a shell.free_form:             # (required) The raw module takes a free form command to run. There is no parameter actually named 'free form'; see the examples!

4.script模块

在受管节点上执行管理节点的shell(把shell从管理节点复制到受管节点再在受管节点上运行)

[student@workstation ~]$ cat date.sh
#!/bin/bash
date > /date.txt
[student@workstation ~]$ ansible servera -m script -a '/home/student/date.sh'
#将管理节点的shell脚本文件复制到servera上执行,并查看是否执行成功
servera | CHANGED => {"changed": true,"rc": 0,"stderr": "Shared connection to servera closed.\r\n","stderr_lines": ["Shared connection to servera closed."],"stdout": "","stdout_lines": []
}
​
[student@workstation ~]$ ansible servera -m shell -a 'cat /date.txt'
servera | CHANGED | rc=0 >>
Sat Oct 14 04:09:17 GMT 2023      #执行成功

5.file模块

主要用于创建、删除文件或目录,修改权限等

参数列表:

path:必要参数,指定文件或目录,也可以使用dest或name(旧版本)替换

state:可以有touch(文件)、directory(目录)、link(软链接)、hard(硬链接)、absent(删除)几个可选项,主要用来进一步确认你操作的对象的文件属性

src:操作对象为link或hard并且state指定了link或hard时使用src来指定链接的来源

force:state=link时,使用force强制创建链接文件,使用于三种情况(src指向的源文件在创建链接前不存在,可以先强制创建链接文件;存放链接文件的目录内存在同名文件,可以使用force=yes实现删除同名文件再创建链接文件;前两种情况都有的情况下,使用force=yes会强制替换同名文件为创建的链接文件)

owner:指定文件拷贝到受管节点后的属主,前提是要先有这个用户

group:指定文件拷贝到受管节点后的属组,前提是要先有这个组

mode:指定文件拷贝到受管节点后的权限,一般多采用“mode=权限数值”方式

recurse:操作对象为目录时,会递归操作该目录

示例:

[student@workstation ~]$ ansible servera -m file -a 'path=/tmp/abc.txt state=touch'
servera | CHANGED => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": true,"dest": "/tmp/abc.txt","gid": 0,"group": "root","mode": "0644","owner": "root","secontext": "unconfined_u:object_r:user_tmp_t:s0","size": 0,"state": "file","uid": 0
}
[student@workstation ~]$ ansible servera -m shell -a 'ls /tmp | grep abc.txt'
servera | CHANGED | rc=0 >>
abc.txt

6.copy模块

主要用于将管理节点文件拷贝到受管节点

参数列表:

src:指定被copy的目录或文件

dest:指定被copy文件的目的目录(必要参数)

content:被copy内容非src指定文件时,使用content直接指定文件内容,src和content两者必要一个

force:受管节点路径下已经有同名文件但两者内容不同,选择是否强制覆盖,默认为yes

backup:受管节点路径下已经有同名文件但两者内容不同,选择是否对受管节点的该文件进行备份

owner:指定文件拷贝到受管节点后的属主,前提是要先有这个用户

group:指定文件拷贝到受管节点后的属组,前提是要先有这个组

mode:指定文件拷贝到受管节点后的权限,一般多采用“mode=权限数值”方式

示例:

[student@workstation ~]$ cat list
servera
[student@workstation ~]$ ansible servera -m copy -a 'src=/home/student/list dest=/tmp/'
servera | CHANGED => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": true,"checksum": "8e723f6a40d561529bae71445d9a60fbd8185fc6","dest": "/tmp/list","gid": 0,"group": "root","md5sum": "b891602b9b8b0a41ffd86c15b171ea56","mode": "0644","owner": "root","secontext": "unconfined_u:object_r:admin_home_t:s0","size": 8,"src": "/root/.ansible/tmp/ansible-tmp-1697267810.5263553-92157951653798/source","state": "file","uid": 0
}
[student@workstation ~]$ ansible servera -m shell -a 'cat /tmp/list'
servera | CHANGED | rc=0 >>
servera
​
#注意:若是对目录进行拷贝操作,src接的路径最后没有/表示连同目录一起拷贝,路径最后有/表示只拷贝该目录下的文件并不拷贝目录

7.fetch模块

主要用于将受管节点的文件拷贝到管理节点

参数列表:

dest:拷贝到管理节点的路径

src:从受管节点的哪个路径拷贝

flat:选择是否拷贝受管节点上该文件的目录结构,yes为不拷贝结构

示例:

#拷贝默认目录结构
[student@workstation ~]$ ansible servera -m fetch -a 'src=/tmp/abc.txt dest=/home/student'
servera | CHANGED => {"changed": true,"checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709","dest": "/home/student/servera/tmp/abc.txt","md5sum": "d41d8cd98f00b204e9800998ecf8427e","remote_checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709","remote_md5sum": null
}
[student@workstation ~]$ ll
total 16
-rw-rw-r--. 1 student student 238 Oct 12 13:27 ansible.cfg
-rw-rw-r--. 1 student student  29 Oct 14 04:06 date.sh
-rw-rw-r--. 1 student student   8 Oct 12 09:34 list
-rw-rw-r--. 1 student student 105 Oct 12 13:33 myhosts1
drwxrwxr-x. 3 student student  17 Oct 14 07:36 servera
[student@workstation ~]$ tree servera
servera
└── tmp└── abc.txt
​
1 directory, 1 file
​
#不拷贝目录结构,拷过来直接就是文件
[student@workstation ~]$ ansible servera -m fetch -a 'src=/tmp/abc.txt dest=/home/student/ flat=yes'
servera | CHANGED => {"changed": true,"checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709","dest": "/home/student/abc.txt","md5sum": "d41d8cd98f00b204e9800998ecf8427e","remote_checksum": "da39a3ee5e6b4b0d3255bfef95601890afd80709","remote_md5sum": null
}
[student@workstation ~]$ ll
total 16
-rw-rw-r--. 1 student student   0 Oct 14 07:48 abc.txt
-rw-rw-r--. 1 student student 238 Oct 12 13:27 ansible.cfg
-rw-rw-r--. 1 student student  29 Oct 14 04:06 date.sh
-rw-rw-r--. 1 student student   8 Oct 12 09:34 list
-rw-rw-r--. 1 student student 105 Oct 12 13:33 myhosts1
​
#注意一个报错:
"msg": "dest is an existing directory, use a trailing slash if you want to fetch src into that directory"
flat=yes时目录已存在,需要在目录后加个斜杠

8.yum/apt/dnf

主要用于软件包管理

参数列表:

name:进行操作的软件包名,可以是本地rpm包路径也可以是网络文件url地址

state:可选项present(安装),absent(删除),latest(更新)

示例:

[student@workstation ~]$ ansible servera -m yum -a 'name="bind" state=present'
servera | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/libexec/platform-python"},"changed": false,"msg": "Nothing to do","rc": 0,"results": ["Installed: bind"]
}
​
[student@workstation ~]$ ansible servera -m yum -a 'name="httpd" state=latest'
#更新某个包

9.service模块

主要用于各种服务的设置

参数列表:

enabled:yes/no,是否开机自启动

name:服务名称

state:可选项started,stopped,restarted,reloaded

daemon_reload:yes/no,是否配置文件重载

示例:

[student@workstation ~]$ ansible servera -m service -a 'name=httpd state=started'

10.systemd模块

主要用于服务配置文件变化后的服务管理

参数和用法同service模块

11.get_url

主要用于从http/https,ftp等服务器上下载资源,可以理解为linux上的wget命令

参数列表:

sha256sum:下载完成后进行完整性验证

timeout:超时时间,默认10秒

url:指定url地址,url=地址

urlpassword/urlusername:验证用户密码和名称

use_proxy:使用代理

owner:指定属主

group:指定属组

12.cron模块

主要用于计划任务管理

参数列表:

name:自定义名称,尽量贴近任务内容

minute:多少分钟,*/2表示每两分钟

hour:时

day:日

month:月

weekday:周几

state:可选项present(创建),absent(删除)

job:需要执行的具体任务,在state=present的前提下

backup:是否在做计划任务前对原本内容进行备份

user:以哪个用户的身份来执行

13.user模块

主要用于用户管理,user与group模块用法类似

参数列表:

name:指定用户名

uid:指定该用户uid

group:指定该用户所属组(私有组)

groups:指定该用户附加组

state:可选项present(创建),absent(删除)

remove:当state=absent时,remove表示将该用户的家目录一起删除

password:指定密码

home:家目录位置

createhome:yes/no,是否创建家目录

shell:shell类型

示例:

[student@workstation ~]$ ansible servera -m user -a 'name=sulibao state=present password="slb123"'
​
[student@workstation ~]$ ansible servera -m shell -a 'cat /etc/passwd | grep sulibao'
servera | CHANGED | rc=0 >>
sulibao:x:1002:1002::/home/sulibao:/bin/bash
​
[student@workstation ~]$ ansible servera -m shell -a 'cat /etc/shadow | grep sulibao'
servera | CHANGED | rc=0 >>
sulibao:slb123:19645:0:99999:7:::

14.Archive(打包压缩)/unarchive(解包解压)模块

参数列表:

copy:yes/no,yes将管理节点上的压缩包传送到受管节点后解压至特定目录,no将受管节点的压缩包解压到指定路径下

src:原路径,若是受管节点的路径需要设置copy=no

dest:受管节点的目标路径

mode:压缩文件解压后权限设置

相关文章:

Ansible运行临时命令及常用模块介绍

目录 一.运行临时命令 1.基本语法格式 2.查看当前版本已安装的所有模块 二.ansible常见模块 1.command模块 2.shell模块 3.raw模块 4.script模块 5.file模块 参数列表&#xff1a; 示例&#xff1a; 6.copy模块 参数列表&#xff1a; 示例&#xff1a; 7.fetch模…...

EtherCAT报文-APRD(自动增量读)抓包分析

0.工具准备 1.EtherCAT主站 2.EtherCAT从站&#xff08;本文使用步进电机驱动器&#xff09; 3.Wireshark1.EtherCAT报文帧结构 EtherCAT使用标准的IEEE802.3 Ethernet帧结构&#xff0c;帧类型为0x88A4。EtherCAT数据包括2个字节的数据头和44-1498字节的数据。数据区由一个或…...

论文阅读:Seeing in Extra Darkness Using a Deep-Red Flash

论文阅读&#xff1a;Seeing in Extra Darkness Using a Deep-Red Flash 今天介绍的这篇文章是 2021 年 ICCV 的一篇 oral 文章&#xff0c;主要是为了解决极暗光下的成像问题&#xff0c;通过一个深红的闪光灯补光。实现了暗光下很好的成像效果&#xff0c;整篇文章基本没有任…...

将license验证加入到系统中

1.将ClientDemo下的cn文件夹的内容导入项目对应的java目录下。 2.将license-config.properties文件导入resources目录下。 3.在项目的pom.xml中添加如下依赖。 <properties><!-- Apache HttpClient --><httpclient>4.5.5</httpclient><!-- License…...

中断机制-interrupt和isInterrupted源码分析、中断协商案例

当前线程的中断标识为true&#xff0c;是不是线程就立刻停止&#xff1f; 答案是不立刻停止&#xff0c;具体来说&#xff0c;当对一个线程&#xff0c;调用interrupt时&#xff1a; 如果线程处于正常活动状态&#xff0c;那么会将该线程的中断标志设置为true&#xff0c;仅此…...

我与COSCon的故事【时光的故事】

曾经 2019年的时候&#xff0c;我还在日本读研究生&#xff0c;做一些物联网 (Internet of Things, IoT) 网络中的底层P2P (Peer to Peer) 通讯仿真模拟。这个方向是新来的Nguyen老师的新方向&#xff0c;它跟计算机强相关&#xff0c;但是很小众&#xff0c;实验室里也没有前辈…...

【科学文献计量】利用pybibx分析Scopus文献数据集(EDA,N-Grams,Cluster,Network analysis,NLP)

利用pybibx分析Scopus文献数据集 1 运行前准备1.1 数据集1.2 前置库2 加载库3 数据导入4 探索式数据分析,即EDA4.1 表格可视化4.2 词云图可视化4.3 N-Grams可视化4.4 文献聚类4.5 主题词演化4.6 桑基图可视化4.7 树图可视化4.8 作者生产力可视化5 网络可视化5.1 文献引用与被引…...

-带你看懂11种API类型及应用-

一起走进多样的API&#xff0c;多样的精彩 随着互联网行业的日益发展&#xff0c;API(Application Programming Interface)这个名词对于绝大多数来说都已不再陌生。然而&#xff0c;实际上&#xff0c;根据不同标准可以划分出不同类型的API。今天&#xff0c;让我们来走…...

集成友盟qq互联分享,导出风险问题处理

处理方案&#xff1a;移除 android:exported"true"即可。 注意友盟SDK QQ share 里默认配置是android:exported"true"&#xff0c;所以要覆盖即可。...

探索数字安全的卓越之选 - Digicert证书

在数字时代&#xff0c;数据安全和隐私保护变得尤为重要。无论是个人网站、电子商务平台还是大型企业&#xff0c;保护用户数据和建立信任都是至关重要的任务。在这个领域&#xff0c;Digicert是一个备受推崇的品牌&#xff0c;提供了卓越的数字证书解决方案&#xff0c;以确保…...

第五章 流程控制 Pro

五、流程控制 1、条件语句 一、if语句&#xff08;三种形式&#xff09; 1、单分支语句: if &#xff08;表达式&#xff09;语句&#xff1b; //表达式可以是任何表达式 0和非0 多条语句加{ }构成复合语句 2、双分支语句 if(表达式) 语句1&#xff1b; else 语句2…...

CSS之实现线性渐变背景

1. background: linear-gradient() background: linear-gradient是CSS中用于创建线性渐变背景的属性&#xff0c;这个属性允许你定义一个在元素的背景中进行渐变的效果&#xff0c;可以从一个颜色过渡到另一个颜色。 基本语法 background: linear-gradient(direction, color-…...

软考 系统架构设计师系列知识点之特定领域软件体系结构DSSA(7)

接前一篇文章&#xff1a;软考 系统架构设计师系列知识点之特定领域软件体系结构DSSA&#xff08;6&#xff09; 所属章节&#xff1a; 第7章. 系统架构设计基础知识 第5节. 特定领域软件体系结构 相关试题 5. 特定领域软件架构&#xff08;Domain Specific Software Archite…...

CentOS-7网卡重启后关闭的解决方法

第一步查找网卡&#xff1a; ip addr 如下图&#xff1a; 于是发现网卡eth0。 第二步进入网卡配置目录并进行配置&#xff1a; cd /etc/sysconfig/network-scriptsvim ifcfg-eth0 第三步改配置如下图&#xff1a; 然后每次重启后网卡会自动启动。...

Linux CentOS7 用户组管理

Linux操作系统基于多用户的设计理念&#xff0c;允许多个用户同时使用系统资源。用户是登录系统并使用系统资源的个体&#xff0c;其都有自己的账户和密码。用户组是将众多用户归类为一组。Linux中的用户和用户组是系统安全和权限管理的基础。本文将探讨Linux中用户组的创建和管…...

C++算法:前缀和基础

相关 源码测试用例下载 https://download.csdn.net/download/he_zhidan/88430716 包括4个压缩包&#xff0c;初始代码&#xff0c;实现前缀和&#xff0c;实现前缀积&#xff0c;实现前缀异或。都是在前者的基础上修改的。 本博文是CSDN学院课程的讲义 https://edu.csdn.net/c…...

vue和react的区别

目录 1. 数据绑定 Vue React 2. 组件化 Vue React 3. 学习曲线 4. 状态管理 Vue React 5. 社区和生态系统 3. 学习曲线 4. 状态管理 Vue React 5. 生态系统 6. 社区和支持 7. 性能 8. 生产环境性能 9.语法和模板: 结论 当涉及到前端开发框架时&#xff0c…...

STM32 之 HAL 库串口 USART 丢数据及ORE卡死的解决方案

STM32 之 HAL 库串口 USART 丢数据及ORE卡死的解决方案_hal_uart_error_ore-CSDN博客...

递归最小二乘法RLS

参考&#xff1a;RLS递归最小二乘法(Recursive Least Squares)_hymwgk的博客-CSDN博客...

Apache Doris (三十九):Doris数据导出 - MySQL dump导出

🏡 个人主页:IT贫道_大数据OLAP体系技术栈,Apache Doris,Clickhouse 技术-CSDN博客 🚩 私聊博主:加入大数据技术讨论群聊,获取更多大数据资料。 🔔 博主个人B栈地址:豹哥教你大数据的个人空间-豹哥教你大数据个人主页-哔哩哔哩视频 目录...

【Nginx32】Nginx学习:随机索引、真实IP处理与来源处理模块

Nginx学习&#xff1a;随机索引、真实IP处理与来源处理模块 完成了代理这个大模块的学习&#xff0c;我们继续其它 Nginx 中 HTTP 相关的模块学习。今天的内容都比较简单&#xff0c;不过最后的来源处理非常有用&#xff0c;可以帮我们解决外链问题。另外两个其实大家了解一下就…...

vue3后台管理框架之集成sass

我们目前在组件内部已经可以使用scss样式,因为在配置styleLint工具的时候,项目当中已经安装过sass sass-loader,因此我们再组件内可以使用scss语法!!!需要加上lang="scss" <style scoped lang="scss"></style> 接下来我们为项目添加一些…...

无需付费开会员,一个Python程序实现PDF转高清图片

今天需要将一个PDF导出为图片&#xff0c;但是一般的在线转换网站导出的图片清晰度都不高&#xff0c;分辨率只有1241*1754&#xff0c;这就导致输出的图片放大后字体是有点模糊的&#xff0c;所以就想到了使用Python中的PyPDF2库来处理PDF文件&#xff0c;以及Pillow库来处理图…...

为分布式系统设计数据库

【squids.cn】 全网zui低价RDS&#xff0c;免费的迁移工具DBMotion、数据库备份工具DBTwin、SQL开发工具等 数据库设计是微服务和云原生解决方案的关键因素&#xff0c;因为基于微服务的架构导致了数据的分布式。数据管理不再在一个单一的过程中发生&#xff0c;而是可以通过多…...

Programming abstractions in C阅读笔记:p179-p180

《Programming Abstractions In C》学习第60天&#xff0c;p179-p180总结。 一、技术总结 1.palindrome(回文) (1)包含单个字符的字符串(如"a")&#xff0c;或者空字符串(如" ")也是回文。 (2)示例&#xff1a;“level”、“noon”。 2.predicate fun…...

在 VSCode 中使用 PlantUML

最近&#xff0c;因为工作需要绘制一些逻辑图&#xff0c;我自己现在使用的是 PlantUML 或者 mermaid&#xff0c;相比之下前者更加强大。不过它的环境也麻烦一些&#xff0c;mermaid 在一些软件上已经内置了。但是 PlantUML 一般需要自己本地安装或者使用远程服务器&#xff0…...

css3过渡属性属性名:transition

CSS3的过渡属性属性名是transition&#xff0c;它允许我们在状态改变时为元素添加过渡效果&#xff0c;例如在元素从一种样式变为另一种样式时添加平滑的过渡效果。 transition的语法如下&#xff1a; transition: property duration timing-function delay;其中&#xff0c;…...

关于数据链路层(初步)

以太网帧格式&#xff1a; 源地址和目的地址是指网卡的硬件地址&#xff08;也叫MAC地址&#xff09;&#xff0c;长度是48位&#xff0c;是在网卡出厂时固 化的&#xff1b; 帧协议类型字段有三种值&#xff0c;分别对应载荷的形式&#xff0c;有IP、ARP、RARP&#xff1b; …...

诊断DLL——CAPL_DLL集成安全访问算法

文章目录 前言一、CAPL DLL简介DLL生成C2338报错解决方案:二、添加27服务解锁算法三、CAPL调用dll前言 在实际诊断工程应用中,如UDS刷写——27服务,经常会遇到一些Seed2Key的算法问题,为了安全保密,这个算法的源码不便公开,我们可以将其打包成DLL,然后在CANoe诊断控制面…...

集合元素处理(传统方式和Stream方式)

1、集合元素处理&#xff08;传统方式&#xff09; 现在有两个ArrayList集合存储队伍当中的多个成员姓名&#xff0c;要求使用传统的for循环&#xff08;或增强for循环&#xff09;依次进行一下若干操作步骤&#xff1a; 第一个队伍只要 名字为 3 个字 的成员姓名&#xff1b;存…...

做民族网站的配色哪些颜色适合/买链接网

一、简介数据结构是我们用来处理一些数据的结构&#xff0c;用来存储一系列的相关数据。在python中&#xff0c;有列表&#xff0c;元组&#xff0c;字典和集合四种内建的数据结构。二、列表用于存储任意数目、任意类型的数据集合。列表是内置可变序列&#xff0c;是包含多个元…...

中国建设工程造价管理协会官网/网站页面seo

Android菜单详解&#xff08;五&#xff09;——使用XML生成菜单 - CodingMyWorld - 博客园 回顾前面的几篇&#xff0c;我们都是直接在代码中添加菜单项&#xff0c;给菜单项分组等&#xff0c;这是比较传统的做法&#xff0c;它存在着一些不足。比如说&#xff0c;为了响应每…...

部门网站建设的工作领导小组/app开发工具哪个好

在学习《modern c design》的时候&#xff0c;学习到了如何在 compile-time 检测两个类型之间是否可以转化. 这里的转换&#xff0c;既包括 int&#xff0c;long&#xff0c;double 这些数据类型之间的转换&#xff0c;也包括基类和子类之间的转换&#xff08;也就是两个类之前…...

中小型网站设计哪家好/官网seo优化找哪家做

​​​​​​347. 前 K 个高频元素 本题还是细节处理比较多&#xff0c;我不太熟悉小顶堆大顶堆&#xff0c;这个题花了一个多小时在搞基础&#xff0c;具体细节在代码部分。 class Solution {public int[] topKFrequent(int[] nums, int k) {Map<Integer,Integer> map…...

苏州高新区建设局网站管网/360免费建站

在使用linux系统中大多都是通过文本页面输入命令来进行操作&#xff0c;linux默认的shell就是bash&#xff0c;所以我们有必要对shell进行深入了解bash特性&#xff1a;一、命令别名&#xff1a;(自定义命令)alias命令可以用来定义和显示命令的别名。但是使用alias命令定义的别…...

网站设计费用价目表/sem数据分析

此脚本首先找到连接用户失效的索引,并在线重建. 1 create or replace procedure index_rebuild as2 cursor mycur is3 select *4 from user_indexes5 where status UNUSABLE;6 myrec user_indexes%rowtype;7 vsql varchar(100);8 begin9 open mycur; …...