Bash Shell

Linux系统的合法shell都写入/etc/shells这个文件,默认使用的shell版本称为“Bourne Again Shell(简称bash)”

用户登录时系统会分配一个shell让用户工作,登陆取得的shell记录在/etc/passwd文件中

......(下面省略)......

bash的优点

  • 命令记忆能力

命令记录在~/.bash_history中,记录前一次登陆以前执行过的命令。而本次登陆所执行的命令都被暂存在临时内存中,当成功注销系统后,该命令记忆才会记录到.bash_history中。该文件能直接显示输入的密码。

  • 命令与文件补全([Tab]按键)
  • 命令别名设置(alias)
  • 作业前后台控制
  • shell script

命令的执行([Enter])

输入多行命令:“\[Enter]”会转义回车键,下一行会出现>符号,可以继续输入命令。

变量

变量的显示

变量的赋值

等号两边不能直接接空格符,若有空格符可使用双引号、单引号括起来或转义空格符。

双引号内的特殊字符保有原本特性,单引号内的特殊字符仅为纯文本

取消变量的方法为使用“unset 变量名称”。

unset 变量名称

查看环境变量

env

查看所有变量(含环境变量与自定义变量)

set

自定义变量转成环境变量

export 变量名称

子进程仅继承父进程的环境变量,不会继承父进程的自定义变量

常见环境变量

  • HOME——用户的主文件夹
  • SHELL——默认是/bin/bash
  • PATH——文件命令查找路径
  • LANG——语系
  • PS1——命令提示符,可在 ~/.bashrc 中设置
  • $——此 shell 的线程号PID
    echo $$
  • ?——“上个执行命令”的“回传码”
    如果上个命令成功执行,则会回传一个 0 值;如果上个命令发生错误,就会回传一个非 0 的“错误代码”。
  • OSTYPE,HOSTTYPE,MACHTYPE——主机操作系统与CPU等级

键盘读取变量

-t  接等待的秒数,超时则自动略过该命令

声明变量类型

declare [-aixr] 变量名称

-a  数组类型

-i  整数类型

-x  变为环境变量

-r  只读类型,无法更改、重设

将 - 变为 + 进行“取消”操作

变量类型默认为“字符串”

【Linux】bash shell学习的更多相关文章

  1. Linux Bash Shell学习笔记

    参数扩展: 1.被名称引用的参数称作变量2.被数字引用的参数称作位置参数3.被特定符号引用的参数具有特殊的含义和用途,被称作Bash的特殊内部变量引用. 基本参数扩展:字符$会引导参数扩展.大括号是可 ...

  2. linux BASH shell设置字体与背景颜色

    linux BASH shell下设置字体及背景颜色的方法. BASH shell下设置字体及背景颜色  echo -e "\e[31mtest\e[41m"  \e[30m 将字 ...

  3. 【Linux】linux bash shell之变量替换::=句法、=句法、:-句法、-句法、=?句法、?句法、:+句法、+句法

    linux bash shell之变量替换::=句法.=句法.:-句法.-句法.=?句法.?句法.:+句法.+句法   linux bash shell之变量替换::=句法.=句法.:-句法.-句法. ...

  4. Linux Bash Shell常用快捷键

    Linux Bash Shell常用快捷键 table { margin: auto } 快捷键 功能 tab 补全 ctrl + a 光标回到命令行首 ctrl + e 光标回到命令行尾 ctrl ...

  5. Linux bash shell All In One

    Linux bash shell All In One Linux https://tinylab.gitbooks.io/shellbook/content/zh/chapters/01-chapt ...

  6. linux bash shell & lsof & grep & ps

    linux bash shell & lsof & grep & ps lsof list all open files # lsof & grep $ lsof -P ...

  7. Linux下Bash shell学习笔记

    原文地址: http://www.cnblogs.com/NickQ/p/8870423.html 1.shell下没有变量类型和定义的概念. 变量直接使用不用定义 所有值都视为字符串. 在对变量取值 ...

  8. linux bash shell 流程控制(if/else )

    本文转自:http://blog.csdn.net/flowingflying/article/details/5069646 本文也即<Learning the bash Shell>3 ...

  9. bash shell学习-实践 (自己实现一些小工具)

    The poor starve while the rich feast. "穷人饥肠辘辘,富人大吃大喝" 参考资料:鸟哥的Linux私房菜 基础学习篇(第三版)  Linux S ...

随机推荐

  1. HDU 4325 Flowers(树状数组+离散化)

    http://acm.hdu.edu.cn/showproblem.php?pid=4325 题意:给出n个区间和m个询问,每个询问为一个x,问有多少个区间包含了x. 思路: 因为数据量比较多,所以需 ...

  2. MD5加密与Hash加密

    一.Md5加密 MD5算法具有以下特点: 1.压缩性:任意长度的数据,算出的MD5值长度都是固定的. 2.容易计算:从原数据计算出MD5值很容易. 3.抗修改性:对原数据进行任何改动,哪怕只修改1个字 ...

  3. Java 通过get post 请求url

    1️⃣.已获取小程序的access_token 为例,通过Get请求url import com.alibaba.fastjson.JSONObject; String wechatUrl = &qu ...

  4. swfupload上传图片

    项目结构 以及插件需要的文件如图所示 前端代码: <!DOCTYPE html> <html> <head> <title>SWFUpload</ ...

  5. 设计模式(六)Prototype Pattern 原型模式

    通过new产生一个对象非常繁琐,可以使用原型模式 原型模式实现: ——Cloneable接口和clone方法 ——Prototype模式实现起来最困难的地方是实现内存的复制和操作,Java中提供了cl ...

  6. SpringBoot和Mybatis的整合

    这里介绍两种整合SpringBoot和Mybatis的模式,分别是“全注解版” 和 “注解xml合并版”. 前期准备开发环境 开发工具:IDEAJDK:1.8技术:SpringBoot.Maven.M ...

  7. eclipse安装失败

    在eclipse下载后第一次运行eclipse出现如下错误,刚打开后就退出并返回code=13,最后发现 是eclipse的安装版本是64bit,但是jdk的版本是基于32bit的所以出现上面的错误, ...

  8. PowerDesign的简单使用方法

    PowerDesigner是一款功能非常强大的建模工具软件,足以与Rose比肩,同样是当今最著名的建模软件之一.Rose是专攻UML对象模型的建模工具,之后才向数据库建模发展,而PowerDesign ...

  9. web 常用颜色

    1. 推荐链接 RGB颜色值与十六进制颜色码转换工具 Web上16种基本颜色名称 WEB标准颜色 2. 个人常用 除了三原色,还有 #daf1ef#4DBCB0#ccc

  10. Java面试宝典(说说&和&&的区别)

    &和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false. ...