应用程序在最外面,就如同鸡蛋的外壳一样,因此被称呼为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. Daas

    联想到这些年遇到的各种客户使用桌面虚拟化的场景,深有感触.桌面虚拟化技术并不一定适合所有的用户和场景,也不仅仅只是技术方面的问题.加强安全的方法有千万种,为何此客户情守桌面虚拟化呢?某客户已经规模化实 ...

  2. httpd-2.2

    http://httpd.apache.org/docs/2.2/logs.html httpd.conf文件 Configuration and logfile names: If the file ...

  3. DIV的绝对居中

    来源:http://www.cnblogs.com/damonlan/archive/2012/04/28/2473525.html 作者:浪迹天涯 很多时候,我们需要在浏览器中让一个div居中进行显 ...

  4. C语言计算开方

    C语言里面有sqrt可以计算开平方根,但似乎想要计算开任意次方根的话却没有一个固定的函数,自己写算法也蛮啰嗦的…… 其实啊,巧妙使用pow函数就可以实现需求. C语言库函数pow的原型声明如下: #i ...

  5. Oracle NoLogging Append 方式减少批量insert的redo_size

    业务处理中,很多时候使用实表临时表处理中间结果,而实表的Insert操作缺省会记录redo log,针对此问题收集相关测试总结信息如下: [转] 常见dml.ddl语句使用nologging选项所生成 ...

  6. Mysql 模糊匹配和转义字符

    首先创建一个测试表: insert into test(tt) values('\\\\172.18.28.153'); 现在我想使用模糊匹配,查出以 “\\172” 开头的字符串. 需要使用like ...

  7. Android学习笔记1 android adb启动失败问题 adb server is out of date. killing...

    下面是Android的学习笔记,原文地址. 我是使用adb devices出现如下红字错误, 使用第一种方法方法,结果关掉豌豆荚就可以了. android adb启动失败问题 adb server i ...

  8. [Hibernate] - Study test project

    最近玩Hibernate的测试代码工程: http://files.cnblogs.com/HD/TestHibernate.7z

  9. HackerRank "Vertical Rooks"

    Please note: VROOK cannot go back-ward - that leads to a simple variation to Game of Nim: just XOR. ...

  10. 轻量级开源内存数据库SQLite性能测试

    [IT168 专稿]SQLite是一款轻型的数据库,它占用资源非常的低,同时能够跟很多程序语言相结合,但是支持的SQL语句不会逊色于其他开源数据库.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品 ...