配置启动界面

vim /etc/inittab/  init3
配置网卡 重启生效
system-config-network
网卡配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes 开机自启动网卡
查看历史命令:参数  -c(清空)  -w(保存)
history 
shell脚本开头第一行:说明一下内容是shell脚本。
#!/bin/bash
命令别名:
alias 
alias vi = 'vim'临时生效,重启命令就会消失。
vim /root/.bashrc 将要添加的别名写入到配置文件中。
删除别名:
unalias
清屏:
ctrl+L 相当于clear
删除或剪切光标之前的所有命令:
ctrl+U
粘贴ctrl+U的数据
ctrl+Y
搜索history的内容
ctrl+R 回车直接执行
退出终端:
ctrl+D
正确输出重定向:
覆盖之前的内容:命令 > 文件
追加内容:命令 >> 文件
错误输出重定向:
输出错误内容覆盖之前的内容:命令 2> 文件
输出错误内容追加内容:命令 2>>文件
错误输出和正确输出都输出到一个文件里:命令 &>> 文件
正确错误分别保存:命令 >> 文件1 2>> 文件2
黑洞垃圾箱:
/dev/null

输入重定向:wc 参数:-c(统计字节数),-w(统计单词数),-l(统计行数)
wc < aa.log
wc -l < aa.log
wc -c aa.log
wc -w < aa.log

    • 多命令顺序执行:

; 顺序执行
&& 当前一个执行不报错,顺序执行,报错结束
|| 当前一个执行报错,才执行条件2
用在程序判断:
ls && echo yes || echo no  正确执行输出yes
lsss && echo yes || echo no错误执行输出no

    • 管道符:

命令2作为命令1的输出: 例子:ls -l /etc | more

grep:搜索关键字,在文件当中搜索相关的字符串
例子:netstat | grep  EST

    • 通配符和特殊符号:用来匹配文件的

?:匹配一个任意字符
*:匹配多个或任意多个字符,可以匹配任何内容
[]:匹配中括号中任意一个字符,例如[a,b,c]代表一定匹配一个字符,或者a,或者b,或者c
[-]匹配中括号中任意一个字符,-代表范围例如:[a-z]代表匹配一个小写的字母
[^]逻辑非,表示匹配不是中括号内的一个字符,例如:[^0-9]代表匹配不是一个数字的字符
特殊字符
'' 内容都是字符串里边的不识别特殊字符
"" 能识别特殊字符
$ 调用变量的值
$()和反引号效果一样,输出内容的结果
\特殊符号的特殊作用取消变成普通字符
例:
[root@zabbix_1 ~]# name=$(date)
[root@zabbix_1 ~]# echo $name
Thu Oct 25 08:41:09 CST 2018
[root@zabbix_1 ~]# name=22
[root@zabbix_1 ~]# echo '$name'
$name
[root@zabbix_1 ~]# echo "$name"
22

    • 变量:

定义变量:变量=值
变量叠加:变量="$(变量)新值"
查看变量:echo $变量 或者 echo "$变量"
查看变量 set(查看所有变量)
删除变量:unset 变量名

环境变量:PATH、PS1变量重要
定义:export 变量=值
已经定义好的自定义变量想改成全局环境变量:
sex=boy
export=sex 这样就定义好了全局环境变量
查询环境变量: env(查看环境变量)
变量叠加: PATH="$PATH:/路径" 重启就会失效,永久生效需要添加到环境变量中

    • 位置参数变量:

$n(n代表参数)$0代表命令本身,$1-$9代表第一个到第九个参数,10以上的参数需要用大括号包含例如:${10}
$* 把所有参数当成一个整体,打印一行。
$@ 把每个参数当成一个整体,几个参数打印几行。
$# 返回参数的个数。

    • 预定义变量:

$? 返回判断上一条命令是否正确执行,正确执行返回0,不正确执行返回非零
$$ 显示当前进程的ID
$! 显示后台进程的ID

