配置启动界面

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. 使用postman给servlet传各种参数

    web开发中经常会使用到postman软件,常用的方法涉及到get和post方法去获取对应json数据,get方法直接传url就可以,返回对应json数据.但是post请求就需要json数据提交,而且 ...

  2. Lorem 占位符

    Web开发者通常用lorem ipsum text来做占位符,占位符就是占着位置的一些文字,没有实际意义. 为什么叫lorem ipsum text呢? 是因为lorem ipsum是古罗马西塞罗谚语 ...

  3. 从零开始学习VoltDB

    1.什么是VoltDB? 是一个优化吞吐率的高性能集群开源SQLRDBMS(Database Management System),它是一个内存关系型数据库,既获得了nosql的良好可扩展性,高吞吐量 ...

  4. 检测到在集成的托管管道模式下不适用的 ASP.NET 设置

    system.webServer节点下加上 <validation  validateIntegratedModeConfiguration="false" />

  5. qt调用sql server存储过程并获取output参数

    最近新做的一个项目需要使用qt5连接另一台机器上的sql server,虽然网上已有类似文章,但还是有些其中很少提及的问题,故在这里汇总下: qt连接sql server可以参考这篇文章: <Q ...

  6. Oracle修改表空间为自动扩展

    https://gqsunrise.iteye.com/blog/2015692 1.数据文件自动扩展的好处1)不会出现因为没有剩余空间可以利用到数据无法写入2)尽量减少人为的维护3)可以用于重要级别 ...

  7. Git——新手入门与上传项目到远程仓库GitHub(转)

    Git概述 什么是Git? 刚开始对这个东西也感到挺迷茫,并且问了好多已经学习android一段时间的同学也是一头雾水,直到了解并使用之后,才体会到Git的好处以及重要意义. Git:是目前世界上最先 ...

  8. MetaMask/zero-client

    https://github.com/MetaMask/zero-client MetaMask ZeroClient and backing iframe service architecture ...

  9. PAT B1034 有理数四则运算 (20 分)

    本题要求编写程序,计算 2 个有理数的和.差.积.商. 输入格式: 输入在一行中按照 a1/b1 a2/b2 的格式给出两个分数形式的有理数,其中分子和分母全是整型范围内的整数,负号只可能出现在分子前 ...

  10. ceph状态信息靠谱查询

    1)检查集群的状态汇总信息: [root@haha1 clouder]# ceph -s cluster 8e136e25-77ab-4e0b-b24b-232a7b466cfe health HEA ...