shell script执行的几种方式】的更多相关文章

编写一个shell脚本test.sh,内容如下 a='测试执行方式' echo $a 方式1 使用路径的方式执行 chmod a+x test.sh ./test.sh 执行结果如下 当脚本执行之后,再执行echo $a的时候,不会得到测试执行方式这个值.因为在运行脚本的时候,是开了一个shell的子进程,脚本执行结束之后,这个子进程也结束了.再回到父进程执行echo $a是得不到任何值的. 方式2 使用sh test.sh执行脚本 执行结果如下: 此种执行方式同方式1 方式3 使用source…
<script>: 脚本的获取和执行是同步的.此过程中页面被阻塞,停止解析. <script defer = "defer">:脚本的获取是异步的,执行是同步的.脚本加载不阻塞页面的解析,脚本在获取完后并不立即执行,而是等到DOMready之后才开始执行. <script async = "async">: 脚本的获取是异步的,执行是同步的.但是和<script defer = "defer">的不…
(1)  bash script_name 或 sh script_name    推荐使用此方法,script_name 不需要执行权限亦可执行.   (2) path/script_name 或 ./script_name    绝对路径或当前路径下执行此脚本,需要要执行权限.   (3) source script_name 或  . script_name    此种方法在执行过的脚本结束后脚本中的变量(包括函数)值在当前shell中依然存在.…
延时执行的三种方式:performSelectorXXX方法.GCD中延时函数.创建定时器   第一种方式:NSObject分类当中的方法,延迟一段时间调用某一个方法 @interface NSObject (NSDelayedPerforming) ※延时调用在当前线程使用特定模式的方法(如果数组没有数据或者参数为nil,则不会调用selector中方法) - (void)performSelector:(SEL)aSelector withObject:(id)anArgument afte…
2016-11-17 直接输入脚本名执行 ./script #!/bin/bash# /root/shell/001 # 2016-11-17 test for script running name="ahau-2015" echo ${name} 此种执行方式下,其实script是在子进程的bash内进行的. 我们需要知道:当子进程执行完成后,子进程内的各项变量或操作都不会传回到父进程中,这就是说,我在子进程里定义的变量等在父进程里是不起作用的,即使是在script里声明了一个环境…
本文列举了四种延时执行某函数的方法及其一些区别.假如延时1秒时间执行下面的方法. - (void)delayMethod { NSLog(@"execute"); } 1.performSelector方法 [self performSelector:@selector(delayMethod) withObject:nil afterDelay:1.0f]; 此方式要求必须在主线程中执行,否则无效.是一种非阻塞的执行方式,暂时未找到取消执行的方法. 2.定时器:NSTimer [NS…
本文列举了四种延时执行某函数的方法及其一些区别.假如延时1秒时间执行下面的方法. - (void)delayMethod { NSLog(@"execute"); } 1.performSelector方法 [self performSelector:@selector(delayMethod) withObject:nil afterDelay:1.0f]; 此方式要求必须在主线程中执行,否则无效.是一种非阻塞的执行方式,暂时未找到取消执行的方法. 2.定时器:NSTimer [NS…
1:使用jQuery的$(function){}; 2:使用jquery的$(document).ready(function(){});前两者本质上没有区别,第1种是第2种的简写方式.两个是document加载完成后就执行方法. 3:使用jQuery的$(window).load(function(){}); 4:使用window.onload = function(){} 第3种和第4种都是等到整个window加载完成执行方法体.两者也没有区别,只是一个使用dom对象,一个使用jQuery对…
常常在windows下编辑的文件远程传送到linux下的时候每行末尾都会出现^M.这将导致shell脚本执行错误,主要是由于dos下的编辑器和linux下的编辑器对文件末行的回车符处理不一致导致. 主要解决例如以下: (1)在VI编辑器中将^M删除: 将VI编辑器切换到命令模式下,输入 :%s/^M//g (注意^M 不是shift ^ +M 而是ctrl+v 加上ctrl+m)  s///g是shell的替换命令 此命令必须是手动打上,不可复制. (2)dos2unix 命令 dos2unix…
Method1. performSelector方法 Method2. NSTimer定时器 Method3. NSThread线程的sleep Method4. GCD 公用延迟执行方法 - (void)delayMethod{ NSLog(@"delayMethodEnd"); } Method1:performSelector [self performSelector:@selector(delayMethod) withObject:nil/*可传任意类型参数*/ after…