接收键盘输入:-p(提示信息),-t(秒数),-n(字符数,用户可以输入几个字符),-s(隐藏输入的信息)
例:
#!/bin/bash
read -t 30 -p "pleas is:" name
echo "$name"
read -s -t 10 -p "pleas is:" age
echo "\n"
echo "$age"
read -n 1 -t 20 -p "[Y/N]:" is
echo $is

    • 数据运算与运算符:

declare 参数:
-:给变量设定属性类型
+:取消变量的属性类型
-i:将变量声明为整型
-x:将变量声明为环境变量
-p:显示指定变量的被声明的类型

例1:
[root@zabbix_1 sh]# aa=11
[root@zabbix_1 sh]# bb=12
[root@zabbix_1 sh]# declare -i cc=aa+bb
[root@zabbix_1 sh]# echo $cc
23
[root@zabbix_1 sh]#

例2:
[root@zabbix_1 sh]# dd=$(($aa+$bb))
[root@zabbix_1 sh]# echo $dd
23
[root@zabbix_1 sh]#

例3:

[root@zabbix_1 sh]# ff=$((($aa+$bb)*$ee)) 先算加减
[root@zabbix_1 sh]# echo $ff
483
[root@zabbix_1 sh]#

    • 取余:

例:
[root@zabbix_1 sh]# dq=$((13%3))
[root@zabbix_1 sh]# echo $dq
1
[root@zabbix_1 sh]#

    • 逻辑与&&:

例1:
[root@zabbix_1 sh]# ds=$((1&&0)) 一边为1,返回值为0
[root@zabbix_1 sh]# echo $ds
0
[root@zabbix_1 sh]# ds=$((1&&1))两边都为1,返回值为1
[root@zabbix_1 sh]# echo $ds
1
[root@zabbix_1 sh]#

    • 逻辑或||:

例:
[root@zabbix_1 sh]# ds=$((1||0)) 有一个为1,返回值就为1
[root@zabbix_1 sh]# echo $ds
1
[root@zabbix_1 sh]# ds=$((0||0)) 两个都不为1,返回值为0
[root@zabbix_1 sh]# echo $ds
0
[root@zabbix_1 sh]#

变量测试与内容替换:

    • 环境变量配置文件:

环境变量有哪些:PATH、HISTSIZE、PSI、HOSTNAME
source /etc/profile 不重启生效环境变量
环境变量配置文件有哪些:

