此图反映了shell所在的位置与作用。

既然Shell与KDE和application等都是用户与Kernel的接口,那为什么还要学习呢?书中也给出了答案。

通用性,可以这样理解,也就是所谓的跨平台机制。这个跨平台非windows,linux这种跨平台,是跨套件管理模块。

简单快捷  远程的时候毕竟文字传输肯定比桌面联机操作要快得多。

装逼:右键 复制粘贴  跟ctrl+c/v跟在dos下进行处理。你懂得。是不是dos下处理会让人看起来更  我擦  一些。

所有的shell文件都存放在/etc/shells档案目录中。

bash是Linux预设的shell。通用shell,就上上面第一条所谓的通用性的由来。所有的Linux系统都会有这玩意。所以通用喽

就类似于所有电脑都装个jvm,所以java就通用了,一样的道理

Bash shell的功能

1   命令编修功能  按上下键,以前适用的命令都会进行记录加载

2   命令与文件补全功能。 【Tab】按键,将剩余的命令进行补齐。你要是脑子记不住的话,可以长按

3  命令取别名   很多常用命令,你记不住的话,那就起个别名。比如 给  ls-al取个叫lm的别名   alias lm='ls -al'

4  工作控制,前景背景控制。打开的东西太多的话,避免按键出错

5  程序化脚本  类似于批处理文件

6 通配符  【ls -l /usr/bin/x*】那个*就是通配符。将首字母带x的都给我列出来

变量  普通变量 环境变量  都是变量

echo来读取变量   echo $PATH

变量的设定规则。直接截图吧,不写了

注意的几点

1 不能有空格。有空格要加双引号   name="xxxxx xxxx"

2 单引号双引号必须成对出现,如果必须单个单引号出现,需要用\来转义

3 累加  PATH=${PATH}:xx/x//xx

4 增加内容  name=${xx}xxxx追加xxxx

5 子程序与父程序的问题。 如下图实例

首先定义name ,在负shell中设置name=AAAAA。然后bash进入子shell,读取这个变量,他的内容时空的,就是第一个框,白色部分。如何让子shell能够读取到父shell中的变量,就需要export命令,让他变成一个全局变量,书中说转换成环境变量。然后才能在子shell中读取到父变量。图中最后一个框中的AAAAA被打印出来

取消变量名unset name

获取当前用户系统的环境变量

用  env  命令来获得。

具体介绍如下图:

set命令观察所有变量(包含环境变量和自定义变量)

PS1  设定命令提示符

红框位置就是设定后的命令提示符

$:(关于本shell的PID)

echo $$ 获得本shell的PID的值

? 关于上个执行指令的回传值

判断指令是否执行成功。一般执行成功会返回0,执行失败会返回错误代码。这个?就可以获取这个代码

,红框就是上面命令错误之后的返回代码。可以根据这个代码来查找错误原因

export 自定义变量转换成环境变量

自定义变量只适应于本shell。尤其是用在父子shell中时,如果子shell定义了变量,父shell是无法获取的,要想父shell获取到子shell的变量值,就需要将该变量置成环境变量。export命令的

locale 本地编码

本地编码的资料文件都存储在/usr/lib/locale/目录中

转换本地编码,如下图例

