应用程序在最外面,就如同鸡蛋的外壳一样,因此被称呼为shell(壳程序)。其实壳程序的功能只是提供操作系统的一个接口。

              应用程序

                ↓

              操作系统(系统呼叫+核心)

                ↓

               硬件

linux预设的shell就是bash

“Tab“:接在一串指令的第一个字的后面,则为命令补全

    接在一串指令的第二个字以后时,则为档案补齐

命令别名设定功能:(alias)

查看所有档案(包含隐藏档)及所有的文件属性:ls -al

设置别名命令:alias lm=‘ls -al’

可以在指令列输入alias就可以知道目前的命名别名有哪些。

type [-tpa] name

:1、不加任何选项与参数时,type会显示出name是外部指令还是bash内建指令

2、“-t” :type会将name以底下这些字眼显示出他的意义:

      file:表示为外部指令

      alias:表示该指令为命令别名所设定的名称

      builtin:表示giant指令为bash内建的指令

   “-p”:后接name为外部指令时,才会显示完整文件名

   “-a”:会由PATH变量定义的路径中,将所有含name的指令都列出来,包含alias

变量的读取与设定:echo unset

利用echo来读取变量,变量在被读取时,前面必须要加上“$”  格式:echo $variable或者echo ${var}

设定和修改变量的内容:格式  :var=内容

如:echo $myname    //不显示任何数据,因为这个变量尚未被设定,是空值

  myname=Vbird  //myname    设定值

  echo $myname  //显示VBird

  注意:在bash当中,当一个变量名称尚未被设定时,预设的内容是“空”

变量设定规则:

1.变量与变量内容以一个等号“=”来连接,且等号两边不能直接接空格符

2.变量名称只能是英文字母与数字,但开头字符不能是数字

3.变量内容若有空格符可使用双引号【“】或者单引号【‘】将变量内容结合起来,但

  双引号内的特殊字符如$等,可以保留原来的特性。如[var="lang is $LANG"]则[echo $var]可得[lang is en_US]

  单引号内的特殊字符则仅仅为一般字符(纯文本),如[var='lang is $LANG']则[echo $var]可得[lang is $LANG]

4.可用跳脱字符"\"将特殊符号([enter],$,\,空格符,等)变成一般字符

5.在一串指令中,若需借由其他的指令提供的信息,可使用反单引号【`指令`】或【$(指令)】。注:`是键盘上方1左边那个按键,而不是单引号。

  【var=$(uname -r)】再【echo $var】可得【2.6.18-128.el5】

6.若该变量为扩增变量内容时,则可用“$变量名称”或${变量}累加内容。如【PATH=“PATH”:/home/bin】

7.若该变量需在其他子程序中执行,则需要以export来使变量变成环境变量:【export PATH】

8.取消变量unset,【unset变量名称】

例:unset myname

认识与学习BASH的更多相关文章

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

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

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

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

  3. 鸟哥的Linux私房菜-第10/11/12/13章(vim程序编辑器、学习bash、正则表达式与文件格式化处理、学习Shell Scripts)

    第10章 vim程序编辑器 可以将vim看做vi的进阶版本,vim可以用颜色或底线等方式来显示出一些特殊的信息. 为何要学习vim?因为: a. 所有的 Unix Like 系统都会内建 vi 文书编 ...

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

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

  5. 快速学习Bash

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

  6. Linux学习笔记之认识与学习Bash

    什么是shell:shell是一个翻译器,将所敲的命令翻译成CPU能理解的语言,之后CPU再去执行,CPU执行后返回给shell,shell再翻译成我们所能理解的语言并显示:终端并不是shell,而是 ...

  7. 认识和学习BASH alias 给长命令起别名 unalias 取消该别名

    此图反映了shell所在的位置与作用. 既然Shell与KDE和application等都是用户与Kernel的接口,那为什么还要学习呢?书中也给出了答案. 通用性,可以这样理解,也就是所谓的跨平台机 ...

  8. 【CentOS】学习Bash

    一.特性 命令历史  history , !! , !$ , !字符 , !n (n为第几条命令) Tab可以补全文件路径或者命令 alias a="b",  unalias a ...

  9. 认识与学习 BASH

    2015-08-03摘自鸟哥 什么是变量? 那么,什么是『变量』呢?简单的说,就是让某一个特定字符串代表不固定的内容就是了.举个大家在国中都会学到的数学例子, 那就是:『 y = ax + b 』这东 ...

  10. 学习bash

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

随机推荐

  1. SQL server 中的dbo、guest

    dbo database owner 数据库的创建者,创建该对象的用户. guest 顾客 能够访问数据库中对象的数据, 要求dbo分配权限给guest, 一般给他查看的权限select 数据库所有者 ...

  2. 09_android入门_采用android-async-http开源项目的GET方式或POST方式实现登陆案例

    根据08_android入门_android-async-http开源项目介绍及使用方法的介绍,我们通过最常见的登陆案例进行介绍android-async-http开源项目中有关类的使用.希望对你学习 ...

  3. ubuntu 安装 VISUAL STUDIO CODE

    1.下载VISUAL STUDIO CODE .DEB/.RPM 2. # For .deb sudo dpkg -i <file>.deb # For .rpm (Fedora and ...

  4. MySQL存储引擎【InnoDB、MyISAM、Memory】

    数据库,MySQL这样存在多存储引擎的数据库软件,清楚常见的存储引擎的区别,使用合适的存储引擎,使得项目跑的更顺畅,有时候对于一个项目,甚至比项目本身都重要.这篇文章,旨在浅谈常见的三种存储引擎的区别 ...

  5. liveusb-creator

    liveusb-creator The liveusb-creator is a cross-platform tool for easily installing live operating sy ...

  6. rsync 无密码 传输

    1.通过ssh执行rsync(需要密码) 通过ssh帐户(需要密码)执行rsync,将文件同步镜像到远程服务器.下面这个例子将本地的/home/ramesh同步到远程目录/backup/ramesh( ...

  7. angularjs中ng-route和ui-router简单用法的代码比较

    1.使用ng-route: app.js中的写法: var app=angular.module('birthdayApp',['ngRoute']); app.config(function($ro ...

  8. C#中abstract和virtual区别

    在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别.二者都牵涉到在派生类中与override的配合使用. 一.Virtual方法(虚方法) virtual ...

  9. (C/C++) 基础问答题

    1.简述sizeof和strlen的区别 最常考察的题目之一.主要区别如下: 1)sizeof是一个操作符,strlen是库函数. 2)sizeof的参数可以是数据的类型,也可以是变量,而strlen ...

  10. sqlite数据库执行full outer join

    sqlite数据库执行full outer join时提示:RIGHT and FULL OUTER JOINs are not currently supported. sqlite数据库不支持(+ ...