关于shell脚本的执行

最近比较迷恋shell,对其十分感兴趣,今天主要说一下我一个初学者在执行shell脚本的时候遇到的问题:

同所有语言一样,linux语言的学习也是从hellworld开始的,所以,现在我编写了一个HelloWorld的脚本如下:

那么重点来了,怎么执行呢?现在普及一下shell脚本执行的几种方式:

1、直接用bash 脚本名 执行脚本,如下:

2、使用"." 来执行脚本,如下:

3、直接"./" 脚本名来执行脚本,如下:

这个时候报错了,请注意看提示信息,提示权限不够,所以使用“./”来执行脚本的时候一定要记得增加脚本的执行权限,如下:

这时脚本就可以直接被执行了,我们再来操作一遍:

总结:

1、这三种方式需要在脚本的创建目录下执行,否则会找不到文件

2、创建完脚本之后,不给脚本增加执行权限,可以使用bash,或者“.”命令来执行脚本,否则需要先给脚本增加可执行权限才能执行脚本

时间: 2024-10-05 13:15:09

关于shell脚本的执行的相关文章

编写shell脚本和执行

这次的学习内容: 认识shell,如何编写shell脚本和执行Shell 其实就是一个解释执行命令的程序,所谓shell编程其实就是用一定的语法将各种基本的命令组合起来,让shell程序去解释执行.如果对windows的dos有了解,可以这样理解,其实shell脚本文件和.bat批处理文件差不多.然而linux下的shell比起windows的dos强大很多,呵呵.为了安全起见,创建一个普通的账号进行学习]# useradd cnetsa]# passwd cnetsa然后使用 cnetsa 这

shell脚本中执行另一个shell脚本

分类: 可以在一个shell脚本中执行另一个shell脚本(或非可执行文件,主要用于取得一些变量的值),方法是: . 文件名(包括路径) 或 变量=文件名(包括路径) . $变量 注意,圆点后面有个空格. 这样,在本shell脚本的后面部分就可以引用其他文件中声明的一些变量. 当再用这些变量去执行第3个脚本时,我不知是怎么回事,总是有些莫名其妙的错误,发现只有这个文件中不存在空行才行,哪怕只有一个注释符,都不会出错,就是不能有空行. 其实我想应该也不是这个问题,而是windows和linux处理

Shell脚本中执行sql语句操作

这篇文章主要介绍了Shell脚本中执行sql语句操作mysql的5种方法,本文讲解了将SQL语句直接嵌入到shell脚本文件中.命令行调用单独的SQL文件.使用管道符调用SQL文件等方法,需要的朋友可以参考下 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到sh

shell脚本循环执行mysql语句

参考资料:Shell脚本中执行mysql语句 需求:数据库里有张数据表存储的是用户对电影的评价(user_id movie_id rating time),但是我现在要每部电影的总评分. 解决方法: 1).写个sql文件test.sql:use movie_recommendation;select distinct movie_id from T_user_movie_rating_map; 2).在终端输入mysql -uroot -p123456 -e < test.sql > movi

[Shell]Shell脚本的执行方式

---------------------------------------------------------------------------------------------------------- 能完成大部分输出任务的命令:echo echo helloworld; #正确 echo "hello world";   #正确 echo "hello world !"; #中间有空格须加引号,且!在Linux中有特殊含义,不能加双引号,而用单引号(注

Shell脚本中执行mysql的几种方式(转)

Shell脚本中执行mysql的几种方式(转) 对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本.本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考.对于脚本输出的结果美化,需要进一步完善和调整.以下为具体的示例及其方法. 1.将SQL语句直接嵌入到shell脚本文件中 复制代码 代码如下: --演示环境   [[email protected] ~]# more /etc/issue   CentOS rele

shell脚本中执行mysql语句的方法

方法一:使用文件标签EOF重定向的方法的: #!/bin/bash  user=root  pass=123456  db=mysql  tablename=user  mysql -s --line-numbers -f -u$user -p$pass -D $db --delimiter=";" -E<  --SELECT host,user from $tablename order by 1;  SELECT host,user from $tablename order

shell脚本定时执行php程序

首先写好你需要执行的php程序 我这里呢就是一个PDO链接 写入一个时间 然后我们写一个shell脚本来执行这个php程序 就单纯的一个执行php程序的shell就写好了,然后咱们运行一下 好,显示插入成功,证明这个shell是可以执行的. 然后咱们写一个crontab的定时任务 然后介绍一下五个星星分别表示什么: minute - 分钟 ,从0到59之间的任何整数 hour - 小时, 从0到23之间的任何整数 day - 天, 从1到31之间的任何整数(如果指定了月份,必须是该月份的有效日期

shell脚本的执行方法

1.[[email protected] ~]# echo 'userdir=pwd' >sun.sh[[email protected] ~]# cat sun.shuserdir=pwd[[email protected] ~]# bash sun.sh[[email protected] ~]# sh sun.sh[[email protected] ~]# echo $userdir [[email protected] ~]# . sun.sh[[email protected] ~]

Shell脚本的执行方式详解

当Shell脚本运行时,它会先查找系统环境变量ENV,该变量指定了环境文件(加载顺序通常是/etc/profile.~/.bash_profile.~/.bashrc./etc/bashrc等),在加载了上述环境变量文件后,Shell就开始执行Shell脚本中的内容. Shell脚本是从上至下.从左至右依次执行每一行的命令及语句的,即执行完了一个命令后再执行下一个,如果在Shell脚本中遇到子脚本(即脚本嵌套)时,就会先执行子脚本的内容,完成后再返回父脚本继续执行父脚本内后续的命令及语句. 通常