zoukankan      html  css  js  c++  java
  • shell概述与echo命令

    一、Shell概述

    1、什么是shell?


    由此可见shell是用户与系统进行交互的接口,通过执行各种命令来完成时间处理与调度。

    2、shell分类
    Shell类别                易学性        可移植性      编辑性      快捷性 
    Bourne Shell (sh)          容易          好          较差        较差 
    Korn Shell (ksh)           较难          较好         好         较好 
    Bourne Again (Bash)         难           较好         好          好 
    POSIX Shell (psh)          较难          好          好         较好 
    C Shell (csh)               较难         差          较好        较好 
    TC Shell (tcsh)              难          差           好          好
    
    Shell 的两种主要语法类型有 Bourne 和 C,这两种语法彼此不兼容。

    Bourne 家族主要包括 sh、 ksh、Bash、psh、zsh。
    C 家族主要包括:csh、tcsh (Bash 和 zsh 在不同程度上支持 csh 的语法)。
    我们可以通过/etc/shells 文件来查询 Linux 支持的 Shell。

    [root@centos ~]# cat /etc/shells 
    /bin/sh
    /bin/bash
    /sbin/nologin
    /bin/dash
    /bin/tcsh
    /bin/csh
    

    二、echo命令及shell脚本执行

    1、echo 输出特殊转义字符
    echo [选项] [输出内容] 选项:  
    -e: 支持反斜线控制的字符转换
        \ 输出本身 
        a 输出警告音 
         退格键,也就是向左删除键 
        c 取消输出行末的换行符
        e ESCAPE 键 
        f 换页符 
        
     换行符 
        
     回车键 
        	 制表符,也就是 Tab 键 
        v 垂直制表符 
        nnn 按照八进制 ASCII 码表输出字符。其中 0 为数字零,nnn 是三位八进制数 
        xhh 按照十六进制 ASCII 码表输出字符。其中 hh 是两位十六进制数
    -n: 取消输出后行末的换行符号(就是内容输出后不换行)
    

    示例

    [root@centos ~]# echo -e "heihei 
    haha a" #先输出heihei,换行之后再输出一个 haha 最后输出警示音
    heihei 
    haha 
    
    2、echo输出颜色
    30m=黑色,31m=红色, 32m=绿色,33m=黄色,34m=蓝色,35m=洋红,36m=青色,37m=白色
    1)字体颜色
    echo -e "e[1;32m 绿色字体 e[0m"
    
    2)背景颜色
    echo -e "e[1;42m 绿色背景 e[0m"
    
    3)闪烁
    echo -e "e[1;5m e[1;32m 绿色闪烁字体 e[0m e[0m " 
    
    3、执行shell脚本

    执行shell脚本有两种方式,下面是一个简单的shell脚本:

    #!/bin/bash   #直接执行时,告诉系统应该用哪一个解释器来执行。
    echo -e "e[1;5m e[1;32m 你好!! e[0m "e[0m
    
    • 第一种执行方式,直接执行
      添加执行权限,使用相对或者绝对路径来执行
    [root@centos ~]# chmod a+x test.sh 
    [root@centos ~]# . test.sh 
      你好!
    [root@centos ~]# /root/test.sh 
      你好! 
    
    • 使用解释器 + 脚本 方式执行,不需要添加执行权限。
    [root@centos ~]# bash test.sh 
      你好!
    
  • 相关阅读:
    面向对象之绑定方法与非绑定方法
    Django-admin源码解析
    单例模式
    Django-admin管理工具
    Django-CBV
    叠加装饰器,三元表达,生成,调用,递归
    迭代器与生成器
    有参装饰器
    储备知识与装饰器
    文件修改
  • 原文地址:https://www.cnblogs.com/hjnzs/p/12078687.html
Copyright © 2011-2022 走看看