Linux 连续执行多条命令的方法(推荐)
每条命令使用";"隔开,则无论前边的命令执行成功与否都会继续执行下一条命令
这里,故意将第二条命令中的echo多写了一个o,命令执行出错,但并不影响后续命令的执行
可以这么想,如果用分号来间隔命令,就相当于将命令分隔在了不同的行,无论前一行的命令成功或失败,都不影响下一行命令的执行。
$ echo 1; echoo 2; echo 3; echo 4
1
-bash: echoo: command not found
3
4
若命令间使用"&&"隔开,则只有前边的命令执行成功了再会继续执行后边的命令
这里,故意将第二条命令中的echo多写了一个o,命令执行出错,echo 3便没有执行,因此echo4也没执行
$ echo 1 && echoo 2 && echo 3 && echo 4
1
-bash: echoo: command not found
若命令间使用"||"隔开,则只有前边的命令执行失败了再回继续执行后边的命令
这里echo 1执行成功则没有继续执行后边的echo 2,继而没有执行echo 3,echo 4
echo 1 || echo 2 || echo 3 || echo 4
1
这里echoo 1执行失败,因此开始执行echo 2,执行成功,因而后边的echo 3, echo4都没执行
echoo 1 || echo 2 || echo 3 || echo 4
-bash: echoo: command not found
2
根据以上规则分析几个比较特殊的例子,也即混合了集中分隔符的例子
echo 1执行成功了,紧接着后边有两个"||"因此echo 2, echo 3都没执行,后边遇到了&&,而这之前的命令组合被认为是执行成功的,因此echo 4得以执行
$ echo 1 || echo 2 || echo 3 && echo 4
1
4
echo 1执行成功了,继而执行echoo 2,执行失败,因此 echo 3不被执行,后边遇到了"||",而知之前的命令组合被认为是执行失败的,因此echo 4得以执行
$ echo 1 && echoo 2 && echo 3 || echo 4
1
-bash: echoo: command not found
4
echo 1执行成功了,继而执行echoo 2,执行失败,因此 echo 3不被执行,后边遇到了";",相当于把后边的命令放到了新行,这样的话无论如何后边的命令都会执行,因此echo 4得以执行
$ echo 1 && echoo 2 && echo 3 ; echo 4
1
-bash: echoo: command not found
4
echoo 1执行失败,后边为"||"因此echo 2得以执行,echo 2执行成功,紧接着后边有两个"||"因此echo 3,echo 4没有执行,后边遇到了&&,而之前的命令组合被认为是执行成功的,因此echoo5得以执行,执行发生错误,因此echo 6没有被执行,但后边是";",所以无论如何echo 7都会被执行
$ echoo 1 || echo 2 || echo 3 || echo 4 && echoo 5 && echo 6 ; echo 7
-bash: echoo: command not found
2
-bash: echoo: command not found
7
以上这篇Linux 连续执行多条命令的方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Linux在应用层读写寄存器的方法及实现实例
Linux在应用层读写寄存器的方法 可以通过操作/dev/mem设备文件,以及mmap函数,将寄存器的地址映射到用户空间,直接在应用层对寄存器进行操作,示例如下: #include <stdio.h> #include <stdlib.h> #include <time.h> #include <unistd.h> #include <fcntl.h> #include <unistd.h> #include <sys/mman
-
linux下用cron定时执行任务的方法
名称 : crontab 使用权限 : 所有使用者 使用方式 : crontab file [-u user]-用指定的文件替代目前的crontab. crontab-[-u user]-用标准输入替代目前的crontab. crontab-1[user]-列出用户目前的crontab. crontab-e[user]-编辑用户目前的crontab. crontab-d[user]-删除用户目前的crontab. crontab-c dir- 指定crontab的目录. crontab文件的格式
-
Linux tar 压缩打包命令使用方法第1/2页
tar命令 [root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 -. 参数: -c :建立一个压缩文件的参数指令(create 的意思): -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在! 因为不可能同时压缩与解压缩. -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩
-
虚拟机中使用linux系启用文件共享之后的文件存在的位置方法
一.使用共享文件夹传输数据 在自己建立的win7系统中的共享文件夹中存放一些文件,然后在linux系统中访问,其中Linux中的访问路径为:/mnt/hgfs/自己建立的文件夹名称 比如我在win7上建立的共享文件夹名称为shareFolder,则我的操作如下: [root@master shareFolder]# cd /mnt/hgfs/shareFolder/ 在这个目录下就能看win7上的文件,也可以从linux中拷贝文件到这个目录,则在win7上也能看见./p> 以上这篇虚拟机中使用l
-
linux正确重启MySQL的方法
由于是从源码包安装的Mysql,所以系统中是没有红帽常用的servcie mysqld restart这个脚本 只好手工重启 有人建议Killall mysql.这种野蛮的方法其实是不行的,强制终止的话,如果造成表损坏,损失是巨大的. 这里推荐安全的重启方法 $mysql_dir/bin/mysqladmin -u root -p shutdown $mysql_dir/bin/safe_mysqld & mysqladmin和mysqld_safe位于Mysql安装目录的bin目录下,很容易找
-
Linux下安装mysql-5.6.4 的图文教程
在开始安装前,先说明一下mysql-5.6.4与较低的版本在安装上的区别,从mysql-5.5起,mysql源码安装开始使用cmake了,因此当我们配置安装目录./configure --perfix=/.....的时候和以前的会有些区别,这点我们稍后会提到. 一:解压缩mysql-5.6.4-m7-tar.zip 1> unzip mysql-5.6.4-m7-tar.zip 会生成mysql-5.6.4-m7-tar.gz的压缩文件 2> tar -zxvf mysql-5.6.4-
-
linux下开启php的sockets扩展支持实例
下个相同版本的php源码,进行编译安装,再按照上面步骤搞,生成的so.copy到rpm装的那个,修改php.ini进行扩展就行了, 或者到网上找相同版本,相同系统 的编译好的so文件. 在linux下给PHP安装socket扩展,参考方法如下: #cd /usr/soft/php/ext/sockets (进入原php安装文件下的sockets目录) #/usr/local/php/bin/phpize (运行安装后的php安装文件下的phpize) #./configure --prefix=
-
Linux 添加永久静态路由的方法
1/5 首先让我们查看一下当前机器的路由表,执行如下命令:route -n [root@vnode33 network-scripts]# route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 135.252.214.1 0.0.0.0 UG 100 0 0 eth0 135.252.214.0 0.0.0.0 255.255.255.0 U 100 0 0
-
Linux系统(X64)安装Oracle11g完整安装图文教程另附基本操作
一.修改操作系统核心参数 在Root用户下执行以下步骤: 1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件 输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件. oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 编辑完成后按Esc键,输入":wq"
-
Linux 连续执行多条命令的方法(推荐)
每条命令使用";"隔开,则无论前边的命令执行成功与否都会继续执行下一条命令 这里,故意将第二条命令中的echo多写了一个o,命令执行出错,但并不影响后续命令的执行 可以这么想,如果用分号来间隔命令,就相当于将命令分隔在了不同的行,无论前一行的命令成功或失败,都不影响下一行命令的执行. $ echo 1; echoo 2; echo 3; echo 4 1 -bash: echoo: command not found 3 4 若命令间使用"&&"隔开
-
在linux shell脚本中root切换到普通用户执行脚本或命令的方法
需求: 安装deb包,设置程序安装后启动,不需要root权限启动程序 | 不能用root权限启动 其他开机启动选项 方法:root临时降低权限 secUser=`who am i | awk '{print $1}'` #echo $secUser su $secUser -c <指令> > /dev/null 2>&1 & #这一条命令的执行权限是临时的,只在本条语句起作用 id -u # 结果为0,还是root用户权限 附: su --help -c, --co
-
java如何连续执行多条cmd命令
java连续执行多条cmd命令 命令之间用&连接 例如: Process p = Runtime.getRuntime().exec("cmd /c d: & cd bin/"); java ssh登录执行多条cmd命令 java登录ssh执行多条命令,解决出现more自动回车的问题 import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import ja
-
docker run起来之后执行多条命令
最近在搞jenkins pipeline的部署工作,而在对.net core进行部署时不希望安装dotnet sdk,为了移植性更好,打算直接使用aspnetcore的docker镜像,通过docker去run它,而在这个时间出现了一个问题 docker run aspnetcore:2.0之后如果希望同时执行多个sh命令出现了问题,还非要写个脚本文件,这是大叔不喜欢的! docker run aspnetcore:2.0 ls && ls 结果是第一个ls显示的是容器里的内容,而第二个l
-
java Runtime如何执行多条命令
目录 java Runtime如何执行多条命令 Runtime.getRuntime().exec 执行多条 java Runtime如何执行多条命令 使用 && 分隔命令 public static void cmd() { String ls = " cd /home/ && dir "; Process process = null; String cmd = getOsCmd()+ ls; try { process = Runtime.getR
-
Go语言执行系统命令行命令的方法
本文实例讲述了Go语言执行系统命令行命令的方法.分享给大家供大家参考.具体如下: 执行Go代码时可以附加参数,包括要执行的命令和给命令的参数 复制代码 代码如下: package main import ( "os" "os/exec" "fmt" "flag" "strings" ) func main() { command := flag.String("cmd&qu
-
C++/Php/Python 语言执行shell命令的方法(推荐)
编程中经常需要在程序中使用shell命令来简化程序,这里记录一下. 1. C++ 执行shell命令 #include <iostream> #include <string> #include <stdio.h> int exec_cmd(std::string cmd, std::string &res){ if (cmd.size() == 0){ //cmd is empty return -1; } char buffer[1024] = {0}; s
-
python等待10秒执行下一命令的方法
python等待10秒执行下一命令的方法: 首先导入时间(time)模块: 然后在需要等待执行的命令前调用sleep()方法,并在方法的括号里将等待时间设置为10秒即可. import time print '10秒前' time.sleep(10) print '10秒后' 先打印10秒前,等待10秒后,打印10秒后. 内容扩展: 不用多线程的话,可以用信号来解决这个问题. # -*- coding: utf-8 -*- import signal class InputTimeoutErro
-
在Windows与Linux下禁止被ping的设置方法[推荐]
LINUX下禁止ping命令的使用 以root进入Linux系统,然后编辑文件icmp_echo_ignore_allvi /proc/sys/net/ipv4/icmp_echo_ignore_all将其值改为1后为禁止PING将其值改为0后为解除禁止PING 直接修改会提示错误: WARNING: The file has been changed since reading it!!!Do you really want to write to it (y/n)?y"icmp_echo_i
-
sql 随机抽取几条数据的方法 推荐
传说用这个语句管用:select top 5 * from tablename order by newid() 我放到sql的查询分析器里去执行果然管用,随机抽取5条信息,不停的换,结果我应用到程序里的时候就不管用了,总是那几条,于是对这个东西进行了一个研究得出另一种方法: newid() 可以产生如:"49869293-8891-4B31-B88E-A584D9621490" 这样的数据结果,而且每一行产生的都不同,这样的话,我们就可以在查询的时候给结果集里加上这么一个列,比如:
随机推荐
- Nginx 防止被域名恶意解析的办法
- 基于java servlet过滤器和监听器(详解)
- JS实现的颜色实时渐变效果完整实例
- 通过JDBC连接oracle数据库的十大技巧
- HTML表单元素覆盖样式元素问题及其补救之道
- javascript编程起步(第五课)
- ASP.NET MVC中SignalR的简单应用
- Visual Studio 2013更新内容简介
- C# 生成随机数的代码
- 通过“回文字算法”复习C++语言
- php class类的用法详细总结
- MySQL验证用户权限的方法
- java 动态加载的实现代码
- 使用Rhino让java执行javascript的方法实例
- C#实现将网页保存成图片的网页拍照功能
- PHP运行SVN命令显示某用户的文件更新记录的代码
- Android性能优化之Bitmap图片优化详解
- 经典 儿啊,别做互联网了
- 免费资源 Free8.com
- webpack引入eslint配置详解