linux 下编写.sh文件,不间断执行某文件
一、使用背景
鉴于业务需求,需要编写一个脚本文件,用于不间断的获取一些信息。这里用shell脚本是最方面的,循环执行我们的请求方法即可。
二、shell脚本编写过程
(1)创建 test.sh文件
//使用touch命令创建文件
touch test.sh
(2)编写test.sh 文件
vim test.sh
//此时开始编写
i //进入编写模式//下面是.sh文件内容
#!/bin/bash
a="hello world"
echo $a
(3)保存之后执行test.sh
//在当前目录执行.sh文件
./test.sh
(4)报错:./test.sh Permission denied
这里报错的原因是因为我们没有执行.sh文件的权限,此时操作:
//chmod +x 文件名
chmod +x test.sh
//赋值之后重新执行
./test.sh
//这里会发现,输出了hello world
(5)大致语法讲解:
1 开头
程序必须以下面的行开始(必须方在文件的第一行):
#!/bin/sh
符号#!用来告诉系统它后面的参数是用来执行该文件的程序。在这个例子中我们使用/bin/sh来执行程序。
当编写脚本完成时,如果要执行该脚本,还必须使其可执行。
要使编写脚本可执行:
编译 chmod +x filename 这样才能用./filename 来运行
2 注释
在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。我们真诚地建议您在程序中使用注释。
如果您使用了注释,那么即使相当长的时间内没有使用该脚本,您也能在很短的时间内明白该脚本的作用及工作原理。
3 变量
在其他编程语言中您必须使用变量。在shell编程中,所有的变量都由字符串组成,并且您不需要对变量进行声明。
我这里只是最初步的编写shell脚本,具体的参考:
http://blog.sina.com.cn/s/blog_54f82cc201010hfz.html
二、按照我的业务需求,不间断请求某文件,执行该文件的内容
1、代码部分
#!/bin/sh
while true
docurl 执行某个接口的具体地址,例如:http://test.test.com
done
解释:
(1)固定开头部分
(2)while true 代表是恒成立的条件,属于条件判断句,这个恒成立,所以能让我们一直执行我们想执行的文件。这算是最简单的死循环
(3)do 代表执行
(4)代表执行结束
2、执行文件
(1)我们这里换一种执行方式
//sh + 你要执行的文件
sh filename
解释:sh 执行.sh文件,可以不必事先设定shell的执行权限,甚至都不用写shell文件中的第一行(指定bash路径)。因为sh是将hello.sh作为参数传给sh(bash)命令来执行的。这时不是hello.sh自己来执行,而是被人家调用执行,所以不要执行权限。
(2)其他执行方式
绝对路径执行法
//执行从绝对路径处执行
/home/pzsh/test.sh
OK,写一个死循环的shell脚本,然后执行。这样就能达到不间断执行某文件的目的。这里我的需求也解决了,顺便还学习了一下shell脚本。以后需要shell脚本的地方会更多,慢慢学习吧。
end
linux 下编写.sh文件,不间断执行某文件相关推荐
- linux怎么添加头文件目录下,linux下编写c++,include的那些头文件在什么地方?
炎炎设计 C/C++程序在linux下被编译和连接时,GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径.自己指定的路径就不说了,这里说明一下系统自动搜索的路 ...
- Linux下编写sh批处理文件
参考:http://blog.csdn.net/chongxin1/article/details/76072567 1.创建: touch test.sh如果a.sh不存在就可创建一个空的.sh文件 ...
- 在Linux下编写Daemon
在Linux下编写Daemon 转自:http://blog.163.com/prevBlogPerma.do?host=manyhappy163&srl=164476831201071811 ...
- 在Linux下编写Daemon(Linux启动流程2)
在Linux(以Redhat Linux Enterprise Edition 5.3为例)下,有时需要编写Service.Service也是程序,一般随系统启动用户不干预就不退出的程序,可以称为Se ...
- spdlog linux编译出错,Linux下编写Makefile引入第三方库
Linux下编写Makefile引入第三方库 前言:一直在使用CmakaList 生成Makefile文件,其实很少去写Makefile,但是最近帮朋友处理了一个Makefile引入第三方库的问题,就 ...
- Linux下编写贪吃蛇游戏
Linux下编写贪吃蛇游戏 文章目录 Linux下编写贪吃蛇游戏 前言 一.贪吃蛇代码 二.运行贪吃蛇代码 前言 本程序需要ncurses库,ubuntu下安装ncurses可以执行下面命令: sud ...
- linux应用程序的编写实验原理,操作系统实验 1.在linux下编写一个应用程序 联合开发网 - pudn.com...
操作系统实验 所属分类:Linux/Unix编程 开发工具:C/C++ 文件大小:1KB 下载次数:3 上传日期:2019-05-01 20:34:21 上 传 者:烟雨南风起 说明: 1.在lin ...
- 在linux下编写动态链接库的步骤: g++ -lc
引用自http://blog.csdn.net/lwhsyit/article/details/2828306 类似Windows系统中的动态链接库,Linux中也有相应的共享库用以支持代码的复用.W ...
- 专业的LaTeX: 在Linux下编写高质量的文档
专业的LaTeX: 在Linux下编写高质量的文档 Linux下的OpenOffice.KWord等字处理软件虽然在功能上与Microsoft Word类似,但目前在易用性和可用性方面仍然存在许多不足 ...
最新文章
- FPGA 内部双口块RAM 读写实现
- 安装Oracle 10g sys,system 密码忘记设置解决办法
- JavaScript创建Map对象(转)
- 将JPG文件作为EXE执行
- 让你受用一辈子的181句话
- 【Python CheckiO 题解】First Word (simplified)
- 组态王调用mysql存储过程_组态王与数据库通讯
- codeforces#237_div2_B Marathon
- 一个意想不到的CDO.Message 错误
- bfs和dfs:poj2386和leetcode130
- 求一个任意实数的算术平方根的算法设计_感恩!面试必刷100道算法题
- 《下学梯航》(全文)
- C语言利用switch的简单计算器
- 两金压降两金指什么_什么是两金压降
- 电脑pin码忘了登录不进系统_做好这些优化,电脑5秒开机不是梦
- docker安装后,并没有ln到/etc/systemd/system/multi-user.target.wants
- seo文章伪原创技巧(你不知道的伪原创文章处理技巧)
- 程序设计学习(c++)(课堂学习2)
- Python 800 道习题 (°ー°〃) 测试你学废了嘛
- 文件处理与垃圾回收机制
热门文章
- paddle_ocr1.0入门踩坑
- mxnet.gluon 加载预训练
- input val >=zero input_val <=one
- c++ argmax
- twisted Unhandled error in Deferred scrapy
- 论numpy中matrix 和 array的区别
- spring中ClassPathXmlApplication和FileSystemXmlApplicationContext使用区别
- ORA-01658: 无法为表空间space中的段创建 INITIAL
- 青龙羊毛——杀猪盘(搬砖,非原创)
- java 窗口锁定_使用Java锁定屏幕