Linux - 执行命令与脚本
01 - Linux执行多条命令
- 方法1:在命令行下可以一次性粘贴多条语句,shell会依次执行并输出结果
- 方法2:在一个命令行中,用分号将各个命令隔开或者使用&&连接各个命令
示例:
# whoami;date;uptime
root
Fri Nov 4 10:58:17 EET 2016
10:58:17 up 1 day, 14:30, 1 user, load average: 1.23, 1.05, 1.04
# whoami&&date&&uptime
root
Fri Nov 4 10:58:36 EET 2016
10:58:36 up 1 day, 14:30, 1 user, load average: 0.96, 1.00, 1.02
02 - Linux区别&与nohup
&方式
使用 & 在命令结尾,可以让命令在终端的后台自动运行。
守护进程是不属于终端的单独进程组,终端关闭后,守护进程不会退出。
如果命令没有守护进程,无论加不加&,网络断开或终端窗口关闭后,控制进程收到SIGHUP信号退出,会导致该会话期内相关进程退出。
也就是说,终端打开以后,bash等都是他的子程序,一旦终端关闭,系统将所有相关进程杀掉,执行中的任务也就取消了。
nohup命令
可以使用nohup命令忽略所有挂断(SIGHUP)信号,来实现在终端关闭后,命令不挂断地运行,nohup就是不挂起的意思( no hang up)。
命令格式:nohup command [ arg ... ] [ & ]
一般常用形式为:nohup command &
加不加&并不会影响这个命令,只是前台或者后台运行而已。
使用nohup命令提交作业,在缺省情况下所有输出被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件。
一般可在结尾加上"&"来将命令同时放入后台运行,也可用>filename 2>&1来更改缺省的重定向文件名。
例如:nohup command > myout.file 2>&1 &输出被重定向到myout.file文件中
03 - Linux开机自动执行命令或脚本
CentOS7
- 在“/etc/rc.d/rc.local”文件中追加需要开机自动执行的命令和脚本
- 确认“/etc/rc.d/rc.local”文件和要执行的脚本具有可执行权限;
Ubuntu
- 在“/etc/rc.local”文件中添加需要开机自动执行的命令和脚本;
- 添加的内容必须要放在“exit 0”一行之前;
- 确认“/etc/rc.local”文件和要执行的脚本具有可执行权限;
04 - Linux用户登录或注销时执行命令或脚本
CentOS7
- 用户登录时执行脚本:在用户目录下的“.bash_profile”或“.bashrc”文件中追加需要自动执行的命令和脚本;
- 用户注销时执行脚本:在用户目录下的“.bash_logout”文件中追加需要自动执行的命令和脚本;
Ubuntu
- 用户登录时执行脚本:在用户目录下的“.bashrc”文件中追加需要自动执行的命令和脚本;
- 用户注销时执行脚本:在用户目录下的“.bash_logout”文件中追加需要自动执行的命令和脚本;
05 - Linux用户shell配置文件
CentOS7:
- /etc/profile : 设置环境信息,作用于任何用户,当用户第一次登录时,该文件被读取;
- /etc/bashrc : 设置bash shell环境信息,作用于任何用户,当bash shell被打开时,该文件被读取;
- ~/.bash_profile : 每一个用户独有的bash shell信息,当用户登录时,该文件内容仅被读取并执行一次;用于交互式login shell;
- ~/.bashrc : 每一个用户独有的bash shell信息,当用户登录时或打开新shell时,该文件内容被读取并执行;用于交互式non-login shell;
- ~/.bash_logout : 当用户退出bash shell时, 该文件内容被读取并执行;
06 - Linux测量一个命令的运行时间
time命令:time a simple command or give resource usage
使用-p参数时,直接打印所需时间的数值,单位为秒
[root@CentOS-7 ~]# time date
Mon Nov 21 23:10:31 CST 2016
real 0m0.002s
user 0m0.000s
sys 0m0.002s
[root@CentOS-7 ~]#
[root@CentOS-7 ~]# time -p date
Mon Nov 21 23:10:36 CST 2016
real 0.00
user 0.00
sys 0.00
[root@CentOS-7 ~]#
Linux - 执行命令与脚本的更多相关文章
- 详解如何在 Linux 启动时自动执行命令或脚本
我一直很好奇,在启动 Linux 系统并登录的过程中到底发生了什么事情.按下开机键或启动一个虚拟机,你就启动了一系列事件,之后会进入到一个功能完备的系统中,有时,这个过程不到一分钟.当你注销或者关机时 ...
- 在 Linux 启动或重启时执行命令与脚本
有时可能会需要在重启时或者每次系统启动时运行某些命令或者脚本.我们要怎样做呢?本文中我们就对此进行讨论. 我们会用两种方法来描述如何在 CentOS/RHEL 以及 Ubuntu 系统上做到重启或者系 ...
- jenkins 执行ssh 远程linux执行命令
1.远程机器编写脚本: 脚本名称为: /app/jboss/jboss-as/logs/ALL_SERVICE_STOP.sh 功能为:停止某个服务器某个目录下面的所有应用 #!/bin/bash p ...
- linux——常用命令与脚本
linux常用命令 --文件管理pwd --查看当前目录cd --切换当前目录ls --列出当前目录下的所有文件touch --创建文件mkdir --建立目录rmdir --删除空目录rm --删除 ...
- NET Core 跨平台执行命令、脚本
一.前言 我们可能会遇到需要在程序中执行一些系统命令,来获取一些信息:或者调用shell脚本..NET Core 目前已经可以跨平台执行,那么它如何跨平台执行命令呢,请看下面的讲解. 二.Proces ...
- java远程调用linux的命令或者脚本
转载自:http://eksliang.iteye.com/blog/2105862 Java通过SSH2协议执行远程Shell脚本(ganymed-ssh2-build210.jar) 使用步骤如下 ...
- Linux 执行定时任务 shell脚本
Linux上面执行定时任务,我们可以利用crontab -e直接编辑定时任务 另外我们还可以写好shell脚本,定时去执行shell脚本,这两个方法都可以起到定时执行的作用 下面我详细说一下入如何执行 ...
- Python远程linux执行命令
1.远程登录到linux上,使用到的模块paramiko #远程登陆操作系统 def ssh(sys_ip,username,password,cmds): try #创建ssh客户端 client ...
- expect脚本远程登录、远程执行命令和脚本传参简单用法
expect介绍: 最近想写一个自动化安装脚本,涉及到远程登录.分发文件包.远程执行命令等,其中少不了来回输入登录密码,交互式输入命令等,这样就大大降低了效率,那么有什么方法能解决呢?不妨试试expe ...
随机推荐
- ajax----tomact服务器运行
一.菜鸟教程的代码本地运行 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...
- Javascript的算法题目
用js实现单链表的增删,直接上代码 const linkList=new LinkList() function LinkList(){ var Node=function(element){ thi ...
- 20175314 实验一 Java开发环境的熟悉
20175314 实验一 Java开发环境的熟悉 一.实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA 编辑.编译.运行.调试Java程序. 3.完成实验,撰写实验报告,注意实 ...
- TZOJ 5101 A Game(区间DP)
描述 Consider the following two-player game played with a sequence of N positive integers (2 <= N & ...
- 498. Diagonal Traverse对角线z型traverse
[抄题]: Given a matrix of M x N elements (M rows, N columns), return all elements of the matrix in dia ...
- [leetcode]96. Unique Binary Search Trees给定节点形成不同BST的个数
Given n, how many structurally unique BST's (binary search trees) that store values 1 ... n? Input: ...
- 【转载】SQL Server - 使用 Merge 语句实现表数据之间的对比同步
原文地址:SQL Server - 使用 Merge 语句实现表数据之间的对比同步 表数据之间的同步有很多种实现方式,比如删除然后重新 INSERT,或者写一些其它的分支条件判断再加以 INSERT ...
- MySQL(数据类型和完整约束)
MySQL数据类型 MySQL支持多种数据类型,主要有数值类型.日期/时间类型和字符串类型. 1.数值数据类型 包括整数类型TINYINT.SMALLINT.MEDIUMINT.INT.BIGINT. ...
- ABP 异常处理 第四篇
1.ABP异常处理机制是通过过滤器实现的,我们查看的webAPI的异常处理,我们来看看他的源码,AbpApiExceptionFilterAttribute 继承ExceptionFilterAttr ...
- 20175316盛茂淞 2018-2019-2 《Java程序设计》第3周学习总结
20175316盛茂淞 2018-2019-2 <Java程序设计>第3周学习总结 教材学习内容总结 1.1.编程语言的几个发展阶段: 面向机器语言 面向过程语言 面向对象语言 2.1.类 ...