jobs

linux后台运行的几种方式

六眼飞鱼酱① 提交于 2020-04-29 22:12:21
1、nohup 将程序以忽略挂起信号的方式运行起来 补充说明 nohup命令 可以将程序以忽略挂起信号的方式运行起来,被运行的程序的输出信息将不会显示到终端。 无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。 如果当前目录的 nohup.out 文件不可写,输出重定向到$HOME/nohup.out文件中。 如果没有文件能创建或打开以用于追加,那么 command 参数指定的命令不可调用。 如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。 简单实例: nohup command & 指定输出实例 nohup command > myout.file 2>&1 & 其他相关命令 ctrl + z #可以将一个正在前台执行的命令放到后台,并且处于暂停状态。 fg #将后台任务切换到前台执行 bg #将一个在后台暂停的命令,变成在后台继续执行。如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出 jobs #查看后台运行的状态,jobs -l选项可显示所有任务的PID ps -ef | grep command 或者 ps aux | grep command #查看进程 kill -9 进程id #杀掉对应的进程, 更高级的用法如下: ps aux | grep

linux中安装&配置nohup

给你一囗甜甜゛ 提交于 2020-04-29 22:11:31
nohup作用:使程序在服务器后台执行,执行程序的命令不依赖ssh界面。 用法:nohup 需执行命令 & 1、查询nohup是否安装 which nohup--查看/usr/bin目录下有没有nohup命令 2、下载nohup yum install coreutils 3、查找下载的nohup 进入/usr/bin目录下查看 which nohup 4、配置nohup路径 vi ~/.bash_profile 在PATH=$PATH:$HOME/bin后面添加:/usr/bin 5、立即生效配置 source ~/.bash_profile 6、查看nohup版本 nohup --version 7、命令帮助命令 nohup -help 8、使用nohup命令 nohup 需要后台执行的命令 & 9 、 使用 1、运行.sh文件 直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令。 (1)&命令 功能:加在一个命令的最后,可以把这个命令放在后台执行 (2)nohup命令 功能:不挂断的运行命令 2、查看当前后台运行的命令 有两个命令可以用,jobs和ps,区别是jobs用于查看当前终端后台运行的任务,换了终端就看不到了。而ps命令用于查看瞬间进程的动态,可以看到别的终端运行的后台进程。 (1)jobs命令 功能

JS中的单线程与多线程、事件循环与消息队列、宏任务与微任务

五迷三道 提交于 2020-04-28 07:57:56
  我们在接触到JavaScript语言的时候就经常听到别人介绍JavaScript 是单线程、异步、非阻塞、解释型脚本语言。   确切的说,对于开发者的开发过程来说,js确实只有一个线程(由JS引擎维护),这个线程用来负责解释和执行JavaScript代码,我们可以称其为主线程。   代码在主线程上是按照从上到下顺序执行的。但是我们平时的任务处理可能并不会直接获取到结果,这种情况下如果仍然使用同步方法,例如发起一个ajax请求,大概500ms后受到响应,在这个过程中,后面的任务就会被阻塞,浏览器页面就会阻塞所有用户交互,呈“卡死”状态。 这种同步的方式对于用户操作非常不友好,所以大部分耗时的任务在JS中都会通过异步的方式实现。   虽然js引擎只维护一个主线程用来解释执行JS代码,但实际上浏览器环境中还存在其他的线程,例如处理AJAX,DOM,定时器等,我们可以称他们为工作线程。同时浏览器中还维护了一个消息队列,主线程会将执行过程中遇到的异步请求发送给这个消息队列,等到主线程空闲时再来执行消息队列中的任务。   同步任务的缺点是阻塞,异步任务的缺点是会使代码执行顺序难以判断。两者比较一下我们还是更倾向于后者。到目前为止,我们已经涉及到了几个名词,单线程、多线程、主线程,js引擎,事件循环,消息队列等。 1、单线程与多线程   单线程语言:JavaScript

Linux 笔记

