shell脚本编程基础

简要概括一点脚本小知识

一、如何编写脚本:

1、脚本文件的第一行,顶格:给出解释器路径,用于指明解释执行当前脚本程序的解释文件

常见的解释器:

#!/bin/bash

注意:脚本中除了第一行声明解释器,其他的#都会被当做注释行。

2、shell脚本编程:过程式编程,解释运行,依赖于外部程序运行.

二、运行脚本:

1、赋予执行权限,并直接运行此文件;相对路径或绝对路径;

chmod +x /PATH/TO/SCRIPT_FILE

2、直接运行解释器。将脚本以命令参数传递给解释器程序

bash  /PATH/TOSCRIPT_FILE

示例:

1、显示/etc目录下所有以大写S或小写s开头的文件或目录本身

#!/bin/bash

ls  -d  /etc/[Ss]*

2、显示/var目录下的所有文件或目录本身,并将显示结果中的小写字母转换成大写字母

#!/bin/bash

ls  -d  /var/*|tr  [a-z] [A-Z]

三、bash的配置文件:

1、profile类:为交互式登录shell进程提供配置

2、bashrc类:为非交互式shell进程提供配置

四、登录类型:

1、交互式登录shell进程:

直接通过某终端输入账号和密码后登录打开的shell进程;

使用su命令:su -USERNAME 或使用su -| USERNAME 执行的用户切换;

2、非交互式登录shell:

su  USERNAME 执行的登录切换

图形界面下打开的终端;

运行脚本

3、profle类:

全局:对所有用户都生效;

/etc/profile

/ec/profile.d/*.sh

用户个人:仅对当前用户有效

~/.bash_profile

功用:

1、定义环境变量;只要用户登录就生效

2、运行命令或脚本,只要用户登录就执行一个shell或者命令

bashrc类:

全局:

/etc/bashrc

用户个人:

~/.bashrc

功用:

1、定义本地变量

2、定义命令别名

五、配置生效的优先级:

1、交互式登录shell进程:

/etc/profile –>  /etc/profile.d/*.sh  –>  /etc/profile.d/*

2、非交互式登录shell进程:

~/.bashrc –>  /etc/bashrc –>  /etc/profile.d/*

3、让通过配置文件定义的特性立即生效:

(1)、通过命令重复定义一次;

(2)、让shell进程重读一次配置文件;

source  /PATH/TO/SOMEFILE

.   /PATHTO/SOMEFILE

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/95949

(0)
会飞的蜗牛会飞的蜗牛
上一篇 2018-04-14
下一篇 2018-04-14

相关推荐

  • 用 percona-xtrabackup 实现备份实例

    安装2.4.11版本的percona wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.11/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.11-1.el7.x86_64.rpm 下载新版的percona 看下后…

    Linux笔记 2018-06-14
  • 正则表达式

    grep命令: 文本过滤(按行过滤) 参数   -v 取反 -i 忽略大小写 -n 显示行号 -c 统计匹配行数 -q 静默执行(不显示执行结果) -o 仅显示搜索到的字符串 -A #(数字) 包含关键字的后续几行 -B #(数字) 包含关键字的前面几行 -C #(数字) 包含关键字的前后几行 -w 匹配整个单词 -E 相当于fgrep 正则表达式 REGE…

    Linux笔记 2018-03-30
  • 课堂笔记

    cat— 文本文件 1.cat/etc/centos/—release看到发行版名称 lsb—releas—a                    看到发行版名称 (centors  7上如果看不到发行版名称,并不是没有,而是没有安装对映的软件,生产环境中都是最小化安装,默认安装是最小文件) 2.sz/etc/centos—release传到w…

    Linux笔记 2018-07-24
  • MySQL数据库服务

    MySQL数据库的安装

    2018-06-12
  • MongoDB Replica Set & Sharding

    记得风吹起的零散记忆 ,堆砌着巧克力般的幸福甜蜜,那时一起走过的青草绿地 ,留下了锦瑟音里的万千思绪

    2018-04-10
  • 运维自动化之ansible

    ansible的基本架构 ​ host inventory主机清单 ​ playbook相当于脚本, ​ modules模块 ansible工作原理 ​ 通过执行命令,或ansible playbook,cmdb ansible配置文件 ​ /etc/ansible/ansible.cfg主配置文件,配置ansible工作特性 ​ /etc/ansible/…

    Linux笔记 2018-06-03