自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(192)
  • 资源 (16)
  • 收藏
  • 关注

原创 【仿真建模-Anylogic】Muti-part ALP文件解析-普通的Java类

Anylogic模型中可以自定义Java接口、Java类、Java枚举(Option List)。当开启Multi-part ALP格式时,对应的Java接口与Java类的代码会保存在_alp/Classes/文件夹下。而Java枚举则保存在alpx文件中。注:Anylogic中的Option List本质是Java的枚举类,但其相对于Java枚举类而言更简单,只允许定义简单枚举项。个人更倾向于使用Java枚举类,即新建Java类后将其改为enum。

2024-12-18 06:00:00 364

原创 【仿真建模-Anylogic】Muti-part ALP文件解析-Expriments.xml文件

Experiments.xml文件是Anylogic仿真模型中的各类实验的配置,其内部结构用于定义和管理实验。其中最为常用的是SimulationExperiment、CustomExperiment;

2024-12-17 15:06:46 707

原创 【仿真建模-Anylogic】Muti-part ALP文件解析-alpx文件

Anylogic从8.9.1版本增加了Multi-part ALP文件格式,以便于使用Git进行代码管理以及团队协作。在创建模型时,通过勾选Multi-part ALP format选项即可开启。

2024-12-17 12:53:57 897

原创 【大模型-智能体】AutoGen Studio测试和导出工作流程

AutoGen Studio允许用户针对任务交互式地测试工作流程,并审查由此产生的成果物(如图像、代码和文档)。此外用户还可以查看Agent工作流程在处理任务时的“内心独白”,并查看诸如运行成本(如回合数、令牌数等)和Agent行为(如是否调用了工具以及代码执行的结果)等分析信息。

2024-11-22 17:27:19 1192

原创 【大模型-智能体】AutoGen Studio构建工作流程

AutoGen Studio支持以声明式方式创建Agent工作流程,并允许在聊天界面中指定和运行任务,以便Agent完成这些任务。预期的使用行为是,开发者可以创建技能和模型,将它们附加到Agent上,并将Agent组合成工作流程,这些工作流程可以在聊天界面中进行交互式测试。简单来说,AutoGen Studio提供了一个平台,让开发者能够轻松地设计Agent的工作流程,通过聊天界面与Agent进行交互,以测试和验证工作流程的有效性。

2024-11-22 16:53:58 1569

原创 【大模型-智能体】AutoGen Studio安装

注意:需要确保自己本地的python版本在3.10以上。即可开始使用AutoGen Studio。启动后,在浏览器内访问。

2024-11-22 15:29:38 857

原创 【大模型-智能体】AutoGen Studio简介

AutoGen Studio基于AutoGen框架,该框架是一个用于定义、配置和组合AI智能体以驱动多智能体应用的开源Python框架。AutoGen Studio的推出,旨在降低多智能体应用的开发门槛,使开发者能够通过简单的拖拽操作,快速创建和管理多个AI智能体,实现它们的协作工作。

2024-11-22 13:50:11 685

原创 【大模型-智能体】AutoGen简介

AutoGen是一个功能强大、灵活且易于使用的工具,其能够帮助开发者创建基于大语言模型的复杂应用程序。通过提供模块化设计、高级抽象层、多Agent方法以及可视化和调试工具等特性,显著降低了开发复杂度、提高了开发效率,并拓宽了应用范围。

2024-11-22 12:45:51 656

原创 【仿真建模-MESA】框架简介

Mesa是一个基于Python3+的开源项目,旨在提供一个现代、易用的多智能体仿真环境。它借鉴了NetLogo、Repast和MASON等多智能体仿真框架的优点,并结合Python语言的强大功能,为用户提供了丰富的建模和仿真工具。

2024-11-21 18:12:57 676

原创 【仿真建模-MASON】框架简介

MASON是一个强大的开源Java库,专为创建大规模分布式多智能体系统仿真而设计,以高效的设计、灵活性和广泛的应用领域而著称。其不仅包含核心的MASON项目,还提供了多种扩展功能,这些扩展功能可以在其贡献目录中找到。MASON项目官网提供详细信息和进一步的资源链接,以确保开发者能够充分利用这个平台进行复杂系统的建模与模拟。目前,最新版MASON版本于2024年3月更新,版本号为22。

2024-11-21 16:15:14 731

原创 【日常记录-Java】Ant

Ant是一个基于Java的构建工具,通过读取XML格式的配置文件(通常命名为build.xml)来执行构建过程,这些配置文件定义了项目构建所需的各个目标和任务。

2024-11-01 14:25:54 555

原创 【日常记录-Java】SLF4J扫描实现框架的过程

在SPI包下,SLF4J定义了一个接口SLF4JServiceProvider,具体的日志实现框架会提供一个实现类,并配置在META-INF/services/org.slf4j.spi.SLF4JServiceProvider文件中;若未找的,则使用默认的NOPServiceProvider,该provider提供的logger不会输出任何东西;通过初始化后的SLF4JServiceProvider,可以获取到一个ILoggerFactory接口的实现,在通过该实现获取具体的Logger对象;

