shell脚本实例

运维自动化-Ansible ( 三 )

偶尔善良 提交于 2019-12-18 04:45:46
ansible-galaxy 连接 https://galaxy.ansible.com 下载相应的roles,此网站是Ansible爱好者将日常使用较好的playbooks打包上传,其他人可以免费下载 到Ansible PlayBooks并立即投入使用。 ansible-galaxy 语法: ansible-galaxy [delete|import|info|init|install|list|login|remove|search|setup] [--help] [options]  列出已安装的galaxy #ansible-galaxy list geerlingguy.mysql - geerlingguy.mysql, 2.8.1  安装galaxy ansible-galaxy install geerlingguy.redis  删除galaxy ansible-galaxy remove geerlingguy.redis 进入网站后找到这时标记的地方 把名字复制下来 就可以在你的ansible主机上进行安装剧本了。 #ansible-galaxy install geerlingguy.mysql - downloading role 'mysql', owned by geerlingguy - downloading role from https:

linux定时执行shell脚本

こ雲淡風輕ζ 提交于 2019-12-17 16:44:44
在oracle 中可以利用dbms_job包定时执行pl/sql、sql过程,在像备份等需要在操作系统级定时任务只能采用crontab来完成。 利用crontab来定时执行任务大致有如下三步: 1、编写shell脚本 2、利用crontab加入到定时任务队列 3、查看作业完成情况 一、如何建立shell脚本 Linux下有很多不同的shell,但我们通常使用bash(bourne again shell)进行编程,因为bash是免费的并且很容易使用 程序必须以下面的行开始(必须方在文件的第一行): #! /bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。 当编辑好脚本时,要想执行脚本,必须使脚本可以执行 下面的命令,可以使脚本可以执行 chmod +x filename 然后可以输入./filename来执行脚本。 注:在shell编程时,#符号表示注释,只该行结束为止。在编写程序时,最好使用注释。 变量 shell下所有变量都以字符串表示,变量不需要声明,直接使用。直接对变量进行赋值 A="hello world" 取出变量用$符号,如: #! /bin/sh A="hello world" echo "A is:" echo $A 执行该脚本输出结果如下: A is : hello world shell

Linux网络流量实时监控ifstat iftop命令详解

南楼画角 提交于 2019-12-17 01:49:26
Linux介绍    Linux入门——个人感想    Google怎么用linux 初入Linux    Windows XP硬盘安装Ubuntu 12.04双系统图文详解    实例讲解虚拟机3种网络模式(桥接、nat、Host-only)    在线求助 man page 文件,目录,权限    所有者,群组,其他人    文件的属性    Linux目录规范和含义    改变文件属性与权限    常用的文件和目录操作命令    ”十六“进制查看器    文件与目录的默认权限与隐藏权限    文件的搜寻    权限与命令间的关系 帐户    Linux 的账号与群组    Linux 账号管理    账户切换 磁盘和文件系统    EXT2 文件系统    磁盘的分区、格式化、挂载    磁盘检验    磁盘参数修订    另一个分区工具:GNU 的 parted    磁盘与目录的容量    硬链接与软链接    启动挂载    内存置换空间(swap)之建置    释放 Linux 系统预留的硬盘空间    Linux磁盘空间被未知资源耗尽    恢复Ext3下被删除的文件    使用grep恢复被删文件内容 程序管理    shell下的作业管理    常用的程序管理命令    程序的运行顺序    查询进程打开的文件 启动流程,grub,模块管理,系统服务   

脚本怎么写???

旧时模样 提交于 2019-12-16 13:43:16
在MICAS的这段时间,我深刻体会到了Linux系统与写脚本做仿真、做综合、做分析的重要性,对于一个硬件开发者而言,学会Linux系统的操作也是以编写脚本、运行脚本为目的的。这篇随笔我会记录一些最基本的Linux命令,以及四种脚本的使用方法以及一些实例。 想系统学习可以上这个网: https://www.runoob.com/linux/linux-tutorial.html ,但我建议先了解然后现学现用 什么是Shell Shell是一个应用程序,连接了用户和linux内核,shell在开机时就会启动等待接收命令并作出响应,相当于一个解释器,解释用户的指令,直观来看就是命令窗口。个人理解是,windows也有类似shell的应用程序,只不过windows中的shell做成了gui的形式,只需要用鼠标点一点就输入一个shell指令打开网页或是打开应用程序。 Bash Shell:打开linux的命令窗口就相当于进入了bash shell,也是linux中缺省的shell,我们键入的命令都是由bash shell解释器解释给内核并完成操作的。 cd <folder name>:进入目录;ls:展示当前窗口的文件;rm <file name>:删除文件;rm -rf <folder name>:删除文件夹;mkdir<folder name>:创建文件夹。 vim/kate <file

Linux中profile、bashrc、bash_profile之间的区别和联系

感情迁移 提交于 2019-12-16 11:41:19
为使Bash更好地为我们服务,我们需定制bash shell环境。 ~/.bash_profile、~/.bashrc、和~/.bash_logout 1.上面这三个文件是bash shell的用户环境配置文件,位于用户的主目录下。其中.bash_profile是最重要的一个配置文件,它在用户每次登录系统时被读取,里面的所有命令都会被bash执行。.profile(由Bourne Shell和Korn Shell使用)和.login(由C Shell使用)两个文件是.bash_profile的同义词,目的是为了兼容其它Shell。在Debian中使用.profile文件代 替.bash_profile文件。 2..bashrc文件会在bash shell调用另一个bash shell时读取,也就是在shell中再键入bash命令启动一个新shell时就会去读该文件。这样可有效分离登录和子shell所需的环境。但一般 来说都会在.bash_profile里调用.bashrc脚本以便统一配置用户环境。 3..bash_logout在退出shell时被读取。所以我们可把一些清理工作的命令放到这文件中。 在 /etc目录的bashrc和profile是系统级(全局)的配置文件,当在用户主目录下找不到.bash_profile 和.bashrc时,就会读取这两个文件。.bash

