Shell基础

作者: 文刀雨 | 来源:发表于2019-05-17 22:32 被阅读0次

Shell是什么

Shell 是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序, 用户可以用Shell来启动,挂起,停止甚至是编写一些程序、
Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强。Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。

Shell的分类

Bourne Shell:从1979起Unix就开始使用Bourne Shell,Bourne Shell的主文件名为sh。
C Shell: C Shell 主要在BSD版的Unix系统中使用,其语法和C语言相类似而得名
Shell的两种主要语法类型有Bourne和C,这两种语法彼此不兼容。Bourne家族主要包括sh,ksh,Bash(linux标准Shell),psh,zsh;
C家族主要包括csh,tcsh

echo $SHELL 查看当前Shell语法
Bash:Bash与sh兼容,现在使用的Linux就是使用Bash作为用户的基本Shell

Linux支持的Shell

/etc/shells 查看这个文件

脚本执行方式

  1. echo 输出命令
    echo[选项][输出内容]
    选项:
    -e :支持反斜线控制的字符转换


    image.png
image.png
  1. 编写脚本
    shell 脚本需要在第一行写上
    #!/bin/bash
  2. 脚本执行
  • 赋予执行权限,chmod 755 hello.sh
  • 直接运行 ./hello.sh
    通过Bash调用执行脚本(不用赋予权限)
    bash hello.sh

Bash 的基本功能

  • 命令别名与快捷键
    alias 查看系统中所有的命令别名
    alias 别名 = '原命令' 设定命令别名
    vi ~/.bashrc 写入环境变量配置文件永久生效
    unalias 别名 删除别名
    命令生效顺序
    第一顺位执行用绝度路径或相对路径的命令
    第二顺位执行别名
    第三顺位执行Bash的内部命令
    第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令

    image.png
  • 历史命令
    history [选项][历史命令保存文件]
    选项 :-c 清空历史命令
    -w :把缓存中的历史命令写入历史命令保存文件~/.bash_history
    历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile 中进行修改 HISTSIZE=1000
    历史命令的调用
    使用上,下箭头调用以前的历史命令
    使用!ni重复执行第n条历史命令
    使用!!重复执行上一条命令
    😄使用!字串 重复执行最后一条以该字段开头的命令😄

  • 输出重定向


    image.png
    image.png
    image.png

    输入重定向
    wc [选项][文件名]
    选项: -c 统计字节数
    -w统计单词数
    -l统计行数

  • 多命令顺序执行


    image.png
    image.png
  • Shell中特殊符号


    image.png
    image.png

相关文章

网友评论

    本文标题:Shell基础

    本文链接:https://www.haomeiwen.com/subject/sslaaqtx.html