认识和学习BASH alias 给长命令起别名 unalias 取消该别名的更多相关文章

  1. 【Shell常用命令一】echo bash alias history 输出重定向 快捷键

    echo输出命令 echo [选项] [输出内容] -e : 支持反斜线控制的字符转换 赋予执行权限 直接运行 chmond 755 hello.sh ./hello.sh 通过bash调用执行脚本 ...

  2. Ubuntu学习之alias命令

    Ubuntu学习之alias命令 1.1 alias功能介绍 当我们经常需要在命令窗键入复杂冗长的命令时,alias就派上用场啦.alias允许用户为命令创建简单的名称或缩写,哪怕这个缩写只有一个字符 ...

  3. 学习 Linux,101: Linux 命令行

    概述 本教程将简要介绍 bash shell 的一些主要特性,涵盖以下主题: 使用命令行与 shell 和命令交互 使用有效的命令和命令序列 定义.修改.引用和导出环境变量 访问命令历史和编辑工具 调 ...

  4. 第十一章、认识与学习BASH

    第十一章.认识与学习 BASH 最近升级日期:2009/08/25 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 ...

  5. 快速学习Bash

    作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁转载. Shell是Linux下经典的文本互动方式,而Bash是现在最常用的一种Shell.我在这里总结了Bash ...

  6. 第十一章、认识与学习 BASH

    第十一章.认识与学习 BASH 1. 认识 BASH 这个 Shell 1.1 硬件.核心与 Shell 1.2 为何要学文字接口的 shell 1.3 系统的合法 shell 与 /etc/shel ...

  7. 认识与学习BASH①——鸟叔的Linux私房菜

    文章目录 认识与学习BASH① 认识BASH 壳程序 多种shells Bash shell 的功能 type :查询指令是否为Bash shell 的内置指令 指令的换行输入和快速删除 Shell的 ...

  8. [CentOS] 指定命令别名:Alias & 软链接生成命令 ln -s

    参考:CentOS里alias命令详解 每天一个linux命令(35):ln 命令 1. Alias命令 功能描述:我们在进行系统的管理工作一定会有一些我们经常固定使用,但又很长的命令.那我们可以给这 ...

  9. 学习bash

    工作8年,前6年基本是Windows环境下,也就是个鼠标党:两年前换工作开始用linux,也就开始了领略了命令行的强大,无论是直接在命令行组合命令,也还写几行简单的shell脚本,其能完成的功能往往令 ...

随机推荐

  1. Springboot2.x整合Redis(一)

    备注: springboto整合redis依赖于spring-boot-starter-data-redis这个jar 一,项目环境和依赖 1.POM.xml配置 <parent> < ...

  2. 小程序中使用async函数 会报 regeneratorRuntime is not defined的问题

    async await比Promise更好的解决异步操作问题,但是在小程序中直接使用会出现以下的错误提示 是因为缺少了regeneratorRuntime这个模块,需要从外部引入 1.在新建的文件夹中 ...

  3. MS Word2016加载EndnoteX6插件

    我的软件环境是:Win10 x64.MS Office 2016 x64.Endnote X6 32位. 在安装完MSO和Endnote后,Word中未能自动加载Endnote插件.现将启用方法记录如 ...

  4. 【杂】聊聊我的男神:Jordan Peterson

    这篇文章我打算聊聊我的男神Jordan Peterson(简称JP).如果还不太了解JP,那么下面两个链接是JP的背景介绍: [文字]Jordan Peterson From Wikipedia, t ...

  5. 【leetcode】207. Course Schedule

    题目如下: There are a total of n courses you have to take, labeled from 0 to n-1. Some courses may have ...

  6. mac 安装Navicat_Premium 破解版带汉化

    因为近期要用mongodb,本想着下载一个Navicat for mongodb 但是一直没有给力带帖子,所以就靠着百度自己找,功夫不负有心人. 下面附上百度网盘,里面有一个txt文档,在安装前一定要 ...

  7. QUIC协议学习记录

    QUIC(Quick UDP Internet Connections,快速UDP互联网连接)是Google提出的一种基于UDP改进的通信协议,其目的是降低网络通信的延迟,提供更好的用户互动体验. Q ...

  8. 【Flutter学习】之绘画实例(一)

    一,概述 画布(Canvas) 画布是一个矩形区域,我们可以控制其每一像素来绘制我们想要的内容 Canvas 拥有多种绘制点.线.路径.矩形.圆形.以及添加图像等的方法,结合这些方法我们可以绘制出千变 ...

  9. 深入浅出C语言中的柔性数组

    在日常的编程中,有时候需要在结构体中存放一个长度动态的字符串,一般的做法,是在结构体中定义一个指针成员,这个指针成员指向该字符串所在的动态内存空间,例如: typedef struct test { ...

  10. python 100day notes (1)

    x1 + x2 +x3 + x4 = 8 多少正整数解 上面的问题等同于将8个苹果分成四组每组至少一个苹果有多少种方案 即用三个隔板插7个空位. 答案C(7,3) =35 # __name__是Pyt ...