linux
文章平均质量分 51
循序0010
这个作者很懒,什么都没留下…
展开
-
【shell】练习- select
#!/bin/bash# select command exampleselect iterm in apple xiaomi huawei oneplus sansam vovodo echo "你选择了$iterm"done原创 2020-06-02 15:59:11 · 185 阅读 · 0 评论 -
【shell】练习- while
#!/bin/bash#echo "总共有 $# 个参数"#while [ "$1" != "" ];do# echo -n "剩下 $# 个参数"# echo ", 移除参数:$1"# shift#donewhile true ;do read -p "输入数字,猜猜大了还是小了: " num echo $num | grep -q '[^0-9]' ns=$? if [ "0" == $ns ];then echo "请输入数字.".原创 2020-06-02 15:58:13 · 329 阅读 · 1 评论 -
【shell】练习- 菜单选择 - select - case
#!/bin/sh# select && case in this scriptecho "请选择你使用的操作系统"select os in MacOS Linux Windows Unixdo case $os in Linux | Unix ) echo "使用的是高级操作系统哦" ;; Windows ) echo "使用的是微软的操作系统" ;; MacOS ) .原创 2020-05-29 09:47:46 · 375 阅读 · 0 评论 -
【shell】练习- 判断 - 正则
#!/bin/bash# it's a intvalwhile true ;doread -p "请输入 > " numif [ -z "$num" ];then echo "没有输入.."elif [[ "$num" =~ [0-9]+$ ]];then echo "数字"else echo "字符" fidone原创 2020-05-29 09:46:50 · 242 阅读 · 0 评论 -
【shell】练习- read from file
#!/bin/bash# read from file examplefilename=$1if [ $filename != "" ];then while read fileline do echo $fileline done <$filename else echo "运行脚本时,请带文件参数." fi原创 2020-05-29 09:45:51 · 376 阅读 · 0 评论 -
【shell】练习- read
#!/bin/bashecho -n "请输入姓名:"read nameecho "Hi~,你好~ ,$name"原创 2020-05-29 09:43:52 · 185 阅读 · 0 评论 -
【shell】练习- 脚本参数
#!/bin/sh# first script of shell# practise paramsecho '脚本'$0echo '接收到参数个数:'$#echo '所有的参数:'echo $@j=0for i in "$@";do echo '$'$j'==>'$i ((j++))done原创 2020-05-29 09:43:18 · 110 阅读 · 0 评论 -
【shell】练习- 双中括号-规则匹配
#!/bin/bash# 注意,双中括号是可以规则匹配 ,而单中括号是 test的简写read -p "please input the number[0~9]: " numif [[ $num =~ [0-9]+ ]] ;then echo "show your number : " $numelse echo "please input the number"fi原创 2020-05-29 09:42:13 · 654 阅读 · 0 评论 -
【shell】练习- if 判断
#!/bin/shread -p "判断文件存不存在(输入文件绝对路径): " fileif test -f $file ;then echo it\'s exsitelse echo emptyfi原创 2020-05-29 09:39:40 · 202 阅读 · 0 评论 -
【shell】练习- 三种函数定义
#!/bin/sh# function example# 1 definefunction fun(){ echo "第一种定义函数的方法." echo "获取函数的参数用\$1 ,第一参数 :"$1}# 调用fun 000sleep 2echo "==================== 我是分割线 =================="sleep 1echo "==================== 我是分割线 ==================".原创 2020-05-29 09:39:01 · 157 阅读 · 0 评论 -
【shell】练习- case
#!/bin/bash# case exampleOS=$(uname -s)case "$OS" in FreeBSD) echo "This is FreeBSD" ;; Darwin) echo "This is Mac OSX" ;; AIX) echo "This is AIX" ;; Minix) echo "This is Minix" ;; Linux) echo "This is Linux" ;; *) echo "Failed to identify.原创 2020-05-29 09:38:02 · 177 阅读 · 0 评论 -
【shell】练习脚本-数组
#!/bin/sh# array example# 严格模式,变量未定义会报错,shell默认不会set -u# 调试#set -xarray=(1 3 5 6 7 9 0 90 33 232)echo "第一个元素,索引为0开始 : "${array[0]}echo "所有的元素.用索引\${array[@]} 或是 \${array[*]} :" ${array[@]}echo "总共有${#array[@]}个元素"sleep 2echo "========.原创 2020-05-29 09:36:42 · 241 阅读 · 0 评论 -
shell 基本知识总结
#查看进程pid对应的程序ll /proc/pid_number【shell命令】echo 命令 -n 取消末尾的回车符 -e 解释引号(双引号和单引号)里面的特殊字符(比如换行符\n)echo rm * 只会打印要被删除的文件type 命令作用:判断命令的来源(外部,内置),如:type ls-t 参数,可以返回一个命令的类型:别名(alias),关键词(keyword),函数(function),内置命令(builtin)和文件(file)。模式匹配[^abc]或[!.原创 2020-05-23 17:49:54 · 670 阅读 · 0 评论 -
关于redis一些知识点(主从,哨兵,集群)
redis主从配置复制两个redis配置文件(启动两个redis,只需要一份redis程序,两个不同的redis配置文件即可)mkdir redis-master-slavecp path/to/redis/conf/redis.conf path/to/redis-master-slave master.confcp path/to/redis/conf/redis.conf path/to/redis-master-slave slave.conf修改配置## master.confp.原创 2020-05-13 15:26:18 · 146 阅读 · 0 评论 -
nginx 知识点
Nginx能做什么——正向代理代理的客户端,向远方服务器请求;——反向代理代理的远方服务器,响应客户端;——负载均衡来自客户端的请求分发给后台服务器,负载均衡配置一般都需要同时配置反向代理,通过反向代理跳转到负载均衡。 支持自带3种负载均衡策略:轮询(默认),ip_hash ,(weight)权重。 2种常用的第三方策略: fair:按后端服务器的响应时间来分配请求...转载 2020-01-19 17:51:37 · 146 阅读 · 0 评论 -
总结-Linux 文件隐藏属性
Linux 下的文件还有一些隐藏属性,必须使用 lsattr 来显示,默认情况下,文件的隐藏属性都是没有 设置的(ext 文件系统默认拥有 e 属性)。 命令:lsattr [-a|d|R] 目录|文件 a显示所有的隐形属性,d显示目录,R递归显示lsattr -a test----i----------- test/.---------------- test/..--------...原创 2020-01-09 08:12:05 · 1720 阅读 · 0 评论 -
non-fast-forward
问题前提:在github上新建project后,提交本地代码到远程仓库时,报以下错误: ! [rejected] master -> master (non-fast-forward)error: failed to push some refs to 'https://github.com/sssss/shop.git'hint: Updates were reje...原创 2019-11-29 17:34:16 · 397 阅读 · 0 评论 -
linux 文件权限和属性
文件隐藏属性:Linux 下的文件还有一些隐藏属性,必须使用 lsattr 来显示,默认情况下,文件的隐藏属性都是没有设置的(ext 文件系统默认拥有 e 属性,centos7以下版本默认文件系统是ext4,或3)。 命令:chattr(超级用户可用) 描述:文件系统属性 用法:chattr [+-=] [选项] 文件或目录 i:如果对文件设置 i 属性,那么不允许对文件进行删...原创 2019-11-20 14:16:12 · 393 阅读 · 0 评论 -
认识shell及其变量
Shell本身是一种用C语言编写的程序,Shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作。 【shell分类】 Linux的Shell种类众多,常见的有:Bourne Shell(/usr/bin/sh或/bin/sh)、Bourne Again Shell(/bin/bash)、C Shell(/usr/bin/cs原创 2016-10-22 10:17:21 · 217 阅读 · 0 评论 -
yum 安装 VSFTPD
1.yum install vsftpd -y2.启动 VSFTPDservice vsftpd start 3.centos7 启动命令systemctl start vsftpd.service 若不能启动,则查找到该服务whereis vsftpd|vsftpd.service(centos 7),再执行/usr/sbin/vsftpd4.查看谁启动netstat -tnp原创 2017-07-11 17:19:23 · 1655 阅读 · 0 评论 -
mongodb Linux 安装(yum)
一、yum 方式安装:linux环境是 centos6.5 i386查看有无安装过:yum list | grep mongodb 或 netstat -tunpl | grep mongod查询后,返回:yum list | grep mongodblibmongodb.i686 2.4.14-4.el6原创 2017-07-11 17:16:59 · 387 阅读 · 0 评论 -
网络监控 nethogs小工具
nethogs是一款小巧的"net top"工具,可以显示每个进程所使用的带宽,并对列表排序,将耗用带宽最多的进程排在最上面。万一出现带宽使用突然激增的情况,用户迅速打开nethogs,就可以找到导致带宽使用激增的进程。nethogs可以报告程序的进程编号(PID)、用户和路径。# ubuntu或debian(默认软件库) $ sudo apt-get install nethogs #原创 2017-01-21 13:51:04 · 1021 阅读 · 0 评论 -
rpm包的安装
rpm是binary packages 包管理器,rpm包可以用命令>rpm -ivh 包名 #命令来安装,也可用 -e 选项是卸载>yum localinstall 包名 #来安装rpm包拓展:三个rpm包搜索网站 http://rpmfind.net http://rpmseek.com http://rpm.pbone.net原创 2017-01-21 11:05:17 · 446 阅读 · 0 评论 -
iptables 命令学习
iptables内置了raw,filter,nat和mangle四张表,五条链PREROUTING,INPUT,OUTPUT,NAT,POSTROUTING;filter 负责过滤数据包,包括的规则链有,input,output和forward;nat 则涉及到网络地址转换,包括的规则链有,prerouting,postrouting和output;mangle 表则主要应用在修改数据转载 2017-01-18 11:17:53 · 666 阅读 · 0 评论 -
awk命令学习2
awk命令学习2一些例子1.显示文本文件myfile中第七行到第十五行中以字符%分隔的第一字段,第三字段和第七字段: >awk -F % 'NR==7,NR==15 {printf $1 $3 $7}' 2.显示文本文件mydoc匹配(含有)字符串"sun"的所有行。 >awk '/sun/{print}' mydoc awk的缺省动作表示显示整个记转载 2017-01-16 10:22:33 · 280 阅读 · 0 评论 -
crontab 每分钟、每小时、每天、每周、每月、每年执行
每五分钟执行 */5 * * * *每小时执行 0 * * * *每天执行 0 0 * * *每周执行 0 0 * * 0每月执行 0 0 1 * *每年执行 0 0 1 1 *转载 2017-09-22 09:26:13 · 10905 阅读 · 0 评论 -
linux contab 易错搞混设置时间
文件/etc/crontab中每行任务的描述格式如下: minute hour day month dayofweek commandminute - 从0到59的整数 hour - 从0到23的整数 day - 从1到31的整数 (必须是指定月份的有效日期)month - 从1到12的整数 (或如Jan或Feb简写的月份)dayofweek - 从0到7的整数,0或原创 2017-09-22 15:03:59 · 341 阅读 · 0 评论 -
linux系统安装php两个库识别图片二维码
首先,装两个库的原因,是因为用一个库来识别,识别率太低。安装zbar安装之前,先安装ImageMagick安装ImageMagick:yum install gtk2 gtk2-devel pygtk2 pygtk2-devel qt qt-devel ImageMagick-devel ImageMagick安装zbar:wget http://jaist.dl.sourc...原创 2018-07-20 10:02:58 · 728 阅读 · 0 评论 -
CentOS7.0 各版本说明 及 安装
CentOS7.0下载各版本说明CentOS-7.0-1406-x86_64-DVD.iso 标准安装版,一般下载这个就可以了CentOS-7.0-1406-x86_64-NetInstall.iso 网络安装镜像CentOS-7.0-1406-x86_64-Everything.iso 对完整版安装盘的软件进行补充,集成所有软件。Ce...转载 2018-09-22 14:33:22 · 18032 阅读 · 0 评论 -
EPEL源-是什么?为什么安装?
EPEL源-是什么?为什么安装? EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS和Scientific Linux.使用很简单:1. 首先需要安装一个叫”epel-release”的软件包,这个软件包会自动配置yum的软件仓库。当然你也可以不安装这个包...转载 2018-10-05 14:17:38 · 65253 阅读 · 4 评论 -
Nginx单机并发优化
socket方面: nginx 设置子进程允许打开的连接数:worker_connections参数 操作系统层面 最大连接数(somaxconn) 加快tcp连接的回收 (recycle) 允许空tcp连接的回收利用(reuse) 洪水攻击的抵御(关闭,仅仅是为了性能测试,单机相同ip压力测试) /**把操作系统最大连接数改为20000...转载 2018-10-08 09:08:59 · 554 阅读 · 0 评论 -
php 安装使用rabbitmq
环境:CentOS 7RabbitMQ Server 版本3.7.9.RELEASEphp 安装使用rabbitmq 需要安装两个服务:1.rabbitmq 服务端(RabbitMQ Server)2.rabbitmq php客户端(PHP AMQP 扩展)概念释义Vhost: 先不深究,先固定为 /Connection:即连接, 与你日常理解的连接没有什么不同,比如 red...原创 2019-09-10 11:22:01 · 363 阅读 · 0 评论 -
RabbitMQ channel 频道,exchange 交换机和 queue队列
环境:CentOS 7RabbitMQ Server 版本3.7.9.RELEASERabbitMQ channel 频道,exchange 交换机和 queue队列connection是指物理的连接,一个client与一个server之间有一个连接;一个连接上可以建立多个channel,可以理解为逻辑上的连接。一般应用的情况下,有一个channel就够用了,不需要创建更多的ch...原创 2019-09-10 17:37:49 · 4978 阅读 · 1 评论 -
lsof 命令使用
lsof(list open files)是一个列出当前系统打开文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。所以如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因原创 2016-12-20 08:55:59 · 493 阅读 · 0 评论 -
如何查看linux系统中空闲内存/物理内存使用/剩余内存
查看linux系统中空闲内存/物理内存使用/剩余内存查看系统内存有很多方法,但主要的是用top命令和free 命令当执行top命令看到结果,要怎么看呢?这里说明一下:Mem: 666666k total, 55555k used,并不是代表你的应用程序已经使用了55555k的内存,这55555k是包含了:应用程序内存 + 缓冲 + 缓存的内存的。用free命令查看更直接:原创 2016-12-14 10:37:36 · 67611 阅读 · 3 评论 -
tail 命令使用
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容. 命令格式:tail[必要参数][选择参数][文件]命令参数:-f 循环读取-q 不显示处理信息-v 显示详细的处理信息-c 显示的字节数-n 显示行数-转载 2016-10-14 13:45:31 · 301 阅读 · 0 评论 -
whereis 命令与locate命令使用
首先记住whereis命令是用于程序名,定位可执行文件、源代码文件、帮助文件在文件系统中的位置,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s),和locate命令一样。和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和locate时,会从数据库中查找数据,而不是像find原创 2016-11-04 13:12:18 · 994 阅读 · 0 评论 -
说一个和cut相反的命令paste
paste命令和cut命令用法有点相似.用法格式:>paste [选项] 文件1 文件2 ... #多个文件用空格隔开即可选项: -d #指定分割符,默认为制表符 -s #以每个文件为一个处理单元[rocrocket@rocrocket programming]$ cat p1.txt123[rocrocket@rocrocket programming]$ c转载 2016-10-13 13:59:06 · 832 阅读 · 0 评论 -
理解cut,awk,sort三个命令的分隔符选项
【cut 命令】格式:cut [选项] file选项: -b :以字节为单位进行分割。这些字节位置将忽略多字节字符边界,除非也指定了 -n 标志。 -c :以字符为单位进行分割。 -d :自定义分隔符,默认为制表符。 -f :与-d一起使用,指定显示哪个区域(fields)。 -n :取消分割多字节字符。仅和 -b 标志一起使用。如果字符的最后一个字节落在由 -b 标志的 List原创 2016-10-24 13:08:42 · 9981 阅读 · 0 评论 -
在linux上一个很好格式显示一个月日期的命令cal
cal命令可以用来显示公历(阳历)日历。公历是现在国际通用的历法,又称格列历,通称阳历。命令格式:cal [参数][月份][年份]注:只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年份命令参数:-1 显示一个月的月历-3 显示系统前一个月,当前月,下一个月的月历-s 显示星期天为一个星期的第一天,默认的格式-m 显示星期一为一个星期的第一天-j 显示原创 2016-10-13 13:01:37 · 2966 阅读 · 0 评论