本文是Linux Shell脚本系列教程的第(二)篇,更多shell教程请看:Linux Shell脚本系列教程

通过上一篇教程的学习,相信大家已经能够对shell建立起一个大体的印象了,接下来,我们通过一个最简单的脚本来继续深入对shell的学习。

新建shell脚本

新建一个文件,扩展名为sh(sh代表shell),或者其他任意名字,其实扩展名并不影响脚本执行,见名知意就好,这里用sh是为了便于分辨。

在你新建的文件中输入以下内容:

#!/bin/bash
echo "Hello World !"

“#!” 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一个Shell来执行。

echo命令用于向窗口输出文本。

运行shell脚本

运行Shell脚本有两种方法。

1)作为可执行程序

将上面的代码保存为test.sh,并 cd 到相应目录:

chmod +x ./test.sh  #使脚本具有执行权限
./test.sh  #执行脚本

注意,一定要写成./test.sh,而不是test.sh。

运行其它二进制的程序也 一样,直接写test.sh,linux系统会去PATH里寻找有没有叫test.sh的,而只有/bin, /sbin, /usr/bin,/usr/sbin等在PATH里,你的当前目录通常不在PATH里,所以写成test.sh是会找不到命令的,要用. /test.sh告诉系统说,就在当前目录找。

通过这种方式运行bash脚本,第一行一定要写对,好让系统查找到正确的解释器。

2)作为解释器参数

这种运行方式是,直接运行解释器,其参数就是shell脚本的文件名,如:

/bin/sh test.sh
/bin/php test.php

这种方式运行的脚本,不需要在第一行指定解释器信息,写了也没用。

再看一个例子。下面的脚本使用 read 命令从 stdin 获取输入并赋值给 PERSON 变量,最后在 stdout 上输出:

#!/bin/bash
# Author : linuxdaxue.com
echo "What is your name?"
read PERSON
echo "Hello, $PERSON"

运行脚本:

chmod +x ./test.sh
$./test.sh
What is your name?
linuxdaxue
Hello, linuxdaxue
$

总结

看到这里同学们是不是对shell脚本有了更深刻的理解呢?那就赶紧行动起来吧,按照上面的方法自己实践一遍,如果有不懂的地方及时发现,及时解决,这样才能真正的将知识变为自己的能力。

原文:Linux Shell系列教程之(二)第一个Shell脚本

本文转自:Linux Shell脚本入门教程系列之(二)第一个shell脚本

Linux Shell脚本入门教程系列之(二)第一个shell脚本相关推荐

  1. Linux Shell脚本入门教程系列之(十三)Shell分支语句case … esac教程

    本文是Linux Shell脚本系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 上一篇之 后,分支语句非常实用,基本上高级语言都支持分支语句(pytho ...

  2. Linux Shell脚本入门教程系列之(九)Shell判断 if else 用法

    本文是Linux Shell脚本系列教程的第(九)篇,更多shell教程请看:Linux Shell脚本系列教程 判断语句是每个语言都必不可少的关键语法,Shell命令当然也不例外.继上一篇之后,今天 ...

  3. Linux Shell脚本入门教程系列之(八)Shell printf命令详解

    本文是Linux Shell脚本系列教程的第(八)篇,更多shell教程请看:Linux Shell脚本系列教程 在上一篇:Linux Shell系列教程之(七)Shell输出这篇文章中,已经对She ...

  4. Linux Shell脚本入门教程系列之(六)Shell数组

    本文是Linux Shell脚本系列教程的第(六)篇,更多shell教程请看:Linux Shell脚本系列教程 Shell在编程方面非常强大,其数组功能也非常的完善,继上一篇之后,今天就为大家介绍下 ...

  5. Linux Shell脚本入门教程系列之(十一)Shell while循环

    本文是Linux Shell脚本系列教程的第(十一)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 在上一篇Linux Shell系列教程之(十)Shell for循环中, ...

  6. Linux Shell脚本入门教程系列之(十)Shell for循环

    本文是Linux Shell脚本系列教程的第(十)篇,更多Linux Shell教程请看:Linux Shell脚本系列教程 基本任何语言都有自己的循环语句,Shell当然也不例外,继上一篇之后,今天 ...

  7. Linux Shell脚本入门教程系列之(七)Shell输出

    本文是Linux Shell脚本系列教程的第(七)篇,更多shell教程请看:Linux Shell脚本系列教程 与其他语言一样,Shell中也有输出操作,而且在实际应用中也是非常重要的,继上一篇之后 ...

  8. Linux Shell脚本入门教程系列之(五)Shell字符串

    本文是Linux Shell脚本系列教程的第(五)篇,更多shell教程请看:Linux Shell脚本系列教程 字符串是Shell编程中最常用最有用的数据类型,继上一篇之后,今天,Linux大学网就 ...

  9. Linux Shell脚本入门教程系列之(四)Shell注释

    本文是Linux Shell脚本系列教程的第(四)篇,更多shell教程请看:Linux Shell脚本系列教程 与许多的编程语言一样,Shell中也有注释符号,继上一篇之后,今天就为大家来介绍下Sh ...

  10. Linux Shell脚本入门教程系列之(三)Shell变量

    本文是Linux Shell脚本系列教程的第(三)篇,更多shell教程请看:Linux Shell脚本系列教程 Shell作为一种高级的脚本类语言,也是支持自定义变量的.继上一篇之后,今天就为大家介 ...

最新文章

  1. Windows魔法堂:解决“由于启动计算机时出现页面文件配置问题.......”
  2. 使用java程序对新浪微博的内容进行语义分析
  3. zabbix 时间错误_一键部署Zabbix+Grafana+Icinga+SmokePing监控系统
  4. Linux/CentOS下安装Apache/SVN/Subversion图文详解教程
  5. P3193 [HNOI2008]GT考试
  6. 毕设日志——增加多尺度对应的不一样scale的RPN网络
  7. java for循环 等待_java-等待在循环内按下键
  8. python在财务中的应用-利用python实现周期财务统计可视化
  9. MySql 语法(完整版)
  10. Eclipse中SVN上传项目
  11. 【Pix4d精品教程】Pix4DMapper 4.4.10/4.4.12/4.5.6经典手把手图文安装教程(附安装包下载)
  12. 微微一笑很倾城(2)
  13. 淘宝直通车展现位置和人群精准如何运用
  14. 2022年Java应届生面试之Spring框架基础知识
  15. 调研:暴恐识别(图像识别)by_xxzcc
  16. 医院信息化建设(1)---惠民服务
  17. Linux-read函数
  18. 小程序---365笔记第11天---微信小程序登录接入
  19. 开源之夏 2022 来袭,欢迎报名 RadonDB 社区项目
  20. 图文一键生成短视频工具

热门文章

  1. 暑期训练日志----2018.8.26
  2. 山区建小学(信息学奥赛一本通-T1197)
  3. 4.4.5 清除变量内容
  4. Java环境创建_Java环境的搭建
  5. 查看openssh版本_OpenSSH命令注入漏洞复现(CVE202015778)
  6. python爬虫实际应用_如何使用python爬虫论坛?
  7. SVM与感知机的异同点
  8. MATLAB基本用法介绍
  9. stylegan-encoder代码执行步骤和解释
  10. MUI 列表组件:文字居左中右(排版) - 代码篇