Shell脚本入门学习笔记
1.shell操作系统和用户之间。负责解释命令行
2./etc/shells 记录登录系统有效支持shell
3./etc/passwd 最后,有人谁可以看到用户的默认shell
4.直接输入shell的名称 能够切换shell
5.shell命令的记录能够用history查看 history -c 清除
历史命令存放在.bash_history文件里
6.shell的指令能够用 alias 别名 = 实际名 来替换
取消则用 unalias 别名
7.shell变量
<1>定义变量 变量名=变量值 能够用echo $变量名 来输出变量值
注:用{$变量名}能够与其它相关联 如 echo{$变量名}_变量名 则显示 变量值_变量名
<2>赋值 (双引號,单引號,反撇号)
双引號:同意$引用变量值输出 echo "xx xx $变量名" 则显示 xx xx 变量值
单引號:不同意$引用变量值 同上 则显示 xx xx $变量名
反撇号(TAB键):(反撇号里面一定是能够运行的命令及其命令组合)将命令的结果进行赋值
read赋值:read + 变量名 则会须要在键盘处手动输入一个变量值给变量名
若read+多个变量名,在输入变量值时用空格分开。
更有用的命令 read -p "please input xxxxx :" + 变量名
<3>变量的作用范围
export 变量名 能够将一个变量声明为全局变量(能够在子shell中使用这个变量)
能够在定义时就export xx = xxx
用unset 变量名 来消除
<4>变量的运算
例:
2元相加 expr $X + $Y //加号两边没空格 会显示 值+值
2元相乘 expr $X \* $Y
补:
<5>规则:
变量名=变量值 等号两端不能有空格
变量名称仅仅能用字母和数字,当中数字不能开头
如有空格须要用双引號或单引號括起来 (双引號的特殊字符保存原本意义,单引號仅仅是字符意义。见<2>)
必要时能够用转义字符\
能够用env命令 查看shell的提前定义变量 (env | more)
变量PS1为输入命令时前面那一串东西 能够自己更改
8.重定向
标准输出重定向:
> 写入、覆盖
>> 追加
标准输入重定向:
< 读取文件
标准错误 2>
9.执行环境设置
!/bin/bash
#为凝视
10.运行shell
./完整路径/shell (当前文件夹./shell)
解释器+shell (bash shell)
版权声明:本文博客原创文章,博客,未经同意,不得转载。
Shell脚本入门学习笔记的更多相关文章
- Shell脚本的学习笔记一:变量
三种变量: 局部变量:局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量. 环境变量:所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需 ...
- Linux Shell脚本编程学习笔记和实战
http://www.1987.name/141.html shell基础 终端打印.算术运算.经常使用变量 Linux下搜索指定文件夹下特定字符串并高亮显示匹配关键词 从键盘或文件里获取标准输入 [ ...
- Mac下Shell脚本使用学习笔记(二)
参考文献 Shell 教程 MAC常用终端命令行 Mac下Shell脚本使用 (7)Shell echo命令: 命令格式:echo string ①显示普通字符串:echo "It is a ...
- Mac下Shell脚本使用学习笔记(一)
参考文献 Shell 教程 MAC常用终端命令行 Mac下Shell脚本使用 1.使用终端创建test.sh: (1)进入指定文件夹路径(命令示例:cd Desktop/面向对象程序设计): (2)创 ...
- shell脚本编程学习笔记(一)
一.脚本格式 vim shell.sh #!/bin/bash //声明脚本解释器,这个‘#’号不是注释,其余是注释 #Program: //程序内容说明 #History: //时间和作者 二.sh ...
- shell脚本编程学习笔记(三)编写邮件报警脚本
一.shell编写邮件报警脚本 1.POSTFIX邮件服务器准备 a.首先卸载服务器上自带的sendmail rpm -qa sendmail* //查看安装的sendmail rpm -e send ...
- Shell脚本的学习笔记二:字符串
菜鸟教程提供的Shell在线编辑器 Shell 字符串 项目 功能 单引号 原样输出,变量无效.但可用成对单引号嵌套成对单引号输出变量 双引号 定义字符串中附带有变量的命令并且想将其解析后再输出的变量 ...
- shell脚本编程学习笔记(四)shell操作数据库
一.数据库基本操作 1)登录mysql服务器:mysql -u root -p 密码 2)查看数据库:show databases 3)查看表:show tales from db; 4)查看表结构: ...
- shell脚本编程学习笔记(二)linux服务器启动流程
一.linux服务器启动流程 1.bios找到磁盘上的mbr主引导扇区 2.进入grub洁面选择相应的启动内核 3.读取kernel内核文件-/boot/vmlinuz-* 4.读取init的镜像文件 ...
随机推荐
- php实现 字符串加密(分类分布分工,化不可能为可能)
php实现 字符串加密(分类分布分工,化不可能为可能) 一.总结 一句话总结:谋而后动,加先伪代码,在带函数逻辑,在函数的方式可以极大的避免错误和降低难度.不然这个题目乎出现各种乱七八糟的错误. 1 ...
- ccpc2016长春站打铁记(后记)
Day3 "学术交流日" 自己进我的空间看吧. http://user.qzone.qq.com/190741511/4
- [Angular] Auxiliary named router outlets
Define a auxilliary router: export const ROUTES: Routes = [ { path: 'folder/:name', component: MailF ...
- Android NDK开发之Jni的数据类型
在前面的一篇博客<Android NDK开发简介>,我简单地说明了Android NDK开发的流程,以及其重要的一环:JNI层得开发.今天我再详细说明一下自己的学习经验. JNI是Java ...
- NetSnmp配置
http://blog.csdn.net/shanzhizi/article/details/16985989
- 小米再迎两位重量级人才,原亦庄国投CEO王晓波入职产投部(产业嗅觉)
集微网消息,在小米进入上市倒计时阶段,雷军继续在产业链吸纳人才.日前,小米又迎来了两位重量级人才. 一位投资界重量级人才王晓波,他曾任著名产业投资基金亦庄国投总经理.据悉,王晓波加入的部门是小米产投部 ...
- scala 加载与保存xml文档
package scala_enhance.xml import scala.xml.XML import scala.io.Source import jdk.internal.org.xml.sa ...
- erlang app 文件
http://hje.iteye.com/blog/1211734 应用的概念¶ 当我们写了实现特定功能的代码之后,我们可能想将代码转成一个 应用 (application),这是可以作为一个单元启动 ...
- Android分享介绍
一.使用系统分享 public void execShare(Activity context,String title,String text){ Intent intent = new Inten ...
- 利用WPF建立自己的3d gis软件(非axhost方式)(十三)万能的用户层接口,(强大的WPF)
原文:利用WPF建立自己的3d gis软件(非axhost方式)(十三)万能的用户层接口,(强大的WPF) 先下载SDK:https://pan.baidu.com/s/1M9kBS6ouUwLfrt ...