这一系列的Linux入门都是本人在《鸟哥的Linux私房菜》的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解

Linux Distribution是Ubuntu而不是书本上推荐的CentOS,建议装双系统,不要使用虚拟机。

代码在github上:Linuxpractice

其他内容:

Linux入门篇(一)——基本命令

Linux入门篇(二)——文件

Linux入门篇(三)——文件与目录

Linux入门篇(四)——Vim的使用与Bash

Shell

一、shell的变量功能

  • 变量的显示 $ echo
  • 变量的修改 $ 变量名=变量值
  • 环境变量功能: $ env 可以列举出当前shell环境下所有的环境变量。

环境变量的举例:

  • HOME:代表主文件夹
  • SHELL:目前环境代表的shell程序
  • HISTSIZE:可纪录的历史命令的条数
  • MAIL:读取的邮件文件
  • PATH:执行文件查询路径
  • LANG:语系数据
  • RANDOM:随机数变量

变量的有效范围:一般情况下,父进程的自定义变量无法在子进程内使用,除非通过export将其变为环境变量,否则就是自定义变量。(与内存分配的记忆块有关)

  • read 读取来自键盘输入的变量: $ read [-pt] variable
  • declare和typeset是一样的功能用来声明:$ declare [-aixr] variable

                      -a: variable为数组类型

                      -i: variable为integer类型

                      -x:用法与export一致

                      -r:变量设置为readonly,只读类型,不可以修改

数组变量类型:array

  • 设置方法:   $ var [index]=context  bash的数组下标是从0开始的。

          数组名 下标  变量值

  • 读取方式: $ echo ${var[1]}

变量内容的删除、替换:

  •    变量设置方法                      说明

    ${变量#关键字}           若变量内容从头开始数据符合”关键字“,则将符合的最短数据删除。

    ${变量##关键字}              若变量内容从头开始数据符合”关键字“,则将符合的最长数据删除。

    ${变量%关键字}             若变量内容从尾开始数据符合”关键字“,则将符合的最短数据删除。

    ${变量%%关键字}          若变量内容从尾开始数据符合”关键字“,则将符合的最长数据删除。

    ${变量/旧字符串/新字符串}            替换第一个符合的字符串。

    ${变量//旧字符串/新字符串}             替换全部符合的字符串。

  •   变量的测试与内容的替换

      new_var=${old_var-content}

  新变量    关键字 旧变量 变量内容

三、Bash Shell操作环境

一个命令被执行时,命令执行的顺序是:

  • 以相对/绝对路径执行命令。
  • 由alias找到该命令并执行。
  • 由bash内置的(builtin)命令执行。
  • 通过$PATH变量的顺序找到第一个来执行。

Linux入门篇(五)——Shell(一)的更多相关文章

  1. Linux入门篇(六)——Shell(二)

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  2. Linux入门篇(一)——文件

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  3. Linux入门篇(四)——Vim的使用与Bash

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  4. Linux入门篇(二)——文件

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  5. 【SSRS】入门篇(五) -- 设置报表格式

    原文:[SSRS]入门篇(五) -- 设置报表格式 在上一节 [SSRS]入门篇(四) -- 向报表添加数据 我们设置好了报表,并可以预览到数据,如下图: 当报表完成后,有个重要的工作就是美化报表格式 ...

  6. Linux入门篇(三)——文件与目录

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  7. Linux入门篇(一)——基本命令

    这一系列的Linux入门都是本人在<鸟哥的Linux私房菜>的基础上总结的基本内容,主要是记录下自己的学习过程,也方便大家简要的了解 Linux Distribution是Ubuntu而不 ...

  8. linux入门教程(五) Linux系统的远程登录

    首先要说一下,该部分内容对于linux初学者来讲并不是特别重要的,可以先跳过该章节,先学下一章,等学完后再回来看这一章. Linux大多应用于服务器,而服务器不可能像PC一样放在办公室,它们是放在ID ...

  9. Linux学习笔记<五>——<Shell部分>

    管道命令(pipe) 1.把一个命令的输出作为另一个命令的输入 ls -al /etc | less 2.选取命令:cut和grep cut命令可以将一段消息的某段切出来. -d接分隔符,-f是取出第 ...

随机推荐

  1. C#天气预报程序

    首先要引用这个服务,http://www.webxml.com.cn/Webservices/WeatherWebService.asmx 出现对话框后,把中央气象的服务网址添加到里面 选择高级, 添 ...

  2. 通用代码——makefile文件

    ver=debug ifeq ($(ver),debug) TARGET = testmain_d FLAG=-g -D debug else TARGET = testmain_r FLAG=-O3 ...

  3. Struts2_简单数据验证

    在Action 中添加 FieldError if(name == null || !name.equals("admin")){ this.addFieldError(" ...

  4. 关于在Share point 2010 中保存SPFieldLookupValue类型到一个List中的问题

    在share point 中,有时字段的类型是lookup的,那么将会从另外的一个list中进行相应的连接,这是如果保存string等类型,将会报一个错, Invalid data has been ...

  5. ES6相关特性(let & const)

    [ecma-262/8.0]http://www.ecma-international.org/ecma-262/8.0/index.html 1.Let & const let 的三个特性: ...

  6. python绘图 matplotlib教程

    mark一个很好的python绘图教程 https://liam0205.me/2014/09/11/matplotlib-tutorial-zh-cn/

  7. MySQL数据库实验三:连接查询

    实验三    连接查询 实验名称:连接查询(2课时) 一.实验目的 理解JOIN语句的操作和基本使用方法,掌握内连接.外连接.自身连接的概念和使用. 二.实验环境 是MS SQL SERVER 200 ...

  8. centos 7 iptables基本配置

    安装iptable iptable-service #先检查是否安装了iptables service iptables status #安装iptables yum install -y iptab ...

  9. maven项目右键快捷方式,然后点击Run As

    在某一个maven项目右键快捷方式,然后点击Run As就可以发现几个Maven的命令: 1.Maven Build: 这个命令用于编译Maven工程,执行命令后会在target文件夹中的classe ...

  10. 通过WEB网管登录

    6.1  通过WEB网管登录简介 S5100-SI/EI系列以太网交换机提供内置的WEB Server,用户可以通过WEB网管终端(PC)登录到交换机上,利用内置的WEB Server以WEB方式直观 ...