shell三种引号的区别

Linux Shell中有三种引号,分别为双引号(” “)、单引号(‘ ‘)以及反引号(` `)。 其中双引号对字符串中出现的$、”、`和\进行替换;单引号不进行替换,将字符串中所有字符作为普通字符输出,而反引号中字符串作为shell命令执行,并返回执行结果。具体含义如下: 双引号(” “):在双引号中,除了$, ”, `和\以外所有的字符都解释成字符本身。 单引号(’ ‘):在单引号中所有的字符包括特殊字符($,”,`和\)都将解释成字符本身而成为普通字符。 反引号(` `):在反引号中的字符串将解释成shell命令来执行。

HAproxy Web 负载均衡解决方案

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点, 这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。 下图是HAProxy的架构: 下图是HAProxy的监控页面截图: HAProxy实现了一种事件驱动, 单一进程模型,此模型支持非常大的并发连接数。多进程或多线程模型受内存限制 、系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接。事件驱动模型因为在有更好的资源和时间管理的用户端(User-Space) 实现所有这些任务,所以没有这些问题。此模型的弊端是,在多核系统上,这些程序通常扩展性较差。这就是为什么他们必须进行优化以 使每个CPU时间片(Cycle)做更多的工作。

解决安装python3.7.4报错Can”t connect to HTTPS URL because the SSL module is not available

简述 从官网下载了Python3.7.4,直接编译安装后,使用pip3出现了报错信息: Can’t connect to HTTPS URL because the SSL module is not available 错误原因 在Python3.7之后的版本,依赖的openssl,必须要是1.1或者1.0.2之后的版本,或者安装了2.6.4之后的libressl。 image.png 而本地的openssl依然是1.0.1e的。 1 2 [root@localhost ~]# openssl version OpenSSL 1.0.1e-fips 11 Feb 2013 解决方法 上openssl官网下载1.0.2或者1.1之后的openssl包,编译安装。我选择的是1.0.2r。 1 2 3 4 5 6 [root@localhost ~]# wget http://www.openssl.org/source/openssl-1.0.2r.tar.gz [root@localhost ~]# tar zxvf openssl-1.0.2r.tar.gz [root@localhost ~]# ./config –prefix=/opt/openssl1.0.2r –openssldir=/opt/openssl1.0.2r/openssl no-zlib [root@localhost ~]# make …

python3中pip3安装出错,找不到SSL的解决方式

最近在Ubuntu16.04上安装Python3.6之后,使用pip命令出现了问题,提示说找不到ssl模块,出现错误如下: 1 2 3 4 pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available. Could not fetch URL https:*******: There was a problem confirming the ssl certificate: Can’t connect to HTTPS URL because the SSL module is not available. – skipping 本人安装Python3.6的操作如下: 1 2 3 4 5 …

centos6.5 无法上网的解决办法

新安装虚拟机centos6.5版本,可以ping通外网地址,却无法上网,无法用命令行下载文件,经解决后记录下解决方案 step1:检查虚拟机设置 确保网络连接工作在NAT模式,如图 这里写图片描述 step2:修改DNS地址 切换到root用户 切换到目录 /etc下 修改resolv.conf文件中的DNS地址,添加一个DNS地址 如nameserver:8.8.8.8 ,其中192.168.61.2是我虚拟机的网关IP,这个可以不用管,保存后退出。如图: 这里写图片描述 保存后打开火狐看能否登陆上百度,如果可以,那就OK了 但是,resolv.conf文件中的内容会在重启网络服务service network restart 或者虚拟机重启后 被重置。 所以要想配置被保留,我们需要修改虚拟机的网络配置 step3:修改虚拟机网络配置 切换到root用户 切换到目录network-scripts目录下,cd /etc/sysconfig/network-scripts/ 修改网络配置文件ifcfg-eth0,在其中加入一项 DNS1=”8.8.8.8″,如图: 这里写图片描述 很多教程里面都说要设置启动模式为静态,把BOOTPROTO=”dhscp”改成BOOTPROTO=”static”,这样的话就会面临要加上静态的ip地址 IPADDR,还有网关GATEWAY等,这样比较麻烦,其实动态IP模式也能满足上网需求。 step4:重启网络服务 在root权限下通过命令 service network restart就可以重启网络服务 成功重启后,我们会发现/etc/resolv.conf文件中的DNS设置nameserver:8.8.8.8没有被重置掉 ———————————————— 版权声明:本文为CSDN博主「秒杀无心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u012480148/article/details/73527370

CentOS7+STF环境搭建

一、简介 OpenSTF是一个手机设备管理平台,可以对手机进行远程管理、调试、远程手机桌面监控等操作,可以批量对大量设备进行WEB端管理。 STF (or Smartphone Test Farm) is a web application for debugging smartphones, smartwatches and other gadgets remotely, from the comfort of your browser. 二、环境搭建 1、基本命令安装 安装wget、zip等命令 yum install wget yum install -y unzip zip 2、java环境配置 (1)下载jdk安装包并上传至Linux 因为在linux中直接使用curl或者wget下载jdk安装包会被重定向,所以我们要先在windows里先下载好所需的安装包再上传到linux中 jdk1.8官网下载地址 jdk1.9官网下载地址 我这里下载的包是:jdk-8u161-linux-x64.tar.gz (2).解压安装 对安装包执行解压 [root@localhost ~]# tar -zxvf jdk-8u161-linux-x64.tar.gz 解压出来一个文件夹jdk1.8.0_161 [root@localhost ~]# mv jdk1.8.0_161/ /usr/local/java (3).配置环境变量 vi /etc/profile 在文件中增加如下内容: export …

CentOS7 安装远程桌面

Xrdp是Microsoft远程桌面协议(RDP)的一个开源实现,它允许以图形方式控制远程系统。使用RDP,您可以登录到远程计算机并创建一个真正的桌面会话,就像您登录到本地计算机一样。 系统环境 服务端:Centos7.7 Minimal 客户端:Windows10 安装桌面环境 本实验中安装的系统没有安装桌面环境,我们需要自己安装,如果已经安装桌面了清跳过这一步。Centos7提供了”Cinnamon Desktop”,”MATE Desktop”,”GNOME Desktop”,”KDE Plasma Workspaces”,”LXQt Desktop”,”Xfce”让我们安装。 下面的命令列出可用环境组: [root@localhost ~]# yum grouplist Loaded plugins: fastestmirror There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * base: mirrors.tuna.tsinghua.edu.cn * epel: mirrors.aliyun.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com Available …

jenkins 通过shell启动java应用程序会随着job完成而被自动关闭的解决方法

我们使用jenkins进行构建打包后,实现自动部署,但 通过shell启动应用程序后,构建job完成应用程序也会自动关闭。下面以tomcat为例 如上执行后,tomcat先关闭,而后部署启动成功,可以访问。但构建job只完成后,tomcat自动关闭。 解决如下: 在脚本前面添加上BUILD_ID=XXXXX,即可如下: 这样job结束后,tomcat不会自动关闭。

shell条件判断

1.判断语法 a)  test 条件表达式 b)  [ 条件表达式 ] c)  [[ 条件表达式 ]]        可匹配正则 =~ d)  判断后执行多个命令 [ 条件1 ] && { 命令1 命令2 } 例如: [ 1 -eq 2 ]&&{ echo aa; echo bb; }||{ echo cc echo dd }   man test去查看,很多的参数都用来进行条件判断   2.文件类型判断 -e 是否存在 不管是文件还是目录,只要存在,条件就成立 -f 是否为普通文件 -d 是否为目录 -S socket -p …