旧街凉风 提交于 2020-04-27 03:52:25
博客地址: http://www.moonxy.com 一、前言 Shell 是系统的用户界面,提供了用户与内核进行交互操作的一种接口,它接收用户输入的命令并把它送入内核去执行。实际上 Shell 是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell 有自己的编程语言用于对命令的编辑,它允许用户编写由 shell 命令组成的程序。Shell 编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的 Shell 程序与其他应用程序具有同样的效果。 Shell 脚本命令的工作方式有两种:交互式和批处理。 交互式(Interactive):用户每输入一条命令就立刻执行。 批处理(Batch):由用户事先编写好一个完整的 Shell 命令,Shell 会一次性执行脚本中的多条命令。 二、Linux 进程管理与作业控制 进程和作业的区别与联系: 区别:进程是一个程序在一个数据集上的一次执行,而作业是用户提交给系统的一个任务。 联系:一个作业通常包括几个进程,几个进程共同完成一个任务,即作业。 用户提交作业以后,如果作业被调度,系统会为作业创建进程,一个进程无法完成时,系统会为这个进程创建子进程。 当运行进程时,可以使用 Ctrl + Z 组合键来将其暂停 ,然后使用 fg(foreground)命令恢复它到前台 ,或者利用 bg

第五部分:长难句分析(基本结构的长难句)

只愿长相守 提交于 2020-04-26 07:27:19
<font style = "font-family:微软雅黑;font-size:16px"> <div> <h1>一、基本结构的长难句</h1> 1. 断开<br> 2. 简化<br> 基本结构的长难句<br> <span style = "display:inline-block;width:140px;height:100px;margin:5px;border:1px solid"> 长难句<br> 多个句子/多件事</span><span style = "display:inline-block;width:140px;height:100px;margin:5px;border:1px solid"> 简单句<br> 一个句子/一件</span><span style = "display:inline-block;width:140px;height:100px;margin:5px;border:1px solid"> 简单句的核心<br> 一件事的核心内容</span><br><br><span style = "text-align:center;width:200px;height:100px;display:inline-block">断开<br>1 标点<br> 2 连接词<br>  3 分析主谓</span><span style = "text

爬虫黑科技:我是怎么爬取indeed的职位数据的