配置文件作用:
/etc/下的配置文件对任何用户都生效。
/etc/profile    下的配置文件对任何用户都生效。
/etc/profile.d/*.sh --->以.sh结尾的文件
/root/.bash_profile 写在哪个家目录就对哪个用户生效
/root/.bashrc    写在哪个家目录就对哪个用户生效
/etc/bashrc 下的配置文件对任何用户都生效。

    •  配置文件启动顺序

  • su命令切换用户(切换登录)

  • 正则表达式:

:

shell脚本之基础的更多相关文章

  1. Linux shell脚本编程基础之练习篇

    shell脚本编程基础之练习篇. 1.编写一个脚本使我们在写一个脚本时自动生成”#!/bin/bash”这一行和注释信息. #!/bin/bash ] then echo "请输入一个参数& ...

  2. shell脚本语法基础汇总

    shell脚本语法基础汇总 将命令的输出读入一个变量中,可以将它放入双引号中,即可保留空格和换行符(\n) out=$(cat text.txt) 输出1 2 3 out="$(cat te ...

  3. linux的基本操作(shell 脚本的基础知识)

    shell 脚本的基础知识 日常的linux系统管理工作中必不可少的就是shell脚本,如果不会写shell脚本,那么你就不算一个合格的管理员.目前很多单位在招聘linux系统管理员时,shell脚本 ...

  4. SHELL脚本编程基础知识

    SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...

  5. shell脚本编程基础介绍

    Linux系统——shell脚本编程基础介绍 1.什么是shell 它是一个命令解释器,在linux/unix操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种操作输出的结果 ...

  6. 学习笔记:CentOS7学习之二十:shell脚本的基础

    目录 学习笔记:CentOS7学习之二十:shell脚本的基础 20.1 shell 基本语法 20.1.1 什么是shell? 20.1.2 编程语言分类 20.1.3 什么是shell脚本 20. ...

  7. linux基础—课堂随笔_03 SHELL脚本编程基础

    shell脚本编程基础 条件选择:if语句 选择执行: 注意:if语句可嵌套 单分支 if(开头)判断条件:then条件为真的分支代码 fi(结尾) 双分支 if(开头)判断条件:then条件为真的分 ...

  8. shell脚本编程基础

       最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础    shell脚本是利用shell的功能 ...

  9. SHELL脚本--变量(基础)

    bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 变量存在于内存中.假设变量str,设置或修改变量属性时,不带$ ...

  10. Shell 脚本编程基础

    通过本文记录学习Linux Shell的一些笔记思考和总结,以加强记忆和理解.主要学习参考资料有: 1.<鸟哥的Linux私房菜-基础篇>第四版 2.菜鸟教程——Linux教程 3.ear ...

随机推荐

  1. Jboss7或者wildfly部署war包的问题 1

    1.Jboss的日志系统(standalone模式) 在介绍案例分析之前先来介绍一下Jboss提供的日志系统,下载EAP的zip包解压后的结构如下: 在standalone目录下有两个文件standa ...

  2. Linux磁盘及分区之wwid和uuid

    背景描述,在Linux系统中,如果添加了新的SCSI磁盘或者映射SAN存储LUN操作,重启操作系统之后会出现磁盘标识符(sd*)错乱的情况. 例如之前添加的SAN存储LUN的磁盘标识符为/dev/sd ...

  3. orcl 复杂查询

    测试环境: create table bqh6 (xm varchar2(10),bmbh number(2),bmmc varchar2(15),gz int);insert into bqh6 v ...

  4. [Spark RDD_add_2] Spark RDD 分区补充内容

    [Spark & Hadoop 的分区] Spark 的分区是切片的个数,每个 RDD 都有自己的分区数. Hadoop 的分区指的是 Reduce 的个数,是 Map 过程中对 Key 进行 ...

  5. 拯救U盘之——轻松修复U盘“无法访问”的故障

    在使用U盘或者移动硬盘的过程中,大家是否和我一样,有个不好的操作习惯,明知不好但是在每次使用时都很少记得“安全删除硬件”,随手一把走人.终于出问题了,那天给mm复制完资料,拔了再插到自己的电脑上,打开 ...

  6. layui 弹出层监听 判断弹出框的大小

    if ($.PublicIsMobile($(window).width())) { var layerInitWidth = $("#layui-layer" + ly_dtxm ...

  7. 常用lua代码块

    1.读取请求体中参数 local request_method = ngx.var.request_method local args --获取参数的值 if "GET" == r ...

  8. QGIS(2.18.15 源码)+Qt(5/5.9.3)+VS2015(X64)编译

    由于工作要求,今年需要基于Qt搞跨平台的GIS.前期未曾接触过Qt,最近也简单学习了下,开源的QGIS是非常不错的学习资源,下了最新版的QGIS源码,不过在VS2015下却没法直接打开.网上查了很多资 ...

  9. VC基于单文档OpenGL框架

    本文是在VC6.0的环境下,运用MFC实现的OpenGL最基本框架,需要简单了解MFC编程(会在VC6.0里创建MFC单文档应用程序就行),甚至不必了解OpenGL的知识.以下是具体的步骤. 1.创建 ...

  10. Linux防火墙工具Firestarter

    Firestarter是一个非常好用的防火墙图形化配置工具,作者和开发者是芬兰人. 首先肯定的说Firestarter防火墙是一款非常优秀的基于GUI图形用户界面下的,完全免费的自由软件,它为中小型L ...