2024-10-30 14:27:34 591

原创 【日常记录-Java】JarFile

JarFile是java.util.jar包下的一个类,其扩展了java.util.zip.ZipFile类。JarFile主要用于读取Jar文件的内容。Jar文件是一种用于存储和分发Java类文件、资源文件和元数据的文件格式,其类似于Zip压缩文件,但具有特定的用途和结构。

2024-10-28 09:28:07 798

原创 【日常记录-Java】可变长度参数

以B作为入口类,当参数个数不为1时,报错为“Exception in thread "main" java.lang.IllegalArgumentException: wrong number of arguments”。参数个数为1时,报错为“Exception in thread "main" java.lang.IllegalArgumentException: argument type mismatch”。

2024-10-25 16:44:15 380

原创 【日常记录-Linux】WebDriver

WebDriver是一个开放源代码的库,提供了一种用于自动化测试和控制浏览器的标准接口。通过模拟真实用户操作来与浏览器进行交互,如点击、输入、滚动等,并验证页面元素的状态和内容。其支持多种变成语言,如Java、Python、C#等,允许开发人员根据自己的技术栈选择合适的语言来编写测试脚本。

2024-09-04 14:27:55 622

原创 【日常记录-Linux】unzip指令

unzip是一个在类Unix系统(如Linux、macOS)上广泛使用的命令行工具,用于解压缩.zip格式的文件。.zip是一种广泛支持的压缩文件格式,它可以包含一个或多个文件,这些文件被压缩以节省存储空间,并且可以被压缩成单个的.zip文件以便传输。

2024-08-28 10:37:21 1336 1

原创 【日常记录-Nginx】alias指令

在Nginx中,alias指令用于指定一个替换位置,该替换位置会替换掉location块中指定的URI。即当访问一个特定的location时,Nginx会使用alias指定的路径来替换原始的请求URI,并在这个新路径下查找资源。alias指令通常与location块一起使用,特别是在处理静态文件时非常有用,其允许将请求映射到服务器上的非标准目录,而不需要改变URI的结构。

2024-08-27 07:00:00 3652

原创 【日常记录-Nginx】try_files指令

try_files是Nginx中一个非常强大且常用的指令,其用于按顺序检查文件是否存在,并将请求传递给第一个找到的文件,或者在所有文件都未找到时,执行一个回退URI。该指令在配置静态网站或单页面应用(SPA)时特别有用,因为其可以确保Nginx优先服务静态文件,而只有在静态文件不存在时才将请求转发给后端应用或提供回退页面。

2024-08-27 07:00:00 790

原创 【日常记录-MySQL】EVENT

在MySQL中,EVENT是一种数据库对象,其用于设定数据库任务自动执行。这些任务可以是任意有效的SQL语句,如数据的增删改以及存储过程调用等。EVENT是基于时间或特定条件的自动化任务,非常适合用于执行定期维护任务,如旧数据清理、统计数据更新等。

2024-08-07 16:37:16 485

原创 【日常记录-Docker】RUN

RUN在Dockerfile中用于镜像的构建;构建镜像:RUN在Dockerfile中用于执行命令,并在当前镜像基础上创建一个新的镜像层。这些命令可以是安装软件包、复制文件或进行配置更改等操作;提交结果:执行完命令后,RUN会将结果提交为新的镜像层,该镜像层将用于Dockerfile中的后续步骤;

2024-08-01 07:00:00 339

原创 【日常记录-Docker】CMD与ENTRYPOINT

CMD和ENTRYPOINT都是Dockerfile中用于定义容器启动时执行命令的两个重要指令,两者在原理、用法以及相互关系上有显著的区别;在Dockerfile中用于为容器提供默认的执行命令或参数,当容器启动时,若没有通过docker run命令指定其他命令,则会执行CMD中定义的命令;即CMD的主要用途是为容器内的应用程序提供默认的运行方式或参数;

2024-08-01 07:00:00 1053

原创 【仿真建模-传热学】空间区域的离散化方法

进行区域离散化时,应注意相邻两控制体的厚度变化不应太大,同一控制容积各个方向的尺寸一般也不宜相差太远,否则会降低计算的准确度。节点数的多少应在计算过程中做适当的调整,在调试程序的初期宜取较少的节点数,而随着计算的进行,逐步加密网格,当计算的主要结果不再随节点数的增加而发生变化时,就得到了与节点数无关的解。

2024-07-29 15:02:26 1054

原创 【笔记-软考】大数据架构-Lambda与Kappa架构对比

大数据系统架构的设计思想很大程度受技术条件和思维模式的限制;Lambda架构在提出初期面向小范围业务,直接将成熟离线处理技术(Hadoop)和实时处理技术(Storm)相结合,用View模型将二者处理后得到的输出结果结合起来,在服务层进行统一后,再开放给上层服务,是相当可行且高效的设计方式。而Kappa架构的作者对流式处理系统有着丰富的理论知识和使用经验,基于对流式计算的深入理解,Kappa架构在同一层内进行实时处理和离线处理。

