zoukankan      html  css  js  c++  java
  • shell 1基础

    1. shell简介

    shell是一个用C语言编写的程序,是用户使用Linux的桥梁。shell既是一种命令语言,又是一种程序设计语言。 shell脚本(shell script),是一种为shell编写的脚本程序。

    2. shell环境

    * Bourne Shell(/usr/bin/sh 或/bin/sh)是unix最初使用的shell,而且在每种unix上都可以使用 * Bourne Again Shell(/bin/bash)LinuxOS默认的,他是Bourne Shell的扩展。于Bourne Shell完全兼容,并且在Bourne Shell的基础上增加了很多特性。可以提供命令补全,命令编辑和命令历史等功能。它还包含了很多 C Shell 和 Korn Shell 中的优点,有灵活和强大的编辑接口,同时又很友好的用户界面。 * C Shell(/usr/bin/csh) * K Shell(/usr/bin/ksh) * Shell for Root(/sbin/sh)

    3. 第一个shell脚本

    3.1 编写脚本

    #!/usr/bin/bash  #告诉系统使用那种shell来执行脚本。
    echo "Hello World!"    #出echo用于向窗口输出文本 结果:Hello World!
    

    3.2 执行shell脚本

    3.2.1直接执行,不需给予权限

    sh test.sh
    source test.sh
    

    3.2.2 ./需要给予可执行权限

    chmod +x  ./test.sh  #需要赋予可执行权限
    ./test.sh  #使用./ 执行脚本
    

    4 其他

    4.1 bash是一个进程

    bash下还可以再重新启动一个shell,这个shell是sub shell,原shell会复制自身给它。 在sub shell中定义的变量,会随着sub shell的消亡而消失 * () 子shell中运行 (a=hello;echo $a) |echo $a #shell echo $a * {} 当前shell中执行{ a=world;echo $a; } # world * $$ 当前脚本执行的pid * & 后台执行 * $! 运行在后台的最后一个作业的PID(进程ID)
    #!/bin/bash
    (a="testhome";echo $a)    #testhome
    echo $a    #子shell中定义的变量消失
    { a=world;echo $a; }    #world
    echo $a    #world 当前shell的变量依然有效
    

    4.2 通配符

    bash可以自动扩展特定的关键词

    echo *     #打印当前目录下的文件
    echo ????    #匹配特定字符个数的文件
    echo "*????"    #输出字符串,避免被匹配
    
  • 相关阅读:
    用GDB调试程序(一)
    vim添加删除多行注释
    python binary lib on win/各种python库的二进制包
    python使用libssh2连接linux
    python xpath
    splinter python浏览器自动化操作,模拟浏览器的行为
    pytesser图片文本识别
    python验证码识别
    Python 之 使用 PIL 库做图像处理
    Connection reset by peer问题分析
  • 原文地址:https://www.cnblogs.com/csj2018/p/9534871.html
Copyright © 2011-2022 走看看