命令模式

FTP协议的主动模式和被动模式的区别

生来就可爱ヽ(ⅴ<●) 提交于 2020-02-10 20:45:26
最近准备做一个《 FtpCopy系列教程 》,主要讲解Ftp协议主动模式和被动模式的区别、以及FTP服务器的安装部署,然后通过几个常用实例演示,详细讲解如何使用FtpCopy进行数据自动备份。 什么是FTP协议? FTP的中文名称是“文件传输协议”,是File Transfer Protocol三个英文单词的缩写。FTP协议是TCP/IP协议组中的协议之一,其传输效率非常高,在网络上传输大的文件时,经常采用该协议。 一个完整的FTP由 FTP服务器 和 FTP客户端 组成,客户端可以将服务器上的文件通过FTP协议下载到本地,也可以将本地数据通过FTP协议上传到服务器上。 (1)服务器端需要安装FTP服务软件,常用的有FileZilla Server、IIS、Serv-U、OSSFTP等等。 不同的FTP软件对FTP协议标准支持有所差别,从我的使用经验感觉FileZilla Server是对FTP协议支持最好的软件,它具有以下几个特点:体积小(2M左右)、免费开源、操作简单、功能完善(我们所需要的有功能它基本都支持)。 IIS对FTP协议的支持也很不错。 Serv-U有几个命令支持不是很好,这个软件也是收费软件,没感觉比FileZilla Server好多少。 OSSFTP是阿里云对象存储提供的FTP Server,对FTP标准协议支持就更差了。 (2)FTP客户端软件就比较多了

设计模式(思路)