2024-07-28 06:30:00 1120

原创 【笔记-软考】层次式架构-业务逻辑层架构设计

使用工作流的思想组织业务逻辑的优势在于:将应用逻辑与过程逻辑分离,在不修改具体功能的情况下,通过修改过程模型改变系统功能,完成对生产经营部分过程或全部过程的集成管理,有效地将人、信息和应用工具合理组织起来,发挥最大的效能;工作流:业务流程的全部或部分自动化,并在此过程中,文档、信息、任务按照一定的过程规则流转,实现组织成员间的协调工作以达到业务的整体目标;系统实现所有后台逻辑后,向外提供一个统一的Facade接口,而前台层仅依赖于该Facade接口,实现前台层与业务层的解耦;

2024-07-28 06:00:00 484

原创 【笔记-软考】层次式架构-数据访问层设计

工厂模式定义一个用于创建对象的接口,让子类决定实例化哪一个类,从而将实例化操作延迟到子类中;在数据访问层中,为实现对多种数据库的操作,需先定义一个数据库操纵接口,然后根据数据库的不同,由类工厂决定实例化哪个类;连接池的核心理念:在系统初始化时,依据配置创建连接并放入连接池内,此后所使用的连接均从该池内获取,以实现连接的高效复用;数据库连接对象属于重要的共享资源,为解决其频繁分配与释放所带来的性能问题,引入了连接池;

2024-07-27 12:04:15 614

原创 【笔记-软考】层次式架构-表现层框架设计

UIP(User Interface Process)将表现层划分为UIC(User Interface Components)和UIPC(User Interface Process Components)两个子层,其中UIC负责用户数据获取和结果返回,而UIPC用于协调界面的各个部分,使其配合后台的活动;表现层设计模式主要包括MVC、MVP、MVVM三种,用来分离显示部分和业务处理部分(显示部分发生变化的概率更高,分离后可单独演化);界面管理技术主要包括界面配置、界面定制、界面动态生成三部分;

2024-07-27 07:00:00 488

原创 【踩坑系列-anylogic】动画模型支持多实例

仿真模型的运行需要输入输出数据,而在支持多用户的场景下,需要对各个用户的数据进行区分。为此,数据需要携带标识taskId,该标识全局唯一,并在启动时通过启动命令行的参数列表传入模型。导出为独立应用的仿真模型,默认启动时随机选择一个可用端口号,不利于管理。:由上述描述可知,数据唯一标识也可以通过系统属性变量进行设置,只不过需要将模型内获取唯一标识的方法修改为从系统属性变量中获取即可。唯一标识传入模型后,需要在模型运行前读取数据完成初始化,并在模型运行结束后将结果统一写出到指定位置。

2024-07-22 11:45:59 695

原创 【踩坑系列-anylogic】智能体群的z-order变更

木板智能体由智能体群进行维护,模型启动时依次创建3个木板智能体,标识分别为S0、S1、S2,z轴坐标分别为0,10,20;现象是2D与3D视图显示不一致,3D视图显示最上层为S2,2D视图显示最上层为S0;从内核源码可知,智能体群的演示内容是通过LinkedHashMap进行维护,其顺序完全依赖于添加次序,故更改添加到智能体群的先后次序可间接变更z-order;2D视图下z轴无法显示,其z-order决定了渲染次序;故上述问题是由各木板智能体在演示视图上的z-order不正确导致的。

2024-07-19 17:57:23 530

原创 【笔记-软考】软件架构风格

数据流架构风格是一种类计算机体系结构,其没有概念上的程序计数器,指令的可执行性与执行仅基于指令输入参数的可用性来确定,故该风格的指令执行顺序是不可预测的,即行为是不确定;系统中采用调用与返回机制,主要思想是将一个大系统分解为若干子系统,以便降低复杂度,并增加可修改性;主要包括主程序/子程序架构风格、面向对象架构风格、层次型架构风格、客户端/服务器架构风格;强调系统中每个构件都是相对独立的个体,它们之间不直接通信,以降低耦合度、提升灵活性,该风格主要包括:进程通信架构风格和事件系统架构风格;

2024-07-18 16:27:50 1062

原创 【仿真建模-anylogic】开发规范

Anylogic默认设定函数访问权限为default。需要依据该函数未来的使用范围,重新在public、protected和private之间做选择。避免将智能体导出为自定义组件库后,其他模型内无权访问该方法。

2024-06-28 17:55:24 610

原创 【学习笔记-机器学习】感知机模型

