思想
信念
1、自身形象
穿着
行为举止(言谈,语调)
2、背景(背书)
学历、能力、态度、特长、人品、名企、口碑
人生四行:自己要行
要有人认为你行
认为你行的人也要行
身体要行
3、实际的让人认可的数据
能力
搞定有决策能力的人
技术能力、沟通表达、思想思维、人品态度
员工:7:3 6:4
主管:6:4 5:5
高管:4:6 3:7
Shell编程基础
1、为什么学shell编程
系统中大量使用,自动化实现业务,
如自动备份、监控、自动安装
最简单的编程语言,必须会
编程是运维人员居必会的本领:shell python
2、什么是shell
shell就是一个解释器,命令行的命令以及脚本都会去通过解释器,传给操作系统,处理后在输出给用户
创建用户时,系统指定的翻译官
3、shell的分类
bourne shell
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
Bourne shell又包括Bourne shell (sh)、Korn shell (ksh)、Bourne Again Shell(bash)三种类型
c shell
C shell又包括csh、tcsh两种类型。
4、C7的默认shell
/bin/bash
5、什么是shell脚本
程序、命令放入文件里执行,这个文件我们称之为shell脚本文件
工作中最多是编程写脚本,然后存放在文件里。
6、shell的变量:
全局变量(环境变量)
在整个系统中生效、一般是大写、系统中默认就存在一此这样的变量,满足各系统和程序运行的需求
自定义环境变量:
方法1:例 expost OLDBOY='I AM OLDBOY'
方法2:/etc/prof
推荐以后把环境变量放入/etc/bashrc
局部变量(普通变量)
是编写shell脚本最常用的变量
用法 变量名=值 如a=1
变量名:是数字 字母 下划线,不能是数字开头
= 等号:赋值符两边不能有空格,把什么东本给谁,
值:东西,变量内容,引用内容的符号:单引,双引,反引,不加引号
a=1 [root@yueguolin ~]# echo $a 1
let y="$x+1" let实现计算
7、【表达式】中括号表达式,中括号里面两端必须要有空格
整数表达式:
> -gt
>= -ge
< -lt
<= -le
= -eq
不等于 -ne
1
2
3
[root@yueguolin ~]# a=9
[root@yueguolin ~]# [ $a -eq 2 ] && echo 2 || echo 7
7
[root@yueguolin ~]# [ $a -eq 9 ] && echo 2 || echo 7
2
[root@yueguolin ~]# [ $a -gt 2 ] && echo 2 || echo 7
2
[root@yueguolin ~]# [ $a -ge 2 ] && echo 2 || echo 7
2
[root@yueguolin ~]# [ $a -lt 2 ] && echo 2 || echo 7
7
[root@yueguolin ~]# [ $a -le 2 ] && echo 2 || echo 7
7
[root@yueguolin ~]# [ $a -ne 2 ] && echo 2 || echo 7
字符表达式:
-z 变量内空长度为0时,为真。zero
-n 变量内容长度不为0时,为真,not zero
a == a 字符串是否相同
说明:
1 字符串要加双引号
[root@yueguolin ~]# [ -z "$oldboy" ] && echo 2 || echo 7
7
[root@yueguolin ~]# [ -n "$oldboy" ] && echo 2 || echo 7
2
判断句:
如果【 你潜力股】 if [ 表达式 ]
那么 就和你谈朋友 then 命令
否则 88 fi
书写习惯:
1.以.sh结尾
书写脚本习惯:
1.以.sh结尾。
2.脚本开头第一行 #!/bin/bash 脚本内容由谁解释。
由于Linux下默认是bash,所以也可以不写这一行。
read 命令 读取用户输入
-p提醒
read -t 3 -p "你傻啊!"
-t 多长时间
$1 脚本文件的第一件参数
$2 脚本文件的第二件参数
8for 循环
for n in 取值列表
do
执行命令
done
[root@oldboyedu ~]# cat for1.sh
for n in 1 2 3 4 5
do
echo $n
done
[root@oldboyedu ~]# sh for1.sh
1
2
3
4
5
[root@oldboyedu ~]# sh -x for1.sh
+ for n in 1 2 3 4 5
+ echo 1
1
+ for n in 1 2 3 4 5
+ echo 2
2
+ for n in 1 2 3 4 5
+ echo 3
3
+ for n in 1 2 3 4 5
+ echo 4
4
+ for n in 1 2 3 4 5
+ echo 5
5