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的镜像文件 ...
随机推荐
- 2016 Java程序员的年终总结(转)
2016 Java程序员的年终总结 技术积累 (1)代码规范 1.1.1.通常的模块分布:一般如果你要实现一个web 应用,你从后台将数据展示到前端页面,在一个比较大的公司,你少不了跟其他项目有交集( ...
- linux下dd命令详解及应用实例
名称: dd使用权限: 任何使用者dd 这个指令在 manual 里的定义是 convert and copy a file使用方式:dd [option]查看帮助说明dd --help或是info ...
- .NET-架构优化实战-梳理篇
原文:.NET-架构优化实战-梳理篇 前言 程序员输出是他敲写的代码,那么输入就是他思考好的设计.因此不做设计是不存在,设计只分优秀的设计和糟糕的设计.为了避免过度设计浪费成本,需要针对现有业务与问题 ...
- Android 设置图片透明度
我了解的比较快捷的ImageView设置图片的透明度的方法有: setAlpha(); setImageAlpha(); getDrawable().setAlpha(). 其中setAlpha()已 ...
- 【a703】求逆序对(树状数组的解法)
Time Limit: 10 second Memory Limit: 2 MB 问题描述 给定一个序列a1,a2...an.如果存在i小于j 并且ai大于aj,那么我们称之为逆序对,求给定序列中逆序 ...
- 设置非ARC
设置非ARC: 在build phase 设置中compile sources 选择非arc文件,设置键值为-fno-objc-arc
- python request post
import requests import json class BaiduTranslateSpider: def __init__(self, kw): self.url = "htt ...
- js 时间日期函数
忘记从哪里拷贝过来的了,侵删 Date.prototype.format = function (format) { var date = { "M+": this.getMont ...
- WebHost failed to process a request.Memory gates checking failed because the free memory (140656640 bytes) is less than 5% of total memory
WebHost failed to process a request. Sender Information: System.ServiceModel.ServiceHostingEnvironme ...
- 【38.46%】【codeforces 615E】Hexagons
time limit per test 1 second memory limit per test 256 megabytes input standard input output standar ...