求得一个能够将训练数据集的正实例点和负实例点完全正确分开的分离超平面,即确定感知机模型参数w、b;感知机是一种二分类的线性分类模型,属于判别模型,是神经网络和支持向量机的基础;将误分类点到超平面S的总距离作为损失函数并将损失函数极小化。能够将数据集的正实例点和负实例点完全正确地划分到超平面的两侧,即对所有。(4) 转至(2),直至训练集中没有误分类点。,则称数据集T是线性可分的,否则,称数据集T线性不可分;其中w和b为感知机的模型参数,表示实例的特征向量,对应于输入空间的点;训练数据集是线性可分的。

2024-06-26 17:54:38 1060

原创 【仿真建模-anylogic】FlowchartBlock原理解析

由于Anylogic内核做过代码混淆,以下代码为二次加工后的逻辑;该类为所有流程处理块的基类,定义标准函数;

2024-06-17 08:00:00 505

原创 【仿真建模-anylogic】EventRate原理解析

为了自定义泊松过程的到达率以及“到达”特性发生时需要执行的逻辑,Anylogic会自动在容器类中生成double evaluateRateOf( EventRate _e )和void executeActionOf( EventRate self )函数;EventRate主要用于对符合泊松过程的事件触发场景进行建模,例如:商店顾客到达过程符合泊松过程,统计数据分析出其到达率为每天1000人,则可以通过EventRate描述顾客到达模型;EventRate是Event的3个子类之一,其主要用于对符合。

2024-06-13 13:33:03 894

原创 【仿真建模-anylogic】Dynamic Event原理解析

CustomDynamicEvent是由用户拖拽Dynamic Event组件后由Anylogic自动生成的DynamicEvent子类,用户可在该组件的属性窗口自定义入参和事件逻辑;Anylogic会依据自定义入参自行调整生成的构造函数,并为用户生成对应的create_CustomDynamicEvent方法;这也是DynamicEvent可以并行的原因(每次都是生成一个新的实例,互不影响);DynamicEvent是EventOriginator的子类,其主要扩充了 void reset()函数;

2024-06-12 14:02:15 501

原创 [日常踩坑]--(14)异步任务与事务

