Category: BASH
LINUX 下的 SHELL 是很强大的编程工具(环境). 这里有一个例子. 在力扣/leetcode编程网站上有这么一题. 写bash脚本来计算一个文本文件中每个单词的频率 words.txt. 为了简单起见,你可以假设: words.txt只包含小写字符和空格”字符. 每个字必须由只小写字符. 字由一个或多个空格字符分隔. 例如,假设words.txt具有以下内容: the day is sunny the the the sunny is is 您的脚本应该输出以下,并按降序频率: the 4 is 3 sunny …
LINUX 下的 BASH shell 支持大括号 {} 来模拟数组 比如: touch abc{1,2,3,4} 这其实相当于下面四条命令 将会创建四个文件 touch abc1 touch abc2 touch abc3 touch abc4 大括量 是不能有多余的空格 的比如 ~$ echo abc{1, 2, 3, 4} …
和 figlet, toilet, banner 一样, cowsay 与 cowthink 也是把用户输入的字符串给用ASCII图案显示出来. 牛说/牛想 这两个命令的区别比较小, 请看, 牛说/Cow Says: $ cowsay helloacm __________ helloacm ---------- \ ^__^ \ (oo)\_______ (__)\ )\/\ ||----w | || …
影响: 大量往外发包, 导致网络瘫痪, 在电脑删除后, 还会被定时感染. 临时快速解决方法: 先抓包分析那台服务器发包严重, 然后查看进程, 如果是IptabLex和IptabLes可以用此脚本, 2秒执行一次. #!/bin/bash while do ps -ef |grep -i ipt pkill -9 /boot/.IptabLex pkill -9 /boot/.IptabLes pkill -9 IptabLe pkill -9 …
LINUX 真是个非常 强大的操作系统 当然也非常的好玩. LINUX下的默认BASH SHELL本身就是个编程语言, 语言本身就支持正则表达式的匹配. 可以通过 =~ 来进行正则表达式的匹配. 匹配的结果存在了 数组 ${BASH_REMATCH}, ${BASH_REMATCH} 等等. #!/bin/bash ip="192.168.0.1" if {1,2}|1|2|25)\.({1,2}|1|2|25)\.({1,2}|1|2|25)\.({1,2}|1|2|25)$ ]] then echo "匹配IP成功" echo ${BASH_REMATCH} echo ${BASH_REMATCH} echo ${BASH_REMATCH} …
2014年11月13日
BASH, BASH, I.T., 学习笔记, 技术, 折腾, 杂乱, 程序设计, 网站信息与统计, 计算机, 计算机
大部分VPS或者虚拟主机服务器什么的都是基于 Linux 系统 (其它操作系统像 Windows 不太适合做服务器, 一则是价钱贵, 二是不稳定) Linux 系统主要是命令行界面, 多任务多用户系统. 强大的地方在于如果配置好的话, 完全可以拔掉显示器键盘鼠标等, 只接电源放几个月甚至几年都不会出问题. 这篇贴子介绍了备份数据(库)的一种思路. 这篇帖子则介绍如何在发现有问题的访问后就禁止掉该IP. 有一个非常好的办法就是经常监控比较耗资源(CPU或内存)的进程, 及时发现问题. 我们可以在LINUX下创建一个脚本, 含有以下内容, 并且 chmod +x 后可以直接在命令行下运行. #!/bin/bash #helloacm.com echo "-------`date`--------" echo …
备份是我们常需要做的事, 你可以在服务器上有一个文件夹专门用于存放备份. 然后定期删除(可以是一个脚本定期执行),这 样就比较麻烦, 因为如果你想每次删除比较旧的备份, 你就得对备份进行时间倒序. 其实可以完全利用LINUX下的 date命令来生成想要的文件名用于备份. 比如你想保留过去的 24 小时备份, 那么你可以用: H=`date +"%H"` ls > backup_$H # your backup command (e.g. mysqldump) 来生成类似 backup_0, backup_1, .. backup_23 之类的文件名.对应过去24 …