10个实战及面试常用的shell脚本--1

###10个实战及面试常用的shell脚本

  • 写脚本之前的一些注意事项

    • 1.开头加解释器:

      #!/bin/bash
    • 2.语法缩进,使用4个空格,多加注视说明
    • 3.命名规则:
      变量名大写
      局部变量小写
      函数名小写
      名字体现出实际作用
    • 4.默认变量是全局的,在函数中的变量local指定为局部变量,避免污染其他作用域
    • 5.两个命令帮助调试脚本:
      set -e  遇到执行非0时退出脚本
      set -x  打印执行过程
    • 6.写完后要测试再到生产
  • 1.获取本机ip地址(有的需要根据机器来修改,不全通用)
    method 1:
    ifconfig eth0 | grep "inet addr" | awk ‘{ print $2}‘ | awk -F: ‘{print $2}‘
    method 2:
    ifconfig eth0|grep ‘inet addr:‘|cut -d: -f2|cut -d " " -f1
    method 3:
     ifconfig eth0|sed -nr ‘2s#^.*addr:(.*) Bca.*$#\1#g‘p
    method 4:
    ifconfig eth0|sed -n ‘/inet /{s/.*addr://;s/ .*//;p}‘
    method 5:
    ifconfig eth0|awk ‘/inet addr:/ {print $2}‘|awk -F: ‘{print $2}‘
    method 6:
    ip add|awk -F ‘[ /]+‘ ‘NR==8 {print $3}‘

原文地址:http://blog.51cto.com/13713370/2105995

时间: 2024-10-11 21:08:02

10个实战及面试常用的shell脚本--1的相关文章

Linux Shell 高级编程技巧4----几个常用的shell脚本例子

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/${

sed && awk工具 及一些常用的shell脚本

(一)sed sed是一个精简的.非交互式的流式编辑器,它在命令行中输入编辑命令和指定文件名,然后在屏幕上查看输出. 逐行读取文件内容存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.原文件爱你的内容并没有改变. sed '4,$d' test.in # 删除4~最后一行 sed '3q' test.in # 读到指定行之后退出 sed 's/public

《跟老男孩学Linux运维之shell编程实战》-第五章 shell脚本的条件测试

本文的知识点是关于shell脚本的条件测试的相关内容. 通常在shell脚本中我们需要做各式各样的条件判断,比如,测试一个文件是否存在.是否为文件或目录.是否 具有执行权限等等,所以在shell脚本中,条件判断还是至关重要的.接下来我们进入正题:shell脚本的条件测试. 1.在bash编程中,条件测试常用的语法形式如下表: 提示: 语法1中的test命令和语法2中的[]是等价的.语法3中的[[]]双中括号为扩展的test命令. 语法4中的(())常用于计算. 在双中括号[[]]中可以使用通配符

常用的Shell脚本

1.通过位置变量创建linux系统账户及密码$1 是执行脚本的第一个参数,$2 是执行脚本的第二个参数 1 #!/bin/bash 2 # Author: Peter zh 3 # Blog: https://home.cnblogs.com/zhangwduoduoj/ 4 # Time: 2019-08-17 19:19:45 5 # Name: userad.sh 6 # Version: v1.0 7 # Description: This is a Script. 8 9 `usera

《shell编程实战》第2章shell脚本入门(下)

1.sh和./的区别[[email protected] ~]# cat test.sh echo I am thzzc1994[[email protected] ~]# sh test.sh I am thzzc1994[[email protected] ~]# bash test.sh I am thzzc1994[[email protected] ~]# ./test.sh-bash: ./test.sh: 权限不够想要让./可以执行,需要在用户位加权限x(可执行exec的意思),在

常用linux shell脚本记录

遍历目录下所有的文件是目录还是文件 for file in ./* do if test -f $file then echo $file 是文件 fi if test -d $file then echo $file 是目录 fi done filelist=`ls ./proto` echo $filelist for file in $filelist;do #不能有判断if [-f $file ] ,为什么?因为文件是在当前目录的proto目录下,我们filelist输出的是文件列表,没

Linux之常用Shell脚本总结

一.简介本文将总结一些常用的shell脚本,方便以后工作中使用. 二.shell脚本[a]定期备份mysql数据库,需结合cronb定时任务调度实现. #!/bin/bash#首先声明一些自定义变量 #数据库备份路径DB_BAK_PATH=/data/db#当前时间CURRENTTIME=$(date +%Y%m%d_%H%M%S)#备份数据库名称DB_NAME=test_db_bak#用户名DB_USERNAME=root#密码DB_PASSWORD=0905#主机名称DB_HOSTNAME=

linux下shell脚本编程1

1. shell脚本是什么 它是一种脚本语言,并非编程语言. 可以使用一些逻辑判断.循环等语法. 可以自定义子函数,是系统命令的集合. shell脚本可以实现自动化运维,大大增加我们的工作效率. 2.shell脚本结构以及执行方法 开头行指定bash路径: #! /bin/bash 以#开头的行作为解释说明 #注释自己的脚本内容,方便自己查阅:utf8字符集,支持中文: 脚本的名字以.sh结尾,用于区分这是一个shell脚本 执行脚本方式有两种: chmod a+x 1.sh    添加x执行权

shell脚本通过expect脚本实现自动输入密码(使用expect)

背景:在远程文件下载时,需要输入对方的服务器密码,shell不支持交互输入内容,可以用下面两种方式实现 一.在shell脚本中嵌入expect来实现密码输入 expect是一个自动交互功能的工具.expect是开了一个子进程,通过spawn来执行shell脚本,监测到脚本的返回结果,通过expect判断要进行的交互输入内容(send) 1.安装expect 需要先安装tcl:apt-get install tcl apt-get install expect 2.expect使用 2.1一个简单