Shell编程—结构化命令(2)

北慕城南 提交于 2019-12-15 20:28:02
1 for 命令 for命令的基本格式: for var in list do commands done 在list参数中,你需要提供迭代中要用到的一系列值。 1.1 读取列表中的值 例子: $ vim test1 #!/bin/bash # testing the for variable after the looping for test in Alabama Alaska Arizona Arkansas California Colorado do echo "The next state is $test" done echo "The last state we visited was $test" test=Connecticut echo "Wait, now we're visiting $test" 执行结果: $ ./test1 The next state is Alabama The next state is Alaska The next state is Arizona The next state is Arkansas The next state is California The next state is Colorado The last state we visited was Colorado Wait, now we're

Shell编程—呈现数据

三世轮回 提交于 2019-12-15 20:04:09
1. 标准文件描述符 Linux用文件描述符(file descriptor)来标识每个文件对象。文件描述符是一个非负整数,可以唯一标识会话中打开的文件。每个进程一次 多可以有九个文件描述符。出于特殊目的,bash shell保留了前三个文件描述符(0、1和2): 文件描述符 缩 写 描 述 0 STDIN 标准输入 1 STDOUT 标准输出 2 STDERR 标准错误 1. STDIN : 代表shell的标准输入。对终端界面来说,标准输入是键盘。 2. STDOUT : STDOUT文件描述符代表shell的标准输出。在终端界面上,标准输出就是终端显示器。 3. STDERR : STDERR文件描述符处理错误消息。STDERR文件描述符代表shell的标准错误输出。 1.1 重定向错误 1. 只重定向错误 $ ls -al test badtest test2 2> test5 -rw-rw-r-- 1 rich rich 158 2014-10-16 11:32 test2 $ cat test5 ls: cannot access test: No such file or directory ls: cannot access badtest: No such file or directory 2. 重定向错误和数据 $ ls -al test test2

Shell--输入/输出重定向

北慕城南 提交于 2019-12-14 09:05:21
Shell 输入/输出重定向 大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回​​到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端。 重定向命令列表如下: 命令 说明 command > file 将输出重定向到 file。 command < file 将输入重定向到 file。 command >> file 将输出以追加的方式重定向到 file。 n > file 将文件描述符为 n 的文件重定向到 file。 n >> file 将文件描述符为 n 的文件以追加的方式重定向到 file。 n >& m 将输出文件 m 和 n 合并。 n <& m 将输入文件 m 和 n 合并。 << tag 将开始标记 tag 和结束标记 tag 之间的内容作为输入。 需要注意的是文件描述符 0 通常是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。 输出重定向 重定向一般通过在命令间插入特定的符号来实现。特别的,这些符号的语法如下所示: command1 > file1 上面这个命令执行command1然后将输出的内容存入file1。 注意任何file1内的已经存在的内容将被新内容替代。如果要将新内容添加在文件末尾,请使用

Shell--文件包含

回眸只為那壹抹淺笑 提交于 2019-12-14 08:00:20
Shell 文件包含 和其他语言一样,Shell 也可以包含外部脚本。这样可以很方便的封装一些公用的代码作为一个独立的文件。 Shell 文件包含的语法格式如下: . filename # 注意点号(.)和文件名中间有一空格 或 source filename 实例 创建两个 shell 脚本文件。 test1.sh 代码如下: #!/bin/bash url = "http://www.runoob.com" test2.sh 代码如下: #!/bin/bash #使用 . 号来引用test1.sh 文件 . ./test1.sh # 或者使用以下包含文件代码 # source ./test1.sh echo "菜鸟教程官网地址: $url " 接下来,我们为 test2.sh 添加可执行权限并执行: $ chmod +x test2.sh $ ./test2.sh 菜鸟教程官网地址:http://www.runoob.com 注:被包含的文件 test1.sh 不需要可执行权限。 来源: CSDN 作者: 吴声子夜歌 链接: https://blog.csdn.net/cold___play/article/details/103497154

Shell脚本入门_8

最后都变了- 提交于 2019-12-13 18:32:38
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 入门6中我们学习了 Shell 的 echo 命令,入门7 学习 Shell 的另一个输出命令 printf。 printf 命令模仿 C 程序库(library)里的 printf() 程序。 printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好。 备注:POSIX 表示可移植操作系统接口(Portable Operating System Interface of UNIX,缩写为 POSIX ); printf 使用引用文本或空格分隔的参数,外面可以在 printf 中使用格式化字符串,还可以制定字符串的宽度、左右对齐方式等。 默认 printf 不会像 echo 自动添加换行符,我们可以手动添加 \n 。 printf 命令的语法: printf format-string [arguments...] 参数说明: format-string: 为 格式控制字符串。 arguments: 为参数列表。 实例如下: $ echo "Hello, Shell" Hello, Shell $ printf "Hello, Shell\n" Hello, Shell $ 接下来,我来用一个脚本来体现printf的强大功能: #!/bin/bash # author