The Linux Cookbook 一书的作者 Michael Stutz 凭借自己多年使用 UNIX 的经验,总结了 10 个良好习惯,个人认为真的很受用,现摘要如下与大家分享。 1.建立层级目录:使用 mkdir 的 -p 选项,如 mkdir -p tmp/a/b/c 2.解包到指定的目录:使用 tar 的 -C 选项...
交互式使用Bash Shell: 1. 用set命令设置bash的选项: 下面为set主要选项的列表及其表述: 选项名 开关缩写 描述 allexport -a 打开此开关,所有变量都自动输出给子Shell。 noclobber -C 防止重定向时文件被覆盖。 noglob -d 在路径和文件名中,关闭通配符。...
Bash Shell编程: 1. 读取用户变量: read命令是用于从终端或者文件中读取输入的内建命令,read命令读取整行输入,每行末尾的换行符不被读入。在read命令后面,如果没有指定变量名,读取的数据将被自动赋值给特定的变量REPLY。下面的列表给出了read命令的常用...
系统运行状况相关的Shell命令 : 1. Linux的实时监测命令(watch): watch 是一个非常实用的命令,可以帮你实时监测一个命令的运行结果,省得一遍又一遍的手动运行。该命令最为常用的两个选项是-d和-n,其中-n表示间隔多少秒 执行一次command,-d表示高亮发生变...
先解释一下iptables里的参数意思: A:添加(跟链) -I:插入 -p:跟协议 -s:源IP -d:目标IP -j:操作行为 -t:加表 --to-source:SNAT用,表示改成的SNAT源地址 --to-destination:DNAT用,表示改成的DANT目标地址 ACCEPT 通过 DROP 不通过 -s 210.22.23.0/24 表示...
1. 进程监控命令(ps): 要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而ps命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以 确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵死、哪些进程...
通过管道组合Shell命令获取系统运行数据 : 1. 输出当前系统中占用内存最多的5条命令 : #1) 通过ps命令列出当前主机正在运行的所有进程。 #2) 按照第五个字段基于数值的形式进行正常排序(由小到大)。 #3) 仅显示最后5条输出。 / ps aux | sort -k 5n | tail -...
最近研究DNS主从服务,也是参考了很多文章,这里记录一下,方便大家少走弯路,DNS服务可以算是Linux服务中比较难的一个了,尤其是配置文件书写,少一个字符都有可能造成错误。 那什么是DNS呢?简单的说就是完成域名到IP的解析过程。简洁的域名能让人们更方便...
行的排序命令sort : 1. sort命令行选项: 选项 描述 -t 字段之间的分隔符 -f 基于字符排序时忽略大小写 -k 定义排序的域字段,或者是基于域字段的部分数据进行排序 -m 将已排序的输入文件,合并为一个排序后的输出数据流 -n 以整数类型比较字段 -o outfile...
流编辑器sed 8.1 sed简介 sed是stream editor的缩写,一种流编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为模式空间(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一...
awk编程: 1. 变量: 在awk中变量无须定义即可使用,变量在赋值时即已经完成了定义。变量的类型可以是数字、字符串。根据使用的不同,未初始化变量的值为0或空白字符串 ,这主要取决于变量应用的上下文。下面为变量的赋值负号列表: 符号 含义 等价形式 = a =...
awk实用功能: 和sed一样,awk也是逐行扫描文件的,从第一行到最后一行,寻找匹配特定模板的行,并在这些行上运行选择动作。如果一个模板没有指定动作,这些匹配的行就被显示在屏幕上。如果一个动作没有模板,所有被动作指定的行都被处理。 1. awk的基本格式...
一. 特殊文件 : /dev/null和/dev/tty Linux系统提供了两个对Shell编程非常有用的特殊文件,/dev/null和/dev/tty。其中/dev/null将会丢掉所有写入它的数据,换句换说,当程序将数据写入到此文件时,会认为它已经成功完成写入数据的操作,但实际上什么事都没有...
grep家族 : 1. grep退出状态: 0: 表示成功; 1: 表示在所提供的文件无法找到匹配的pattern; 2: 表示参数中提供的文件不存在。 见如下示例: / grep root /etc/passwd root:x:0:0:root:/root:/bin/bash operator:x:11:0:operator:/root:/sbin/nologin / ech...
前言*随着整个互联网的发展,产生了无数大大小小的网站,随之而来用户对网站UI和速度体验也在日益加强,对企业或者个人来说,赢得用户体验也就意味着赢得先机。 那今天我们在这里针对网站速度这方面来一起交流,提高网站速度对于运维工程师、程序员来说变得...
文件查找命令find : 下面给出find命令的主要应用示例: / ls -l #列出当前目录下所包含的测试文件 -rw-r--r--. 1 root root 48217 Nov 12 00:57 install.log -rw-r--r--. 1 root root 37 Nov 12 00:56 testfile.dat -rw-r--r--. 1 root root 10530 Nov 11 23...
介绍Shell中的流程控制,例如判断语句等等 if语句: 首先了解几个知识: [ -f somefile ] :判断是否是一个文件 [ -x /bin/ls ] :判断/bin/ls是否存在并有可执行权限 [ -n $var ] :判断$var变量是否有值 [ $a = $b ] :判断$a和$b是否相等 示例代码: 1 2...
########本脚本应用在生产环境中,是运用mysql主从的基础上######## vi mysqlm-s.sh #!/bin/bash ip=`ifconfig eth0|sed -n 2p|awk { print $2 }|awk -F : { print $2 }` port=`netstat -anl|grep 3306 |sed -n 1p |awk {print $4}|awk -F: { print $2}` arr...
首先,在这里我写的脚本的功能没有一一写出来,有兴趣的朋友可以自已完成,好久没有写shell脚本了,今天写这个就当是复习下,最近一直使用python,不过对比之下,本人不才,总结以下: 1 shell只能对系统层面使用,而ptyhon任何情况下都可以使用 2 shell没有python语言...
1 安装sendEmail tar xvf sendEmail-v1.56.tar.gz mv sendEmail-v1.56 sendEmail 2 添加apache虚拟主机shell脚本: vi addVirtual.sh #!/bin/bash cat EOF /etc/httpd/conf/httpd.conf VirtualHost *:80 ServerAdmin admin@$1 DocumentRoot /$1 ServerName $1...
一、首先将apache日志按天切割 vi /etc/httpd/conf/httpd.conf ErrorLog |rotatelogs /var/log/httpd/%Y%m%derror_log 86400 480 CustomLog |rotatelogs /var/log/httpd/%Y%m%daccess_log 86400 480 combined 二、重启apache服务 service httpd restart ####...
作为一名Linux SA,日常运维中很多地方都会用到脚本,而服务器的ip一般采用静态ip或者MAC绑定,当然后者比较操作起来相对繁琐,而前者我们可以设置主机名、ip信息、网关等配置。修改成特定的主机名在维护和管理方面也比较方便。如下脚本用途为:修改ip和主机...
break 命令可以带一个参数,一个不带参数的break 循环只能退出最内层的循环,而break N可以退出N 层循环。 continue 命令也可以带一个参数,一个不带参数的continue 命令只去掉本次循环的剩余代码,而continue N 将会把N 层循环剩余的代码都去掉,但是循环的...
cat disk.sh #!/bin/bash for i in `df |sed 1d | awk {print $5} | sed s/%//g` ####获取后循环比较大小#### do if [ $i -gt 10 ] ###这里阀值设置为10,为了方便测试效果### then df -lh disk.txt ####追加到disk.txt以方便警告给管理员#### ip=`ifconfig et...
前阵子去面试,最后一道简单的shell脚本,shell监控磁盘超过80%的打印并显示出磁盘名字,我当时写的脚本如下: #!/bin/bash array=(`df |sed 1d | awk {print $1,$5}|tr -d % `) len=${#array[@]} for((i=1;i=$len;i=i+2));do if [ ${array[$i]} -gt 80 ] the...
循环控制之for循环 语法结构1 for Variable in List do commands done 语法结构2 for Variable in List;do commands done 这个List可以为列表、变量、命令 等等 for循环 事先提供一个元素列表,而后,使用变量去遍历此元素列表,每访问一个元素,就执行一次...
1、shell基本参数 #cat /etc/shells 系统提供的shell位置 #bsh、csh、ksh、bash 改变root用户的shell环境 #chsh 改变普通用户的shell环境 #more /etc/passwd 查看所有用户的shell环境 2、shell变量 2.1、环境变量 #set | more 查看环境变量 2.2、常用环境变量...
1、查看主机网卡流量 #!/bin/bash #network #Mike.Xu while : ; do time=date +%m-%d %k:%M day=date +%m-%d rx_before=ifconfig eth0|sed -n 8p|awk {print $2}|cut -c7- tx_before=ifconfig eth0|sed -n 8p|awk {print $6}|cut -c7- sleep 2 rx_after=ifcon...
例子: 重启filebeat 升级版 #!/bin/bash ps -ef|grep filebeat |grep -v grep|cut -c...
crontab是linux自带的计划任务程序,可以实现分,时,日,周,月。 但是crontab有两个...
我在 CU 的日子并不长,有幸在 shell 版上与大家结缘。除了跟众前辈学习到不少技巧之...
cpu时间是一项重要的资源,有时,我们需要跟踪某个时间内占用cpu周期最多的进程。 在...
介绍一个强大的分析网络的shell脚本,此脚本是从EZHTTP拆分出来的,觉得有必要单独介...
Shell是一种具备特殊功能的程序,它是介于使用者和 UNIX/Linux 操作系统之核心程序(k...