怎甘沉沦 提交于 2020-02-10 20:31:23
设计模式七大原则: 单一责任 : 一个类尽量不要拥有太多的责任 接口隔离:接口设计的要尽量小,避免实现一个接口实现了多余的方法 依赖倒转:细节依赖于抽象,抽象不依赖于细节 里氏替换:尽量不要重写父类的方法 开闭原则:对扩展开放,对修改关闭 迪米特法则:最小知道原则,对尽量避免了解其他类的内部实现,减少耦合 合成复用原则:少用继承,而用依赖组合聚合 设计模式六大关系: 依赖 泛化 实现 聚合 组合 关联 创建型设计模式: 单例模式: 饿汉式实现 懒汉式实现 - double-check( 双重判断 ) 静态内部类实现 枚举实现 应用场景 : 需要频繁创建和销毁的对象,创建一次就够用而且需要频繁使用的对象(数据库访问,工具类) 源码中使用: RunTime 类 利用饿汉式单例模式实现, static 静态生成对象,系统调用时直接返回 . 工厂模式: 抽象工厂 : 工厂不只是一个类 而是一个工厂族,由接口定义,具体的想要的工厂实现由子类工厂提供。 源码中使用: Calendar 类 利用简单工厂模式 , 对外提供一个静态方法,用来根据日期和地域生产 Calendar 对象。 满足原则: 开闭原则 原型模式: 浅拷贝 : 实现 cloneable 接口,重写 clone() 方法 . 只会克隆对象的普通属性,如果有引用类型的属性则会都指向同一个地址引用 ( 克隆一个人

Redis客户端与基本命令

柔情痞子 提交于 2020-02-10 18:52:11
一、Redis客户端    1.Redis命令行客户端      开启 : src下       开启服务端 : ./redis-server &       客户端访问 : ./redis-cli [-h 127.0.0.1 -p 6379]     关闭 : src下       ./redis-cli shutdown       进入客户端后执行shutdown    2.Redis远程客户端      Redis Desktop Manager软件     远程客户端连接Redis服务器需要 :       1)Linux防火墙关闭 : systemctl status firewalld(查看防火墙状态)                 systemctl stop firedwalld(关闭防火墙)       2)修改 redis.conf中bind 127.0.0.1 允许访问的ip(注释掉)       3)取消redis.conf中保护模式 protected-made no    3.Redis编程客户端Jedis      Jedis是Java编程客户端,通过Jedis可以像Redis命令行一样使用Redis 二、Redis基本操作命令      (1)沟通命令,查看状态      ping 返回 PONG -->表示redis服务正常运行   (2

SaltStack入门

天大地大妈咪最大 提交于 2020-02-10 17:29:07
目录 1. SaltStack介绍 1.1 自动化运维工具 1.2 saltstack的特点 1.3 saltstack服务架构 2. SaltStack四大功能与四大运行方式 3. SaltStack组件介绍 4. SaltStack安装与最小化配置 4.1 在控制机上安装saltstack主控端软件 4.2 在被控机上安装salt-minion客户端 4.3 saltstack配置文件 5. SaltStack认证机制 6. SaltStack远程执行 7. salt命令使用 1. SaltStack介绍 1.1 自动化运维工具 作为一个运维人员,很大一部分工作是在业务的配置管理和状态维护以及版本发布上,而当业务场景及公司规模上了一定规模后,人为手工的去做这些工作将变得极其困难,此时我们将需要利用一些自动化运维的工具来达到批量管理的目的。 常用的自动化运维工具有: puppet ansible saltstack 此三款属同类工具,皆可用来提高运维管理的效率,但它们又各有优势,目前主流的自动化运维工具是ansible和saltstack。其中ansible无需安装客户端,这是其最大的优势,而saltstack则需要安装客户端工具,类似zabbix的agent。应用场景方面,ansible常用于小型企业,而saltstack则常用于中大型企业

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

自闭症网瘾萝莉.ら 提交于 2020-02-10 16:35:17
copy from :https://mp.weixin.qq.com/s?__biz=MzI1NDQ3MjQxNA==&mid=2247487262&idx=2&sn=5c2aa3be4a9422e7b778e245daf5389f&chksm=e9c5f6afdeb27fb9defa48fd7c279662c3a3b72ec787f158af270ec392275bbeb6e070b2f22c&mpshare=1&scene=23&srcid=1017gdrlB3XPLoviLBJD7wA4#rd 预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料) 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程: Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就纳闷了。 Git是分布式版本控制系统,那么它就没有中央服务器的

linux正则表达式 grep egrep用法

断了今生、忘了曾经 提交于 2020-02-10 16:01:44
shell 命令执行的相应顺序 && 令1 && 命令2 如果这个命令1执行成功& &那么执行这个命2 mv myfile myfile2 && echo "if you are seeing this then mv was success!" || 如果| |左边的命令(命令1)未执行成功,那么就执行| |右边的命令(命令2) mv myfile myfile2 && echo "if you are seeing this then mv was success! " 从一个审计文件中抽取第1个和第2个域,并将其输出到一个临时文件中,如果这一操作未成功,我希望能够收到一个相应邮件: awk '{print$1,$2}' test3 >test2 || echo "sorry the extraction didn't work " | mail root (命令 1; 命令 2;. . . ) 如果使用{ }来代替(),那么相应的命令将在子s h e l l而不是当前s h e l l中作为一个整体被执行,只有在{ }中所有命令的输出作为一个整体被重定向时,其中的命令才被放到子s h e l l中执行,否则在当前s h e l l执行。 例子: 如果s o r t命令执行成功了,可以先将输出文件备份,然后再打印 test.sorted && (cp test.sorted

一个小时学会Git

我只是一个虾纸丫 提交于 2020-02-10 15:36:17
原文地址: https://www.cnblogs.com/best/p/7474442.html 目录 一、版本控制概要 工作区 暂存区 本地仓库 远程仓库 1.1、什么是版本控制 1.2、常用术语 1.3、常见的版本控制器 1.4、版本控制分类 1.4.1、本地版本控制 1.4.2、集中版本控制 1.4.3、分布式版本控制 1.5、Git与SVN最主要区别 二、Git安装与配置 2.1、什么是Git 2.2、搭建Git工作环境 2.2.1、下载Git 2.2.2、安装Git 2.2.3、启动Git 2.2.4、Linux与Mac OS安装Git 2.2.5、Bash基本操作命令 2.3、Git配置 - git config 2.3.1、查看配置 - git config -l 2.3.2、Git配置文件分类 2.3.3、设置用户名与邮箱(用户标识,必要) 2.3.4、添加或删除配置项 2.3.5、更多配置项 三、Git理论基础 3.1、工作区域 3.2、工作流程 3.3、图解教程 四、Git操作 4.1、创建工作目录与常用指令 4.2、获得GIT仓库 4.2.1、创建全新仓库 4.2.2、克隆远程仓库 4.3、GIT文件操作 4.3.1、文件4种状态 4.3.2、查看文件状态 4.3.3、添加文件与目录 4.3.4、移除文件与目录(撤销add) 4.3.5、查看文件修改后的差异

【数据挖掘重要笔记day03】jupyter的基本使用+创建文件+ctrl+enter和shift+enter和alt+enter等【jupyter快捷键大全】+魔法命令+jupyter下载东西

删除回忆录丶 提交于 2020-02-10 15:04:32
文章目录 一、启动程序 执行以下命令: 注意以下几点: 几个基本操作: 创建文件 停止的方法 标题和注释 重命名 ctrl+enter和shift+enter和alt+enter 二、IPython的帮助文档 1. 使用help() 2. 使用? a 向上生成新的行 b 向下生成新的行 删除行dd 不可以自动保存 3. tab自动补全 三、IPython魔法命令 1. 运行外部Python文件 2.运行计时 3. 查看当前会话中的所有变量与函数 4.列出魔法命令 4. 执行Linux指令 5. 更多魔法命令 6.下载东西pip可以吗 一、启动程序 执行以下命令: jupyter notebook [NotebookApp] Serving notebooks from local directory: /home/nanfengpo [NotebookApp] 0 active kernels [NotebookApp] The IPython Notebook is running at: http://localhost:8888/ [NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). 注意以下几点:

大数据之虚拟机配置和环境准备及hadoop集群搭建

心不动则不痛 提交于 2020-02-10 14:45:09
一、VMnet1和VMnet8路由器 VMware-workstation软件选择默认安装时,会自动创建VMnet1和VMnet8路由器设备。(安装失败使用CCleaner清理vm软件)   VMnet1对应仅主机模式。如果在网络适配器-网络连接里面选择仅主机模式,那么Linux的虚拟网卡就会接入VMnet1路由设备,应该使用VMnet1设备子网IP段,一般情况下使用DHCP获取的IP地址就在子网IP段范围。   VMnet8对应NAT模式。如果在网络适配器-网络连接里面选择NAT模式,那么Linux的虚拟网卡就会接入VMnet8路由设备,应该使用VMnet8设备子网IP段,一般情况下使用DHCP获取的IP地址就在子网IP段范围。 比如网络适配器-网络连接里面选择NAT模式,那么自动获取的IP地址范围就在192.168.201.128~254,如下: 二、各种模式网络配置详解 (1)桥接模式   桥接模式就是将主机网卡与虚拟机虚拟的网卡利用虚拟网桥进行通信。在桥接的作用下,类似于把物理主机虚拟为一个交换机,所有桥接设置的虚拟机连接到这个交换机的一个接口上,物理主机也同样插在这个交换机当中,所以所有桥接下的网卡与网卡都是交换模式的,相互可以访问而不干扰。在桥接模式下,vm中的虚拟机与主机是一样的,都连在了和主机一样的路由中(相当于多台主机连接了同一个路由器上);其网络结构如图:

Linux常用命令

夙愿已清 提交于 2020-02-10 14:19:00
文件操作命令 stat 命令   stat filename 查看文件详细信息命令      cat 命令   cat 命令用来查看文件内容     -A:相当于vET选项的整合,用于列出所有隐藏符号     -E:列出每行结尾的回车符$     -n:显示行号     -T:把Tab用 ^I 显示出来     -v:列出特殊字符 cp 命令   cp 源文件 目标文件  用于复制文件     -a:相当于-dpr选项的集合     -d:如果源文件为软连接(对硬连接无效),则复制出的目标文件也为软连接     -i:询问,如果目标文件已经存在,则会询问是否覆盖     -p:复制后的目标文件保留源文件的属性(包括所有者、所属组、权限和时间)     -r:递归复制,用于复制目录 权限相关   普通用户可以修改所有者是自己的文件的权限   普通用户不能修改文件的所有者(哪怕是文件是属于这个普通用户的),只有超级用户才能修改所有者 umask 默认权限   查看系统umask权限(umask)、(umask -S:用字母表示)   文件的最大默认权限(666)   目录的最大默认权限(777)   /etc/profile 配置文件 man命令   -f:查看命令拥有哪个级别的帮助   -k:查看命令相关的所有帮助   man命令常用快捷键     上箭头    向上移动一行