落爺英雄遲暮 提交于 2020-04-25 22:24:54
最近在学习nodejs爬虫技术,学了request模块,所以想着写一个自己的爬虫项目。 研究了半天,最后选定indeed作为目标网站,通过爬取indeed的职位数据,然后开发一个自己的职位搜索引擎。 目前已经上线了,虽然功能还是比较简单,但还是贴一下网址:job search engine,证明一下这个爬虫项目是有用的。 下面就来讲讲整个爬虫的思路。 确定入口页面 众所周知,爬虫是需要入口页面的,通过入口页面,不断的爬取链接,最后爬取完整个网站。 在这个第一步的时候,就遇到了困难,一般来说都是选取首页和列表页作为入口页面的,但是indeed的列表页面做了限制,不能爬取完整的列表,顶多只能抓取前100页。 但是这没有难倒我,我发现indeed有一个Browse Jobs 页面,通过这个页面,可以获取indeed按地区搜索和按类型搜索的所有列表。 下面贴一下这个页面的解析代码。 start: async (page) => { const host = URL.parse(page.url).hostname; const tasks = []; try { const $ = cheerio.load(iconv.decode(page.con, 'utf-8'), { decodeEntities: false }); $('#states > tbody > tr > td >

Flink源码阅读(1.7.2)

依然范特西╮ 提交于 2020-04-24 18:01:30
[TOC] Client提交任务 执行模式有:本地、远程Standalone等,下面只介绍yarn模式。 Yarn模式 : Job模式是每个flink job 单独在yarn上声明一个flink集群 Session模式会在集群中维护flink master,即一个yarn application master,运行多个job。 Job模式(重点是加上-m yarn-cluster):./flink run -m yarn-cluster -d -yst -yqu flinkqu -yst -yn 4 -ys 2 -c flinkdemoclass flinkdemo.jar args1 args2 ... Session模式: 先启动session:./bin/yarn-session.sh 后提交job:./bin/flink run ./path/to/job.jar detached模式:上面job模式的-d代表detached,这种情况下flink yarn client将会只提交任务到集群然后关闭自己。这样就不能从 env.execute() 中获得 accumulator results 或 exceptions。而在session模式下使用,则无法使用flink停止yarn session,需用yarn工具来停止 yarn application -kill

linux后台执行命令:&和nohup

穿精又带淫゛_ 提交于 2020-04-23 04:51:04
当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还有更重要的事情要做,比如阅读电子邮件。对于密集访问磁盘的进程,我们更希望它能够在每天的非负荷高峰时间段运行(例如凌晨)。为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择方法可供使用。 & 当在前台运行某个作业时,终端被该作业占据;可以在命令后面加上& 实现后台运行。例如:sh test.sh & 适合在后台运行的命令有f i n d、费时的排序及一些s h e l l脚本。在后台运行作业时要当心:需要用户交互的命令不要放在后台执行,因为这样你的机器就会在那里傻等。不过,作业在后台运行一样会将结果输出到屏幕上,干扰你的工作。如果放在后台运行的作业会产生大量的输出,最好使用下面的方法把它的输出重定向到某个文件中: command > out. file 2>& 1 & 1 这样,所有的标准输出和错误输出都将被重定向到一个叫做out.file 的文件中。 PS:当你成功地提交进程以后,就会显示出一个进程号,可以用它来监控该进程,或杀死它。(ps -ef | grep 进程号 或者 kill -9 进程号) nohup 使用&命令后,作业被提交到后台运行,当前控制台没有被占用,但是一但把当前控制台关掉(退出帐户时),作业就会停止运行。nohup命令可以在你退出帐户之后继续运行相应的进程

MySQL实战 | 05 如何设计高性能的索引?

馋奶兔 提交于 2020-04-22 02:15:48
原文链接: MySQL | 05 如何设计高性能的索引? 上回我们主要研究了为什么使用索引,以及索引的数据结构。今天带你了解如何设计高性能的索引。 <!--more--> 其中,有这么一个点,说的是 InnoDB 引擎中使用的是聚簇索引,其 主索引 的实现树中的叶子结点存储的是完整的数据记录,而 辅助索引 中存储的则只是辅助键和主键的值。 这样在用辅助索引进行查询时,会先查出主键的值,然后再去主索引中根据主键的值查询目标值。 比如,假想一个表如下图存储了 4 行数据。其中 Id 作为主索引,Name 作为辅助索引。 Id Name Company 5 Gates Microsoft 7 Bezos Amazon 11 Jobs Apple 14 Ellison Oracle 对于聚簇索引,若使用主键索引进行查询, select * from tab where id = 14 这样的条件查找主键,则按照 B+ 树的检索算法即可查找到对应的叶节点,之后获得行数据。 若使用辅助索引进行查询,对 Name 列进行条件搜索,则需要两个步骤: 1、第一步在辅助索引 B+ 树中检索 Name,到达其叶子节点获取对应的主键值。 2、第二步根据主键值在主索引 B+ 树中再执行一次 B+ 树检索操作,最终到达叶子节点即可获取整行数据。 上面这个过程称为 回表 。 回表:在数据中,当查询数据的时候

PHP 常用函数集合

三世轮回 提交于 2020-04-21 05:42:48
PHP is_numeric() 函数 由 陈 创建, 最后一次修改 2016-12-02 定义和用法 is_numeric() — 检测变量是否为数字或数字字符串 语法 bool is_numeric ( mixed $var ) 如果 var 是数字和数字字符串则返回 TRUE ,否则返回 FALSE 。 参数 描述 var 允许传入任意参数。 技术细节 返回值: 如果 var 是数字和数字字符串则返回 TRUE,否则返回 FALSE。 实例 <?php $Temperature = array(666,'w3cschool','666',null); foreach ($Temperature as $key => $value) { if(is_numeric($value)){ print("参数是数字或数字字符串<br/>"); }else{ print("参数不是数字或数字字符串<br/>"); } } ?> -------------------------------------------------------- PHP array_column() 函数 PHP Array 函数 实例 从记录集中取出 last_name 列: <?php // 表示由数据库返回的可能记录集的数组 $a = array( array( 'id' => 5698, 'first