Author:赵志乾Date:2020-08-14Declaration:All Right Reserved!!!踩坑:场景:数据库事务执行完,需要执行异步任务;例如向Redis发布消息;做法:事务的最后一步执行消息发布;代码如下:@Transactional(rollbackFor = Exception.class)public void doMyTransaction(Object param) { // step1: 执行事务操作 // step2: 发布Re.

2020-08-14 15:13:31 880

原创 [日常踩坑]--(13)MySQL大表变更

Author:赵志乾Date:2020-08-14Declaration:All Right Reserved!!!踩坑:场景:MySQL数据库单表行数将近400万,多张表加和约千万行。需要对这几张表进行字段添加和字段更新;做法:使用数据客户端连接数据库,直接执行变更命令;现象:此系列命令的执行极其占用数据库资源,使得数据库性能大幅下降。导致线上应用中的其他表单条记录更新操作耗时将近30秒,并发锁过期失效,出现数据更新错乱。解决方案:上述问题是由于单表过大,导致更新占用过..

2020-08-14 14:35:29 304

原创 [日常踩坑]--(12)Redis锁释放

Author:赵志乾Date:2020-07-28Declaration:All Right Reserved!!!踩坑:场景:获取Redis锁,完成业务逻辑后释放锁做法:try语句中获取Redis锁,finally语句中释放锁,代码如下:try{ // step1: 获取锁--默认过期时间15秒 boolean result = jedisTemplate.getLock(lockKey); if(!result){ // 抢锁失败 .

2020-07-28 13:35:34 2502

原创 [日常踩坑]--(11)随机业务id重复问题

Author:赵志乾Date:2020-06-05Declaration:All Right Reserved!!!踩坑:场景:业务记录需要唯一标识,也就是我们使用的业务id。做法:本地通过时间戳+业务串+随机数的规则生成业务id,当在循环中使用该方法是会产生重复的业务id。代码如下:public class ServiceIdGenerator { private static DateFormat dateFormat = new SimpleDateFormat("yy.

2020-06-05 18:42:03 1457

原创 [系统设计]--(2)控制接口调用间隔的接口并发锁

Author:赵志乾Date:2020-04-04Declaration:All Right Reserved!!!《小并发量、低延时、通用场景下的接口并发锁》给出的并发锁方案主要用于解决多个请求并发调用时,只有单个调用能够抢到锁并完成业务流程的执行。为此,其在业务代码执行前进行抢锁,执行完或异常终止时显示释放锁,以便后续请求能够顺利执行。现在我们要面临一个新的场景,某类修改接口针对...

2020-04-05 09:20:55 515

原创 [系统设计]--(1)小并发量、低延时、通用场景下的接口并发锁

Author:赵志乾Date:2020-04-04Declaration:All Right Reserved!!!实际项目中的接口大致可以分为两大类:查询类与修改类。对于查询类接口而言,其对业务数据是没有影响的(对查询进行统计的功能除外)。针对此类对业务数据无影响的接口,完全可以放开并发控制,以提高接口的响应速度。而对于修改类接口,其操作会影响到业务数据。为避免数据不一致,需要进行并发...

2020-04-04 23:37:19 319

Anylogic模型:桥式起重机参数化桥架数

anylogic物料库中的桥式起重机只能静态指定桥架数,不符合模型参数化需求;本模型通过在容器智能体中通过代码生成方式,进行桥式起重机的定制化; 适用于anylogic版本:8.8.1

2024-06-04

Linux命令行与Shell脚本编程大全LinuxCommandLineAndShellScriptingBible(2th).pdf

Linux命令行与Shell脚本编程大全LinuxCommandLineAndShellScriptingBible(2th).pdf 第一部分 Linux 命令行 第1章 初识Linux shell 1.1 什么是Linux 1.1.1 深入探究Linux内核 1.1.2 GNU工具链 1.1.3 Linux桌面环境 1.2 Linux发行版 1.2.1 核心Linux发行版 1.2.2 专业 Linux发行版 1.2.3 Linux LiveCD 1.3 小结 第2章 走进shell 2.1 终端模拟 2.1.1 图形功能 2.1.2 键盘 2.2 terminfo数据库 2.3 Linux控制台 2.4 xterm终端 2.4.1 命令行参数 2.4.2 xterm主菜单 2.4.3 VT选项菜单 2.4.4 VT字体菜单 2.5 Konsole终端 2.5.1 命令行参数 2.5.2 标签式窗口会话 2.5.3 配置文件 2.5.4 菜单栏 2.6 GNOME Terminal 2.6.1 命令行参数 2.6.2 标签 2.6.3 菜单栏 2.7 小结 第3章 基本的bash shell命令 3.1 启动shell 3.2 shell提示符 3.3 bash手册 3.4 浏览文件系统 3.4.1 Linux文件系统 3.4.2 遍历目录 3.5 文件和目录列表 3.5.1 基本列表功能 3.5.2 修改输出信息 3.5.3 完整的参数列表 3.5.4 过滤输出列表 3.6 处理文件 3.6.1 创建文件 3.6.2 复制文件 3.6.3 链接文件 3.6.4 重命名文件 3.6.5 删除文件 3.7 处理目录 3.7.1 创建目录 3.7.2 删除目录 3.8 查看文件内容 3.8.1 查看文件统计信息 3.8.2 查看文件类型 3.8.3 查看整个文件 3.8.4 查看部分文件 3.9 小结 第4章 更多的bash shell命令 4.1 监测程序 4.1.1 探查进程 4.1.2 实时监测进程 4.1.3 结束进程 4.2 监测磁盘空间 4.2.1 挂载存储媒体 4.2.2 使用df命令 4.2.3 使用du命令 4.3 处理数据文件 4.3.1 排序数据 4.3.2 搜索数据 4.3.3 压缩数据 4.3.4 归档数据 4.4 小结 第5章 使用Linux环境变量 5.1 什么是环境变量 5.1.1 全局环境变量 5.1.2 局部环境变量 5.2 设置环境变量 5.2.1 设置局部环境变量 5.2.2 设置全局环境变量 5.3 删除环境变量 5.4 默认shell环境变量 5.5 设置PATH环境变量 5.6 定位系统环境变量 5.6.1 登录shell 5.6.2 交互式shell 5.6.3 非交互式shell 5.7 可变数组 5.8 使用命令别名 5.9 小结 第6章 理解Linux文件权限 6.1 Linux的安全性 6.1.1 /etc/passwd文件 6.1.2 /etc/shadow文件 6.1.3 添加新用户 6.1.4 删除用户 6.1.5 修改用户 6.2 使用Linux组 6.2.1 /etc/group文件 6.2.2 创建新组 6.2.3 修改组 6.3 理解文件权限 6.3.1 使用文件权限符 6.3.2 默认文件权限 6.4 改变安全性设置 6.4.1 改变权限 6.4.2 改变所属关系 6.5 共享文件 6.6 小结 第7章 管理文件系统 7.1 探索Linux文件系统 7.1.1 基本的Linux文件系统 7.1.2 日志文件系统 7.1.3 扩展的Linux日志文件系统 7.2 操作文件系统 7.2.1 创建分区 7.2.2 创建文件系统 7.2.3 如果出错了 7.3 逻辑卷管理器 7.3.1 逻辑卷管理布局 7.3.2 Linux中的LVM 7.3.3 使用Linux LVM 7.4 小结 第8章 安装软件程序 8.1 包管理基础 8.2 基于Debian的系统 8.2.1 用aptitude管理软件包 8.2.2 用aptitude安装软件包 8.2.3 用aptitude更新软件 8.2.4 用aptitude卸载软件 8.2.5 aptitude库 8.3 基于Red Hat的系统 8.3.1 列出已安装包 8.3.2 用yum安装软件 8.3.3 用yum更新软件 8.3.4 用yum卸载软件 8.3.5 处理损坏的包依赖关系 8.3.6 yum软件库 8.4 从源码安装 8.5 小结 第9章 使用编辑器 9.1 Vim编辑器 9.1.1 Vim基础 9.1.2 编辑数据 9.1.3 复制和粘贴 9.1.4 查找和替换 9.2 Emacs编辑器 9.2.1 在控制台上使用Emacs 9.2.2 在X Window中使用Emacs 9.3 KDE系编辑器 9.3.1 KWrite编辑器 9.3.2 Kate编辑器 9.4 GNOME编辑器 9.4.1 启动gedit 9.4.2 基本的gedit功能 9.4.3 设定偏好设置 9.5 小结 第二部分 shell脚本编程基础 第10章 构建基本脚本 10.1 使用多个命令 10.2 创建shell脚本文件 10.3 显示消息 10.4 使用变量 10.4.1 环境变量 10.4.2 用户变量 10.4.3 反引号 10.5 重定向输入和输出 10.5.1 输出重定向 10.5.2 输入重定向 10.6 管道 10.7 执行数学运算 10.7.1 expr命令 10.7.2 使用方括号 10.7.3 浮点解决方案 10.8 退出脚本 10.8.1 查看退出状态码 10.8.2 exit命令 10.9 小结 第11章 使用结构化命令 11.1 使用if-then语句 11.2 if-then-else语句 11.3 嵌套if 11.4 test命令 11.4.1 数值比较 11.4.2 字符串比较 11.4.3 文件比较 11.5 复合条件测试 11.6 if-then的高级特性 11.6.1 使用双尖括号 11.6.2 使用双方括号 11.7 case命令 11.8 小结 第12章 更多的结构化命令 12.1 for命令 12.1.1 读取列表中的值 12.1.2 读取列表中的复杂值 12.1.3 从变量读取列表 12.1.4 从命令读取值 12.1.5 更改字段分隔符 12.1.6 用通配符读取目录 12.2 C语言风格的for命令 12.2.1 C语言的for命令 12.2.2 使用多个变量 12.3 while命令 12.3.1 while的基本格式 12.3.2 使用多个测试命令 12.4 until命令 12.5 嵌套循环 12.6 循环处理文件数据 12.7 控制循环 12.7.1 break命令 12.7.2 continue命令 12.8 处理循环的输出 12.9 小结 第13章 处理用户输入 13.1 命令行参数 13.1.1 读取参数 13.1.2 读取程序名 13.1.3 测试参数 13.2 特殊参数变量 13.2.1 参数计数 13.2.2 抓取所有的数据 13.3 移动变量 13.4 处理选项 13.4.1 查找选项 13.4.2 使用getopt命令 13.4.3 使用更高级的getopts 13.5 将选项标准化 13.6 获得用户输入 13.6.1 基本的读取 13.6.2 超时 13.6.3 隐藏方式读取 13.6.4 从文件中读取 13.7 小结 第14章 呈现数据 14.1 理解输入和输出 14.1.1 标准文件描述符 14.1.2 重定向错误 14.2 在脚本中重定向输出 14.2.1 临时重定向 14.2.2 永久重定向 14.3 在脚本中重定向输入 14.4 创建自己的重定向 14.4.1 创建输出文件描述符 14.4.2 重定向文件描述符 14.4.3 创建输入文件描述符 14.4.4 创建读写文件描述符 14.4.5 关闭文件描述符 14.5 列出打开的文件描述符 14.6 阻止命令输出 14.7 创建临时文件 14.7.1 创建本地临时文件 14.7.2 在/tmp目录创建临时文件 14.7.3 创建临时目录 14.8 记录消息 14.9 小结 第15章 控制脚本 15.1 处理信号 15.1.1 重温Linux信号 15.1.2 产生信号 15.1.3 捕捉信号 15.1.4 捕捉脚本的退出 15.1.5 移除捕捉 15.2 以后台模式运行脚本 15.2.1 后台运行脚本 15.2.2 运行多个后台作业 15.2.3 退出终端 15.3 在非控制台下运行脚本 15.4 作业控制 15.4.1 查看作业 15.4.2 重启停止的作业 15.5 调整谦让度 15.5.1 nice命令 15.5.2 renice命令 15.6 定时运行作业 15.6.1 用at命令来计划执行作业 15.6.2 计划定期执行脚本 15.7 启动时运行 15.7.1 开机时运行脚本 15.7.2 在新shell中启动 15.8 小结 第三部分 高级shell脚本编程 第16章 创建函数 16.1 基本的脚本函数 16.1.1 创建函数 16.1.2 使用函数 16.2 返回值 16.2.1 默认退出状态码 16.2.2 使用return命令 16.2.3 使用函数输出 16.3 在函数中使用变量 16.3.1 向函数传递参数 16.3.2 在函数中处理变量 16.4 数组变量和函数 16.4.1 向函数传数组参数 16.4.2 从函数返回数组 16.5 函数递归 16.6 创建库 16.7 在命令行上使用函数 16.7.1 在命令行上创建函数 16.7.2 在.bashrc文件中定义函数 16.8 小结 第17章 图形化桌面上的脚本编程 17.1 创建文本菜单 17.1.1 创建菜单布局 17.1.2 创建菜单函数 17.1.3 添加菜单逻辑 17.1.4 整合shell脚本菜单 17.1.5 使用select命令 17.2 使用窗口 17.2.1 dialog包 17.2.2 dialog选项 17.2.3 在脚本中使用dialog命令 17.3 使用图形 17.3.1 KDE环境 17.3.2 GNOME环境 17.4 小结 第18章 初识sed和gawk 18.1 文本处理 18.1.1 sed编辑器 18.1.2 gawk程序 18.2 sed编辑器基础 18.2.1 更多的替换选项 18.2.2 使用地址 18.2.3 删除行 18.2.4 插入和附加文本 18.2.5 修改行 18.2.6 转换命令 18.2.7 回顾打印 18.2.8 用sed和文件一起工作 18.3 小结 第19章 正则表达式 19.1 什么是正则表达式 19.1.1 定义 19.1.2 正则表达式的类型 19.2 定义BRE模式 19.2.1 纯文本 19.2.2 特殊字符 19.2.3 锚字符 19.2.4 点字符 19.2.5 字符组 19.2.6 排除字符组 19.2.7 使用区间 19.2.8 特殊字符组 19.2.9 星号 19.3 扩展正则表达式 19.3.1 问号 19.3.2 加号 19.3.3 使用花括号 19.3.4 管道符号 19.3.5 聚合表达式 19.4 实用中的正则表达式 19.4.1 目录文件计数 19.4.2 验证电话号码 19.4.3 解析邮件地址 19.5 小结 第20章 sed进阶 20.1 多行命令 20.1.1 next命令 20.1.2 多行删除命令 20.1.3 多行打印命令 20.2 保持空间 20.3 排除命令 20.4 改变流 20.4.1 跳转 20.4.2 测试 20.5 模式替代 20.5.1 and符号 20.5.2 替换单独的单词 20.6 在脚本中使用sed 20.6.1 使用包装脚本 20.6.2 重定向sed的输出 20.7 创建sed实用工具 20.7.1 加倍行间距 20.7.2 对可能含有空白行的文件加倍行间距 20.7.3 给文件中的行编号 20.7.4 打印末尾行 20.7.5 删除行 20.7.6 删除HTML标签 20.8 小结 第21章 gawk进阶 21.1 使用变量 21.1.1 内建变量 21.1.2 自定义变量 21.2 处理数组 21.2.1 定义数组变量 21.2.2 遍历数组变量 21.2.3 删除数组变量 21.3 使用模式 21.3.1 正则表达式 21.3.2 匹配操作符 21.3.3 数学表达式 21.4 结构化命令 21.4.1 if语句 21.4.2 while语句 21.4.3 do-while语句 21.4.4 for语句 21.5 格式化打印 21.6 内建函数 21.6.1 数学函数 21.6.2 字符串函数 21.6.3 时间函数 21.7 自定义函数 21.7.1 定义函数 21.7.2 使用自定义函数 21.7.3 创建函数库 21.8 小结 第22章 使用其他shell 22.1 什么是dash shell 22.2 dash shell的特性 22.2.1 dash命令行参数 22.2.2 dash环境变量 22.2.3 dash内建命令 22.3 dash脚本编程 22.3.1 创建dash脚本 22.3.2 不能使用的功能 22.4 zsh shell 22.5 zsh shell的组成 22.5.1 shell选项 22.5.2 内建命令 22.6 zsh脚本编程 22.6.1 数学运算 22.6.2 结构化命令 22.6.3 函数 22.7 小结 第四部分 高级shell脚本编程主题 第23章 使用数据库 23.1 MySQL数据库 23.1.1 安装MySQL 23.1.2 MySQL客户端界面 23.1.3 创建MySQL数据库对象 23.2 PostgreSQL数据库 23.2.1 安装PostgreSQL 23.2.2 PostgreSQL命令行界面 23.2.3 创建PostgreSQL数据库对象 23.3 使用数据表 23.3.1 创建数据表 23.3.2 插入和删除数据 23.3.3 查询数据 23.4 在脚本中使用数据库 23.4.1 连接到数据库 23.4.2 向服务器发送命令 23.4.3 格式化数据 23.5 小结 第24章 使用Web 24.1 Lynx程序 24.1.1 安装Lynx 24.1.2 lynx命令行 24.1.3 Lynx配置文件 24.1.4 Lynx环境变量 24.1.5 从Lynx中抓取数据 24.2 cURL程序 24.2.1 安装cURL 24.2.2 探索cURL 24.3 使用zsh处理网络 24.3.1 TCP模块 24.3.2 客户端/服务器模式 24.3.3 使用zsh进行C/S编程 24.4 小结 第25章 使用E-mail 25.1 Linux E-mail基础 25.1.1 Linux中的E-mail 25.1.2 邮件传送代理 25.1.3 邮件投递代理 25.1.4 邮件用户代理 25.2 建立服务器 25.2.1 sendmail 25.2.2 Postfix 25.3 使用Mailx发送消息 25.4 Mutt程序 25.4.1 安装Mutt 25.4.2 Mutt命令行 25.4.3 使用Mutt 25.5 小结 第26章 编写脚本实用工具 26.1 监测磁盘空间 26.1.1 需要的功能 26.1.2 创建脚本 26.1.3 运行脚本 26.2 进行备份 26.3 管理用户账户 26.3.1 需要的功能 26.3.2 创建脚本 26.4 小结 第27章 shell脚本编程进阶 27.1 监测系统统计数据 27.1.1 系统快照报告 27.1.2 系统统计数据报告 27.2 问题跟踪数据库 27.2.1 创建数据库 27.2.2 记录问题 27.2.3 更新问题 27.2.4 查找问题 27.3 小结 附录A bash命令快速指南 附录B sed和gawk快速指南

2017-10-15

精通AngularJS.pdf

由科兹洛夫斯基、达尔文所著的《精通AngularJS》全面系统的介绍了AngularJS框架。AngularJS是Google开发者设计和开发的一套前端开发框架,帮助简化前端开发的负担。AngularJS主要有以下几点优势:1)它是由互联网巨人Google组织开发的;这意味着它有更加强大的社区支持;2)AngularJS非常全面,没有其它的插件或者架构足以开发数据驱动的web应用;3)开发过程简单 快捷。 AngularJS诞生于Google,已用于开发多款Google产品。它是一套JavaScript前端框架,用于开发当下流行的数据驱动的单页面Web应用。其核心特性是:MVC、模块化、自动双向数据绑定、语义化标签、依赖注入等。《精通AngularJS》深入浅出地讲解了AngularJS的开发概念和原理,并通过丰富的开发实例向读者展示了构建复杂应用的完整过程,包括学习使用AngularJS特有的基于DOM的模板系统,实现复杂的后端通信,创建漂亮的表单,制作导航,使用依赖注入系统,提高Web应用的安全性,使用Jasmine开展单元测试,等等。

2017-09-13

AngularJS权威教程.pdf

《AngularJS权威教程》内容全面,讲解通俗,适合各层次的学习者。作者拥有丰富的AngularJS开发和教学经验,也是一位全栈工程师。全书35章,由浅入深地讲解了AngularJS的基本概念和基本功能,包括模块、作用域、控制器、表达式、指令、路由、依赖注入等,重要的是书中对每一个概念的讲解都配合了恰如其分的示例和代码,让读者通过动手实践,切身体会到这些概念的含义和价值。《AngularJS权威 教程》后半部分深入到AngularJS应用开发,系统地讨论了服务器通信、事件、架构、动画、本地化、安全、缓存、移动应用等主题。《AngularJS权威教程》适合各个层次的AngularJS开发人员学习,无论是出于工作需要,还是好奇心的驱使,只要你想彻底理解AngularJS,《AngularJS权威教程》都会让你满载而归。

2017-09-13

REST实战(中文版)].Jim.Webber等.扫描版.pd

