shell --08 例子】的更多相关文章

目录 1.按照时间生成文件2018-05-22.log将每天的磁盘使用状态写入到对应日期的文件 [root@web01 ceshi]# cat 1.sh #!/bin/bash Date=`date +%F` dir=/backup [ -d $dir ] || mkdir -p $dir df -h >${dir}/$Date.log 2. 统计Nginx日志中每个IP的访问量有多少,日志如下: [root@web01 ~]# awk '{ip[$1]++} END {for(i in ip)…
4.几个常用的shell脚本例子    4.0.在写脚本(同样适用在编程的时候),最好写好完善的注释    4.1.kill_processes.sh(一个杀死进程的脚本) #!/bin/bash current_PID=$$ ps -aux | grep "/usr/sbin/httpd" | grep -v "grep" | awk '{print $2}' > /tmp/${current_PID}.txt for pid in `cat /tmp/${…
Shell数组例子 循环打印数组,并统计数组的个数: [root@slavedb array]# cat a.sh #!/bin/bash array=( freddy freddie tang sheng wei ) ;i<${#array[@]};i++));do echo "This is num $i,then content is ${array[$i]}" #$i是下标 done echo "-----------------" echo &quo…
package cn.shell; import java.io.IOException; import org.apache.hadoop.util.Shell; public class ShellDemo { public static void main(String[] args) throws IOException { String pars="ipconfig"; String out=Shell.ShellCommandExecutor.execCommand(par…
Scala: /** * Created by sunxu on 2015/9/30. */ import scala.sys.process._ import java.io.File //在相应目录执行shell命令,返回值赋值给变量 val exitValue = Process("hadoop jar pathread-analytics-0.0.1.jar com.duxiu.pathread.stcs.StcsByFieldJob /pathread/2015/10-08 /user…
# vi xx.sh 退出并保存 # chmod +x xx.sh # ./xx.sh -2. 调试脚本的方法 # bash -x xx.sh 就可以调试了 . -1. 配置 secureCRT 的设置 ( 我用的是 6.2.3 build313 版本 , 汉化版 ) 选项 -> 会话选项 (S)...-> 终端 -> 仿真 -> 终端 (T)-> 把 VT100 改成 Xterm-> 点中 ANSI 颜色 (A) 和使用颜色方案 (U) 复选框 . 这样就有颜色显示了…
#!/bin/bash read -p "input a dight:"echo $REPLY DATE=`date`echo "DATE is ${DATE}" USERS=`who |wc -l`echo "LOGIN in user is ${USERS}" UP=`date;uptime`echo "Uptime is ${UP}" #echo "HELLO World!" #echo "…
#!/bin/bash #Filename: password.sh  by:-V love cmx stty -echo #这里表示 开启隐藏在终端的输出 read -p "Enter your password: " input #中间需要输入的任何信息都不会被打印出来,当 stty echo #关闭隐藏功能 echo echo "Password read is $input" 这个时候只是交互的时候,用户输入的东西隐藏.但是 该显示的还是会显示,比如上个例子…
练习一:写一个脚本 .设定变量FILE的值为/etc/passwd .依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么 形如:(提示:LINE=`wc -l /etc/passwd | cut -d" " -f1`) Hello,root,your UID . .统计一个有多少个用户 答案一:#!/bin/bash file="/etc/passwd" LINES=`wc -l $file | cut -d" " -f1`…
#!/bin/sh   str="####" echo $1 | grep $str 1>/dev/null if [ `echo $?` -eq 0 ] then   echo ${1//$str/""} else   echo $2 not present in $1 fi…
-- --…
gawk是一门功能丰富的编程语言,你可以通过它所提供的各种特性来编写好几程序处理数据. 22.1 使用变量 gawk编程语言支持两种不同类型的变量: 内建变量和自定义变量 22.1.1 内建变量 gawk程序使用内建变量来引用程序数据里的一些特殊功能 1.字段和记录分隔符变量 数据字段变量:允许你使用美元符和字段在该记录中的位置值来引用记录对应的字段. 要引用第一个字段就用变量$1,第二个就用$2,-.以此类推. 数据字段是由分隔符来划定的.默认字段分隔符是一个空白字符,也就是空格或者制表符.…
一.预备知识 1.shell的作用   2.常识 (1)Tab键自动补全   使用Terminal时,输入命令的前几个字母,敲tab会自动补全命令或文件名.目录等. 好处:操作速度更快:不容易出错: (2)清屏命令 Ctrl + L 或 输入命令clear  (3)命令历史:  执行:history      清除历史:history -c         技巧1:!num  命令直接打开历史命令,num为history查看的序列         技巧2:!XX     命令查看历史命令中最后一…
上面理论知识,最下面有我做的测试的例子: 10.Shell运算符 expr是一款表达式计算工具,使用它能完成表达式的求值操作 例:val=`expr 2 + 2`;echo "${val}" 注意: 表达式和运算符之间要有空格,2+2是错误的,2 + 2是正确的 完整的表达式要被``包含 A.算术运算符(假定两个变量a为10,b为20) + : `expr $a + $b` 结果为30 - : `expr $a - $b` 结果为-10 * : `expr $a \* $b` 结果为2…
有了shell为毛还要ruby呢?话不能这么说,有些小功能用ruby还是很方便的,比如说字符串的反转再加1功能用shell来写就比较麻烦.str="123456",我们定义一个反转后再+1的小方法: 2.1.5 :020 > class String 2.1.5 :021?> def r_add_1 2.1.5 :022?> replace reverse.each_byte.map {|byte|byte+1}.pack("c*") 2.1.5…
方法: kill –9 `pgrep java` 使用上述命令可以将服务器上运行的所有java进程一次性kill掉. 扩展:子shell和反应用在shell脚本中的作用 先来看一个子shell的例子: # cat text1.txt 1 2 3 4 5 # text01=$(cat text1.txt) #echo $text01 1 2 3 4 5 从例子可以看出,子shell是用$()引用起来的部分,子shell运行作为一个单独的进程,并不会父shell产生影响.子shell输出默认不保留换…
目录 Linux和Shell简介 Linux是一套可免费使用和自由传播的类UNIX操作系统.Shell是一种具备特殊功能的程序,它提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令,并把它送入内核去执行.内核是Linux系统的核心部分,从开机自检时就驻留在计算机的内存中,直到计算机关闭为止,而用户的应用程序存储在计算机的硬盘上,仅当需要时才被调入内存.Shell是一种命令解释程序,当用户登录Linux系统时,Shell就会被调入内存执行.Shell独立于内核,它是连接内核和应用程序的桥…
与其他编程语言类似,Shell支持for循环. for循环一般格式为: for 变量 in 列表 do command1 command2 ... commandN done 列表是一组值(数字.字符串等)组成的序列,每个值通过空格分隔.每循环一次,就将列表中的下一个值赋给变量.in 列表是可选的,如果不用它,for 循环使用命令行的位置参数. 下面演示几个使用for的shell脚本例子 1.顺序输出当前列表中的数字: do echo "The value is: $loop" don…
重定向作用 一个进程默认会打开标准输入.标准输出.错误输出三个文件描述符. 重定向可以让我们的程序的标准输出.错误输出的信息重定向文件里,那么这里还可以将文件的内容代替键盘作为一种标准输入的方式. 重定向符号 输入重定向符号"<" 输出重定向符号">",">>","2>","&>" 输入重定向功能 01 输入重定向符号"<"的作用: 会把…
利用top方式获取指定第三方的内存使用率 #!/bin/bash process=$1 if [ ! -z $process ];then cd /zabbix/zabbix-agent/script/ top -bn1 > dat grep "${process}" dat | awk '{sum+=$10};END{print sum}' fi 用法: shell + name 例子: ./xxx nginx…
整数值运算 使用expr命令:只能做整数运算,默认返回计算结果 格式: expr 整数1 运算符 整数2 ... 整数值可以有变量提供,直接给出运算结果 + 加法 expr 43 + 21 .expr $X + $Y - 减法 expr 43 - 21 .expr $X - $Y \* 乘法 expr 43 \* 21 .expr $X \* $Y / 除法 expr 43 / 21 .expr $X / $Y % 取余数 expr 43 % 21 .expr $X % $Y 例子: #!/bi…
什么是Shell 解释Shell脚本名词之前,我们先来说下什么是Shell? Shell是一个命令解释器,它在操作系统的最底层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕返回给用户.这种对话方式可以是交互的方式(从键盘输入命令,可以立即得到shell的回应),或非交互(脚本)的方式. 命令行解释器:使用户得以与内核进行沟通的“翻译官” 下面图中黄色部分就是命令解释器shell. 提示:Shell在英文中的意思是贝壳,从上图我们可以看出,命令解释…
原创:打码日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 场景 很多时候,我们需要批量操作多台机器,业界一般使用Ansible来实现,但使用Ansible来操作多台机器的前提是需要有ssh权限的,可悲的是,对于开发人员来说,一般是没有正式环境机器的ssh权限的,只能通过一个指定的入口登录机器,也可以理解,毕竟正式环境如此重要. 不过,如果你的生产环境可以访问你的开发机,那么可以通过反向Shell来访问机器,然后将反向Shell与tmux结合,又可实现同时操作多台机器的效果,…
1.远程拷贝文件从server1拷贝文件到server2上.需要先在server2上,用nc激活监听,server2上运行: 引用 [root@hatest2 tmp]# nc -l 1234 > install.logserver1上运行: 引用 [root@hatest1 ~]# ll install.log-rw-r–r–   1 root root 39693 12月 20   2007 install.log[root@hatest1 ~]# nc -w 1 192.168.228.2…
gawk是一门功能丰富的编程语言,你可以通过它所提供的各种特性来编写好几程序处理数据. 22.1 使用变量 gawk编程语言支持两种不同类型的变量: 内建变量和自定义变量 22.1.1 内建变量 gawk程序使用内建变量来引用程序数据里的一些特殊功能 1.字段和记录分隔符变量 数据字段变量:允许你使用美元符和字段在该记录中的位置值来引用记录对应的字段. 要引用第一个字段就用变量$1,第二个就用$2,-.以此类推. 数据字段是由分隔符来划定的.默认字段分隔符是一个空白字符,也就是空格或者制表符.…
查看文件内容-while: cat 1.txt|while read line;do echo $line;done while read line; do echo $line; done <./1.txt 从日志当中测试连接统计情况 while :; do tail -n 100 /app/nginx/web.log |cut -d -f 8|sort|uniq -c;sleep 5;done 统计文件代码行数: find . -type f -name "*.sh" | x…
最近在搞反向连接,试来试去发现最好的工具还是nc.正好趁这个机会把nc的用法总结一下: 1.端口扫描: nc -vv ip port 例:nc -vv 192.168.1.1 5000 扫描192.168.1.1的tcp 5000端口 nc -vv -w secs ip port-port 例:nc -vv -w 5 192.168.1.1 5000-5002 扫描192.168.1.1的5000-5002端口,网络超时的时间设为5秒. 2.开设后门: victim machine: nc -l…
1.Shell概述    Shell是一个命令行解释器.它为用户提供了一个向Linux内核发送请求一以便运行程序的界面系统级程序,用户可以用 Shell来启动.挂起.停止甚至是编写一些程序    Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强.Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令    Shell的两种主要语法类型有Bourne和C,这两种语法是彼此不兼容的.Bourne家族主要包括sh.ksh.Bash.psh.zsh:C家族主要包…
安装与启动 安装: apt-get install postgresql / yum install postgresql.XXX; 启动: mac下直接打开 linux service postgresql status service postgresql stop service postgresap start 修改监听Ip和端口 //postgresql.config; 修改并重启 #listen_address = 'localhost' #port = 5432 关于用户 安装po…
GNU Make 使用手册(中译版) 翻译:于凤昌 译者注:本人在阅读Linux源代码过程中发现如果要全面了解Linux的结构.理解Linux的编程总体设计及思想必须首先全部读通Linux源代码中各级的Makefile文件.目前,在网上虽然有一些著作,但都不能全面的解释Linux源代码中各级的Makefile文件,因此本人认真阅读了GNU Make 使用手册(3.79)版原文,在此基础上翻译了该手册,以满足对Linux源代码有兴趣或者希望采用GCC编写程序但对缺乏GNU Make全面了解之人士的…