linux之shell基础介绍

1. what's shell?

shells是一个命令解释器,为用户提供一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动。挂起、停止甚至是编写一些自定义的程序。

用大白话说其实shell就是我们和计算机、和内核交互的界面,他最主要的一个功能就是让我们有一个地方可以输命令,然后把我们的命令翻译为计算机可以识别的语言。

Shell还是一个功能强大的编程语言,易编写、易调试、灵活性较强,Shell是解释执行的脚本语言,在shell中可以直接调用linux系统命令。

Shell的分类

  • Bourne Shell:从1979年起Unix就开始使用Bourne Shell,Bourne Shell的主文件名为sh。

  • CShell:C Shell主要在BSD版的Unix系统中使用,其语法和C语言相类似而得名。

Shell的两种主要语法类型有Bourne和C,这两种语法彼此不兼容。Bourne家族主要包括sh,ksh,Bash,psh,zsh;C家族主要包括csh,tcsh。

现在使用的linux就是使用Bash作为用户的基本shell。

Linux支持的Shell

# vi /etc/shells 查询系统当中有哪些shell

linux之shell基础介绍

Shell脚本的执行方式

echo输出命令

# echo [选项] [输出内容]

如果输入的字符有空格,要把内容用双引号括起来。

-e 支持反斜线控制的字符转换,

  • \\ :输出\本身

  • \a:输出警告音

  • \b:退格键,即向左删除键

  • \c:取消输出行末的换行符。和-n选项一致

  • \e:ESCAPE键

  • \f:换页符

  • \n:换行符

  • \r:回车键

  • \t:制表符,也就是Tab键

  • \v:垂直制表符

  • \0nnn:按照八进制ASCII码表输出字符。其中0为数字0,nnn是三位八进制数

  • \xhh:按照十六进制ASCII码表输出字符。其中hh是两位十六进制数

举例:

# echo -e "ab\bc" 删除左侧字符,将输出ac

# echo -e "a\tb\tc\nd\te\tf" 制表符与换行符

linux之shell基础介绍

# echo -e "\e[1;31m abcddddd \e[0m" 输出颜色

linux之shell基础介绍

#30m=黑色,31m=红色,32m=绿色,33m=黄色

#34m=蓝色,35m=洋红,36m=青色,37m=白色

写第一个脚本

# vi hello.sh

#!/bin/Bash

#the first program

# author xingyubiji

echo -e "hello world,this is my first program"

脚本写完之后,要执行脚本有两种方法:

  • 赋予执行权限,直接运行

# chmod 755 hello.sh

# ./hello.sh

  • 通过bash调用执行脚本

bash hello.sh


分享到:


相關文章: