• GNOME编辑器--gedit 构建基本脚本


    gedit factorial.sh myprog.c

    当你启动gedit外带多个文件时,它会将所有的文件都加载到不同的缓冲区并在主编辑器窗口中按标签化的窗口来显示每个文件。

    shell脚本的关键在于输入多个命令并处理每个命令的结果,即使有可能将一个命令的结果传给另一个命令。shell允许你只用一步就将多个命令串连起来使用。

    如:date;who

    你可以将命令合成一个简单的文本文件,在需要运行这些命令时,可以简单运行这个文本文件。

    创建shell脚本文件

    在创建shell脚本文件时,必须在文件的第一行指定要使用的shell。格式:

    #!/bin/bash

      在通常的shell脚本的行里,井号(#)用作注释行。shell脚本中的注释行是不被shell执行的。然后,shell脚本文件的第一行是个特例,井号后接感叹号是告诉shell用哪个shell来运行脚本。

      脚本中的内容,如有需要,可用分号来在一行输入你要用的两个命令。但在shell脚本中,你可以在不同行里列出命令。shell会根据命令在文件中出现的顺序来处理命令。

    执行脚本,出现:bash:test:command not found问题

    因为shell会通过PATH环境变量来查找命令。快速第查看PATH环境变量:

    echo $PATH

    PATH 环境变量被设成只在一组目录中查找命令。要让shell找到test脚本,可以:

    (1)将shell脚本文件所处的目录添加到PATH环境变量中;

    (2)在提示符中用绝对或者相对文件路径来引用shell脚本文件。

    切记:要引用当前目录下的文件,你要在shell中使用单点操作符:./test

    再次执行脚本时,如出现bash:./test:permission denied

    查看文件属性,ls -l test

    修改文件属性:chmod +777 test

    显示消息

    有时可以通过echo命令来添加自己的文本消息,来告诉本用户脚本正在做什么。

    echo This is a test

    this is a test

    注意:默认情况下,你不需要使用引号将要显示的文本字符串圈起来。但字符串中出现引号的话可能就比较麻烦:

    echo let‘s see if this’ll work

    lets see if thisll work

    echo命令可用单引号或双引号来将文本字符串圈起来。如果你在字符串中用到了它们,你需要在文本使用其中一种引号,而用另外一种来将字符串圈起来。

    echo “This is a test to see if you're paying attention”

    This is a test to see if you're paying attention

    如果你想在同一行显示一个文本字符串作为命令输出。你可以用echo语句的-n参数。只要将第一个echo语句改成:

    echo -n “The time and date are: ”

    可以在环境变量名称之前加个美元符($)来在脚本中使用这些环境变量

    echo “USER info for userid: $USER”

     注意,echo命令中的环境变量会在脚本运行时替换成当前值。

    $echo "The cost of the item is $15"

    The cost of the item is 5

    因为脚本会默认$1为一个变量。再显示5.

    要显示美元符号,必须在他前面添加一个反斜线。

    $echo "The cost of the item is $15"

    The cost of the item is $15

    ${var}:变量名两侧额外的花括号通常用来帮助识别美元符号的变量名

  • 相关阅读:
    抽象方法真的不能实例化么?
    java中静态属性和和静态方法的继承问题 以及多态的实质
    Java中数据类型转换问题
    Java中反射机制和Class.forName、实例对象.class(属性)、实例对象getClass()的区别
    java的static块执行时机
    代理服务器:正向代理和反向代理
    阿里巴巴的一些面试题(无答案)
    pl/sql实现打印九九乘法表
    java中的标记接口(标签接口)
    spring boot中log4j冲突问题和解决办法
  • 原文地址:https://www.cnblogs.com/Caden-liu8888/p/6014550.html
Copyright © 2020-2023  润新知