015 Linux 标准输入输出、重定向、管道和后台启动进程命令

015 Linux 标准输入输出、重定向、管道和后台启动进程命令

1 三种标准输入输出

  1. 标准输入(STDIN),文件描述符号为:0,默认从键盘获取输入;
  2. 标准输出(STDOUT),文件描述符号为:1,默认输出到显示终端;
  3. 标准错误输出(STDERR),文件描述符号为:2,默认输出到显示终端;

2 什么是重定向?如何重定向?

(1)什么是重定向?

IO 重定向是为了改变默认输入、输出的位置,如默认情况下标准输出(STDOUT),标准错误输出(STDERR)都是输出到显示终端,如对标准输出、标准错误输出改变其默认输出位置,可重定向输出到指定的文件中(实际工作中经常这么使用),要重定向就要配合一些语法符号。

(2)如何重定向?

  • *Linux Shell 使用 ” > ” 和 “>>” 进行对文件描述符进行重定向

  • “>” # 使用本次输出内容替换原有文件的内容;

  • “>>” 把本次输出追加到原文件的后面;

  • *常见的一些输出重定向(标准输出和标准错误输出)表示

  • 【>】标准输出覆盖重定向

  • 【>>】标准输出追加重定向
  • 【2>】标准错误输出覆盖重定向
  • 【2>>】标准错误输出追加重定向
  • 【&>】将标准输出和标准错误输出都同时覆盖重定向
  • 【&>>】将标准输出和标准错误输出都同时追加重定向

3 管道符以及和它容易混淆的一些符号使用

(1)管道符 |

  • 格式 : 命令1 | 命令2 …

  • 解释: 命令1 的输出作为命令2的操作对象

(2)&和&&、|和|| 区别、分号(;)用法

  • & 表示任务在后台执行;
  • && 逻辑与,只有前一条命令执行成功时,才执行后一条命令 ,如 echo ‘1’ && echo ‘2’;
  • | 表示管道,上一条命令的输出,作为下一条命令操作对象;
  • || 逻辑或,只有上一条命令执行失败后,才执行下一条命令;
  • “;” 用法方式:command1 ; command2,用 ; 号隔开每个命令,每个命令按照从左到右的顺序执行,彼此之间不关心是否失败, 所有命令都会执行。

4 nohup 后台启动进程命令和案例

  • nohup 让某个进程在后台运行。
  • nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
  • nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
以后台进程执行启动 grafana 命令,& 放在命令到结尾,表示后台运行
nohup ./bin/grafana-server  start > grafana.log 2>&1 &

2>&1 解释:将标准错误输出(2 表示)重定向到标准输出(&1 表示) ,标准输出(&1) 再被重定向输入到 grafana.log 文件中。

5 小结

  • 总结了 Linux 中标准输入(0 表示),标准输出(1 表示),标准错误输出(2 表示)以及它们的重定向用法;
  • 接着简述了管道符 | 用法,以及 &和&&、|和|| 区别、分号(;)用法;
  • 最后结合 nohup 后台启动进程命令在实际工作中和上述提到的命令的综合使用。

「不甩锅的码农」原创,转载请注明来源,未经授权禁止商业用途!同名 GZH 请关注!

Original: https://www.cnblogs.com/bilahepan/p/15898514.html
Author: 不甩锅的码农
Title: 015 Linux 标准输入输出、重定向、管道和后台启动进程命令

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524092/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Docker基础知识

    Docker 是什么 Docker 经常被提起的特点: Docker 技术的基础: Docker 组件: Docker 安装 Docker 常见命令 容器相关操作 获取容器相关信息…

    Linux 2023年6月7日
    0106
  • ELK 脚本自动化删除索引

    kibana有自带接口,可通过自带的API接口 通过传参来达到删除索引的目的。 删除15天前的索引 curl -XDELETE "http://10.228.81.161…

    Linux 2023年6月8日
    074
  • C语言实现扫雷游戏(完整版)

    头文件定义、函数声明 下面就是扫雷中使用到的所有函数,为了省事我把所有的代码都放在一个C文件中实现 宏定义中设置了游戏的界面布局,以及设置地雷的个数(这里默认的是10个地雷),界面…

    Linux 2023年6月6日
    0137
  • 分布式锁

    非分布式下使用锁 利用版本号来检测数据是否发生变化,从而判断是否能进行更新 JAVA 使用比较交换机制-CAS(Compare And Swap)机制实现 i++非线程安全,使用原…

    Linux 2023年6月7日
    092
  • short, int, long, long long各个类型的范围

    类型名称 字节数 取值范围 signed char 1 -2^7 ~ 2^7-1 -128~+127 short int 2 -2^14 ~ 2^14-1 -32768~+3276…

    Linux 2023年6月8日
    081
  • 网络通信知识地图

    知识地图是一种知识导航系统,并显示不同的知识存储之间重要的动态联系。本篇主要就是从更高的视角将之前的文章的结构思路展现出来。文章结构的思路实际上也是达到架构师程度要掌握的网络通信知…

    Linux 2023年6月14日
    0107
  • OSI模型 TCP/IP协议

    系统中每打开一个程序,系统会自动分配一个端口号(0~65535) 端口号:来区分应用程序 网络层:传给哪台主机 加入ip地址(源发出去的地址 目:目的地址)选路 数据链路层:mac…

    Linux 2023年6月6日
    093
  • SQL实战——04. 查找所有已经分配部门的员工的last_name和first_name以及dept_no (一个逗号引发的血案)

    查找所有已经分配部门的员工的last_name和first_name以及dept_noCREATE TABLE dept_emp (emp_no int(11) NOT NULL,…

    Linux 2023年6月14日
    083
  • 思科CISCO ASA 5521 防火墙 Ipsec 配置详解

    版本信息: Cisco Adaptive Security Appliance Software Version 9.9(2) Firepower Extensible Opera…

    Linux 2023年6月6日
    095
  • vue动画效果和vue组件——day03

    <div id="app"><br> <input type="button" value="&am…

    Linux 2023年6月7日
    087
  • 【EventOS Nano】EventOS Nano初步了解

    EventOS Nano是什么? EventOS Nano是一个面向单片机、事件驱动的、分布式的、可跨平台开发的嵌入式开发平台。主要有两大技术特色: 事件驱动和 超轻量 Event…

    Linux 2023年6月13日
    085
  • Mysql数据库 ALTER 基本操作

    背景: ALTER作为DDL语言之一,工作中经常遇到,这里我们简单介绍一下常见的几种使用场景 新建两个测试表offices 和 employess CREATE TABLE off…

    Linux 2023年6月6日
    0111
  • 输入输出函数

    IDLE name=input(‘输入’) print(name) print函数 print(1,2) print(1,2,sep=",") input函数 …

    Linux 2023年6月8日
    084
  • CentOS/Redflag 7.3安装qemu 5.0记录

    安装实际上相当简单,只需下载源代码并编译即可。 [En] Installation is actually quite simple, just download the sour…

    Linux 2023年5月27日
    0106
  • Nginx笔记

    实现负载均衡 这里采用的是权重 进入配置文件目录cd /usr/local/nginx/conf/ //实际根据自己的目录来 编辑vim nginx.conf 根据需要在此代码的顶…

    Linux 2023年5月27日
    098
  • 标签泄露 Label leaking

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月7日
    091
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球