`

ma系列之-5-IO重定向和管道

 
阅读更多

 

 

1 计算机系统设定关于输入输出:
 默认输出设备:标准输出,STDOUT, 用1表示
 默认输入设备:标准输入, STDIN, 用0表示
 标准错误输出:STDERR, 用2表示

 

 
标准输入:键盘
标准输出和错误输出:显示器

 

I/O重定向概念:改变系统默认输入/出的地方 

 

 

 

2 linux set 命令:

防止出现对重要文件覆盖

[root@h2sliver114 ~]# help set
 -C  If set, disallow existing regular files to be overwritten
            by redirection of output.


set -C: 禁止对已经存在文件使用覆盖重定向; 这样能防止在你 >的时候 将重要文件覆盖掉。 
 强制覆盖输出,则使用 >|
比如如下:  
[root@h2sliver114 ~]# ls > b.txt
-bash: b.txt: cannot overwrite existing file

set +C: 关闭上述功能

 

 

3 重定向使用到的符号:

 

>: 覆盖输出
>>:追加输出
2>: 重定向错误输出 (联想记忆于凡是错误的东西都是挺2的事)   
2>>: 追加方式实现错误输出
&>: 重定向标准输出(正确输出)或错误输出至同一个文件(覆盖输入)
&>>: 重定向标准输出(正确输出)或错误输出至同一个文件(追加输入)

 

 

>: 覆盖输出目标文件内的内容
>>:追加输出


[root@sliver114 ~]# type set
set is a shell builtin
[root@sliver114 ~]# help set
....
 -C  If set, disallow existing regular files to be overwritten
            by redirection of output.
....
Using + rather than - causes these flags to be turned off.

set -C: 禁止对已经存在文件使用覆盖重定向;
	强制覆盖输出,则使用 >|
set +C: 关闭上述功能
[root@sliver114 ~]# set -C
[root@sliver114 ~]# ls /usr/ > /tmp/var.out
-bash: /tmp/var.out: cannot overwrite existing file
[root@sliver114 ~]# ls /usr/ >| /tmp/var.out   实现强制输入
[root@sliver114 ~]# cat /tmp/var.out  
bin
etc
games
include
....


2>: 只能重定向错误输出 对于正常输出则无能为力
2>>: 追加方式
eg:
[root@sliver114 ~]# set +C
[root@sliver114 ~]# ls /varr > /tmp/var3.out 2> /tmp/err.out
[root@sliver114 ~]# cat /tmp/err.out
ls: /varr: No such file or directory



&>: 重定向标准输出或错误输出至同一个文件
[root@sliver114 tmp]# ls /var1 &> var1.out
[root@sliver114 tmp]# cat var1.out
ls: /var1: No such file or directory
[root@sliver114 tmp]# ls /var &> var1.out
[root@sliver114 tmp]# cat var1.out
account
cache
cvs
db

 

 

关于输入重定向:

<:输入重定向
<<:Here Document(在此处生成文档)

eg:
[root@sliver114 tmp]# cat < /etc/fstab    将/etc/fstab的内容作为输入来取代键盘
LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
....

eg:
[root@sliver114 tmp]# cat << END     // 此时你用什么单词 那么下面你输入内容后 文件内容就以什么单词来结束,但是文档内容不包含这个单词,单词长以EOF或者END  (EOF= end of file) 
> this is hello
> this is world
> END
this is hello
this is world

 

 

 

关于输入输出重定向组合使用的例子:

 

看这个输入输出重定向综合的例子,实现像文件中输入内容(觉得通过在win下创建文件然后通过ssh工具远程提交岂不是更方便。或者通过vim来创建文件并添加内容也能达到如下命令的目的)
[root@sliver114 tmp]# cat >> /tmp/myfile.txt << EOF
> this is my ioredirect
> this is sep 
> EOF
[root@sliver114 tmp]# cat /tmp/myfile.txt 
this is my ioredirect
this is sep 

 

 

 

4 关于管道:

 

管道:前一个命令的输出,作为后一个命令的输入

命令1 | 命令2 | 命令3 | ...

上面表示:  将命令1的输出结果作为输入流,输入到命令2中做处理,然后命令2处理的结果作为输入流输入到命令3中做处理...

 

案例如下:

0 字母大写
[root@sliver114 tmp]# echo 'hello world' | tr 'a-z' 'A-Z'
HELLO WORLD

0.1 
仅展示文件行数据
[root@sliver114 tmp]# wc -l /etc/passwd
35 /etc/passwd
[root@sliver114 tmp]# wc -l /etc/passwd | cut -d' ' -f1
35



[root@sliver114 tmp]# ls -l /usr/bin | head -2    显示前两行结果
total 110584
-rwxr-xr-x 1 root root      31208 Jul 21  2011 [




1、统计/usr/bin/目录下的文件个数;
# ls /usr/bin | wc -l
2、取出当前系统上所有用户的shell,要求,每种shell只显示一次,并且按顺序进行显示;
# cut -d: -f7 /etc/passwd | sort -u
3、思考:如何显示/var/log目录下每个文件的内容类型?

4、取出/etc/inittab文件的第6行;    先获取前六行  然后在获取倒数第一行
[root@sliver114 tmp]# head -6 /etc/inittab | tail -1
#               Modified for RHS Linux by Marc Ewing and Donnie Barnes

5、取出/etc/passwd文件中倒数第9个用户的用户名和shell,显示到屏幕上并将其保存至/tmp/users文件中;
[root@sliver114 tmp]# tail -9 /etc/passwd | head -1 | cut -d: -f1,7 | tee /tmp/test.txt
apache:/sbin/nologin
[root@sliver114 tmp]# cat test.txt 
apache:/sbin/nologin

6、显示/etc目录下所有以pa开头的文件,并统计其个数;    ls -l 表示仅仅展示自身属性  并不展示自身下的孩子 这里要求仅展示以pa开头的文件 因此需要用到 -d
[root@sliver114 tmp]# ls -d /etc/pa*
/etc/pam.d       /etc/pam_smb.conf  /etc/passwd   /etc/passwd.OLD
/etc/pam_pkcs11  /etc/pango         /etc/passwd-
[root@sliver114 tmp]# ls -d /etc/pa* | wc -l


7、不使用文本编辑器,将alias cls=clear一行内容添加至当前用户的.bashrc文件中;
# echo "alias cls=clear" >> ~/.bashrc

 

 

 

分享到:
评论

相关推荐

    顺源科技4-20mA转0-5V芯片

    顺源科技推出的4-20mA转0-5V芯片属于ISOEM系列直流信号隔离放大器,该系列芯片能够实现不同类型的电压与电流信号间的隔离、放大以及转换。这种芯片特别适用于工业自动化领域中的信号处理与传输需求。 #### 二、产品...

    电压电流采集(0-5V0-10V0-20mA4-20mA)电容隔离输出(0-5V0-10V)原理图及PCB

    描述:本设计采用APC(GP9303M-F1K-N-SW)芯片来实现对0-5V/0-20mA/4-20mA的信号采集,采用APC(GP9301BXIM-F1K-N-SW)芯片来实现对0-10V信号进行采集。然后在芯片内部完成信号的高频调制,调制好的高频信号经过电容...

    0-1000℃/K型热电偶转4-20mA或0-5V温度变送器,转换模块

    本产品——"0-1000℃/K型热电偶转4-20mA或0-5V温度变送器,转换模块",特别适用于多种类型的热电阻和热电偶传感器,包括Ni1000, NTC 10K, NTC 20K, Pt100, Pt1000, Pt10, Cu50, Cu100以及J/ K/ T/ E/ R/ S/ B型热电偶...

    4-20ma转0-3.3v模块设计文档

    9. **测试与验证**:设计完成后,需要对模块进行一系列测试,以确保其在各种条件下都能正常工作,包括最小和最大输入电流、电源电压波动、温度变化等。 10. **应用示例**:4-20mA到0-3.3V的转换模块可用于连接各种...

    4-20mA转0-3.3V

    使用multisim搭建并仿真了4-20mA信号转换为0-3.3V电压的电路。实际证明有效可用。

    DIN3系列4-20mA(0-20mA)电流环路隔离器:DIN3 ISO 4-20mA.pdf

    整体而言,DIN3系列4-20mA(0-20mA)电流环路隔离器是一种专为工业自动化设计的高性能产品,它能够在恶劣的工业环境中提供稳定可靠的电流信号隔离和转换,保证了工业控制系统的稳定运行和数据采集的准确性。

    电源技术中的4-20mA电流与0-5V电压信号的隔离及变换

    模拟信号隔离放大器 技术应用 关键词:模拟信号:0-10mA/0-20mA/4-20mA/0-5V/0-10V/0-±5V/1-5V等输入与输出之间的隔离及变换。说 明:ISO系列隔离放大器是一种将模拟信号按比例进行隔离和转换的混合集成电路(IC)...

    4-20mA转0-10V二进二出信号隔离分配器.pdf

    &gt;&gt;国际标准二路信号输入:0-5V/0-10V/1-5V,0-10mA/0-20mA/4-20mA等 &gt;&gt;二路输出标准信号:0-5V/0-10V/1-5V,0-10mA/0-20mA/4-20mA等,具有高负载能力 &gt;&gt;全量程范围内极高的线性度(非线性度) &gt;&gt;标准DIN35 导轨式安装...

    常见4-20mA 0-5V 1-5V电路转换

    本文将详细介绍几种常见的电流电压转换电路,包括0-5V/0-10mA V/I变换电路、0-10V/0-10mA V/I变换电路、1-5V/4-20mA V/I变换电路、0-10mA/0-5V I/V变换电路以及0-10mA/0-5V的运放I/V变换电路。 #### 二、0-5V/0-10...

    4-20ma0-10v转0-15v/0-24v/0-200ma/0-700ma/0-2a大功率阀门驱动控制器、变送器

    4. **信号输入和输出**:支持多种标准的电压和电流信号输入和输出,如0-5V、0-10V、1-5V、0-±5V、0-±10V的电压信号,以及0-10mA、0-20mA、4-20mA的电流信号。 5. **输出标准信号**:可输出0-15V、0-24V、0-30V等...

    华为OLT-MA5680T-GPON开局指导-配置指南.doc

    华为OLT-MA5680T-GPON开局指导-配置指南 本文档提供了华为OLT-MA5680T-GPON开局指导的配置指南,涵盖了GPON开局指导、业务配置、数据规划、GPON配置的一些概念等内容。 一、业务配置 在业务配置中,我们需要创建...

    4-20ma转0-5KHz,模拟信号转频率脉冲信号隔离变送器.zip

    4-20ma转0-5KHz,模拟信号转频率脉冲信号隔离变送器zip,电压或电流信号转频率信号隔离变送器产品主要用于0-5V/0-10V/1-5V, 0-10mA/0-20mA /4-20mA等模拟信号的隔离变送,输出一个标准的频率信号,供PLC或其他设备检测...

    0-5V/0-10V/0-20mA/4-20mA采集 0-20mA/4-20mA信号隔离输出电路-电路方案

    PAC芯片完成0-5V/0-10V/0-20mA/4-20mA转0-20mA/4-20mA的信号转换,内置隔离电源,隔离度1500VDC 原理是,采用APC(GP9303-F1K-N-SW)芯片来实现对0-5V/0-20mA/4-20mA的信号采集,采用APC(GP9301BXI-F1K-N-SW)芯片...

    S7-1200-PLC最大IO能力计算电源需求与计算.doc

    S7-1200 PLC最大IO能力计算电源需求与计算是指在S7-1200 PLC系统中,如何计算和评估最大IO能力,以及如何计算电源需求。本文将详细介绍S7-1200 PLC最大IO能力计算电源需求与计算的相关知识点。 一、S7-1200 PLC最大...

    02_Artix FPGA DDR控制器MIG使用(AXI4)(MA703FA-35T)20190401.pdf

    02_Artix FPGA DDR控制器MIG使用(AXI4)(MA703FA-35T)20190401.pdf 02_Artix FPGA DDR控制器MIG使用(AXI4)(MA703FA-35T)20190401.pdf

    西门子S7-1500的分布式IO模拟量模块如何接线.zip

    S7-1500的模拟量模块包括AI(模拟量输入)和AO(模拟量输出)模块,如6ES7 153-2AA00-0AB0等,它们可以处理4-20mA、0-10V、0-5V等不同信号范围。在接线前,需确保选用的模块与现场设备的信号类型匹配。 二、接线...

    实用的4~20mA输入-0~5V输出的I/V转换电路

    标题和描述中的“实用的4~20mA输入-0~5V输出的I/V转换电路”涉及到的关键知识点包括:4~20mA信号、0~5V信号、电流到电压(I/V)转换以及电路设计。下面将详细展开这些知识点。 ### 1. 4~20mA信号 4~20mA信号...

    模拟信号4-20mA转RS-485/232,数据采集A/D转换模块

    IBF系列产品可应用在 RS-232/485总线工业自动化控制系统,4-20mA / 0-5V信号测量、监测和控制,0-75mV,0-100mV等小信号的测量以及工业现场信号隔离及长线传输等等。 产品包括电源隔离,信号隔离、线性化,A/D转换和...

Global site tag (gtag.js) - Google Analytics