[REST实战(中文版)].Jim.Webber等.扫描版.pdf

2017-08-09

深入Java虚拟机第2版 清晰版pdf文件

深入Java虚拟机第2版 清晰的pdf文件,仅供学习参考

2017-06-10

微服务设计中文完整版

微服务设计中文完整版

2017-05-22

控制系统计算机辅助设计——MATLAB语言与应用_第三版

薛定宇的《控制系统计算机辅助设计——MATLAB语言与应用》的第三版

2017-03-17

大话处理器:处理器基础知识读本.pdf

大话处理器:处理器基础知识读本的真正完整本,全部八章,手动呕血扫描加书签,非网上那种6.33MB的太监版~!以全家人性命为誓~! 作者简介   万木杨,网名木兮清扬,华为公司服务近6年,曾任软件工程师、算法工程师、系统工程师,擅长多媒体算法设计和编写高效代码。 作者自2004年起开始研究多媒体算法,

2016-03-18

大话操作系统

大话操作系统——做坚实的工程实践派!内容还不错,只是偏向硬件!

2016-03-17

大话物联网

本书是一本关于物联网的基础知识读物,书中用独特的行文风格,以风趣、幽默的语言向读者讲述了物联网的发展历程,以独特的视角说明物联网的特点、原理和应用,使用大量的实例和漫画式的插图帮助读者理解晦涩、枯燥的技术,向读者展示了物联网高科技的巨大魅力,为初学者打开了一扇深入学习物联网技术的大门。

2016-03-17

惯性技术——邓正隆PDF

《惯性技术》,邓正隆,哈尔滨工业大学出版社,PDF

2016-01-14

串口调试精灵 V1.023.exe

串口调试精灵 V1.023.exe,串口调试开发的简易工具,

2015-12-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除