zoukankan      html  css  js  c++  java
  • shell 脚本执行和基础知识

    当我们给予shell脚本执行的权限后,就可以测试程序了,假设shell脚本文件为hello.sh
    放在/root目录下。下面介绍几种在终端执行shell脚本的方法:
    1.切换到shell脚本所在的目录,执行:

    [root@localhost home]# cd /root/
    [root@localhost ~]# ./hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!



    2.以绝对路径的方式执行:

    [root@localhost ~]# /root/hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!

    3.直接用bash或sh执行:

    [root@localhost ~]# bash hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!
    [root@localhost ~]# sh hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!

    注意:用以上三种方法执行shell脚本,现行的shell会开启一个子shell环境,去执行shell脚本
    也可以让shell脚本在现行的shell中执行:
    4.现行的shell中执行

    [root@localhost ~]# . /hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!
    [root@localhost ~]# source hello.sh
    hello guys!
    welcome to my Blog:linuxboy.org!
    [root@localhost ~]#

    2. 类似方法一,只不过它是以脚本文件名为参数的。

    sh bash.sh

    3. 将脚本文件设置成执行文件,直接在提示符下调用。

    chmod u+x test.sh

    ./test.sh 

    shell基础知识:http://www.cnblogs.com/xuejie/archive/2013/01/31/2886552.html

    脚本filename:

    #!/bin/sh 
    echo *.jpg

    chmod +x filename

    ./filename 来执行您的脚本。

    这将打印出"mail.jpg tux.jpg"的结果。

    引号 (单引号和双引号) 将防止这种通配符扩展:

    #!/bin/sh
    echo "*.jpg"
    echo '*.jpg'

    这将打印"*.jpg" 两次。

    单引号更严格一些。它可以防止任何变量扩展。双引号可以防止通配符扩展但允许变量扩展。

    #!/bin/sh
    echo $SHELL
    echo "$SHELL"
    echo '$SHELL'

    运行结果为:

    /bin/bash

    /bin/bash

    $SHELL

  • 相关阅读:
    segnet 编译与测试
    ubuntu(已经配置了python2+opencv)简易配置python3的opencv:
    OCR光学字符识别--STN-OCR 测试
    阿里云图形界面
    win10+UEFI下u盘安装ubuntu16.04
    ubuntu16.04+cuda8.0+cudnn5.0+caffe
    Angular 组件通讯、生命周期钩子 小结
    Angular 路由⑦要素
    关于克隆gitlab项目的一些 问题列表
    RxJS学习笔记
  • 原文地址:https://www.cnblogs.com/csxf/p/3852984.html
Copyright © 2011-2022 走看看