标准输入输出重定向——Linux下任何一个命令的执行,他都会经过下图所示的流程:

目录

三种I/O设备

把I/O重定向入文件

tr

使用管道链接命令

实际案例

一、I/O设备Linux提供了三种I/O设备:

标准输入(STDIN)-0默认接受来自键盘的输入

标准输出(STDOUT)-1默认输出到终端窗口

标准错误(STDERR)-2默认输出到终端窗口操作符号:

1> 或者 >正确输出到文件

2>错误输出到文件

>覆盖

2>>追加

文件存在:>和>>都可以创建新文件

文件不存在:> 覆盖   >> 追加

set -C禁止覆盖,但可追加

>|+文件名强制覆盖

set +C允许覆盖

&>全部输出文件

2>&1把错误的转成正确的

1>&2把正确的转成错误的

()合并多个程序的输出

例如:(cal 2007;cal 2008) > all.texttr 转换字符

例如:

tr  abcd 123将a转换成1,b转换成2,cd转换成3

tr  abc 1234将a转换成1,b转换成2,c转换成3,4无效

tr -t abcd 123将a->1,b->2,c->3,d无效

tr -d a将a字符串删除

echo hello 123 world | tr -cd 0-9只有留下0-9,将输入文本中不在补集中的所有字符全部删除(有点绕)

运行结果截图

tr -s ab将多个连续的a和b转换成一个a和b

tr a [:punct:] 会报错< 输入重定向

tr -d abd < /etc/fstab删除fstab文件中所有abc的任意字符

cat > file然后输入内容,Ctrl+d离开   变相的一种输入方式

cat > file3.txt < /etc/fstab将fstab的内容复制到file3.txt

视频56.03处截屏<< 终止词******多用在脚本中******

cat > file4.txt << EOF

视屏57.19处截屏

| 管道--将前边的输出的正确结果传递给下一条命令执行

可以利用2>&1 |将错误结果也能传递给管道

less翻页查看输出

ls -l /etc | less

mail -s "主题" +用户名--电子邮件发送给指定用户

用户lisi发送主题为test,内容为hello world 的邮件给用户zhanshan,结果图如下:

和管道符结合使用:

echo hello world | mail -s "test" +username

案例:

1、将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中

cat /etc/issue |tr a-z A-Z > /tmp/issue.out

tr a-z A-z < /etc/issue > /tmp/issue.out

2、将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中

who | tr [a-z] [A-Z] > /tmp/who.out

3、一个linux用户给root发邮件,要求邮件标题为”help”,邮件正文如下:

Hello, I am 用户名,The system version is here,please help me tocheck it ,thanks+操作系统版本信息

echo -e Hello,I am `whoami`,The system version is here,Please help me to check it,Thanks."\n"`cat /etc/redhat-    release` | mail -s help root

4、将/root/下文件列表,显示成一行,并文件名之间用空格隔开

ls -1 /root/ |tr "\n" " "

5、计算1+2+3+..+99+100的总和

echo {1..100} |tr " " + |bc

6、处理字符串“xt.,l 1 jr#!$mn 2 c*/fe 3 uz 4”,只保留其中的数字和空格

echo "xt.,l 1 jr#hat-releasemn 2 c*/fe 3 uz 4" | tr -cd [:digit:][:blank:]

7、将PATH变量每个目录显示在独立的一行

echo $PATH |tr : "\n"

linux eof tmp目录,Linux学习-标准输入输出(示例代码)相关推荐

  1. linux++tar打包目录,linux中tar命令打包目录与排除目录打包linux操作系统 -电脑资料...

    本文章来给各位朋友详细介绍关于linux中tar命令打包目录与排除目录打包有需要了解tar命令的使用方法的朋友可进行参考参考, 打包压缩目录很简单如下代码如下复制代码 tar -czf small.t ...

  2. linux的tmp目录不会清空,关于Linux系统中/tmp目录的清除问题

    关于Linux系统中/tmp目录的清除问题 相当悲剧的问题是,之前保存在/tmp目录中的一些数据丢了.现在发现已经是第二次发生了,前一次以为是其他人误操作删除的,今天才发现这个和系统有关系.完全是因为 ...

  3. [Linux] Linux中/tmp目录下文件莫名丢失

    0x0 前言 前段时间的一个项目需要调用tomcat,没在意这些就把tomcat布在了/tmp下,大概1-2周左右,发现tomcat中的主程序和其他目录丢失,导致tomcat起不来,查看系统日志和to ...

  4. linux 临时文件夹设置,Linux 系统 tmp 目录的安全设置

    在Linux系统中,至少有两个目录保存着系统的临时文件,一个就是 /tmp,另外一个是 /var/tmp.这两个目录有一个共同点就是所有用户在该目录下拥有可读写,可执行的权限,参考截图: 因为两个目录 ...

  5. linux centos7 /tmp目录 自动清理规则

    CentOS7下,系统使用systemd管理易变与临时文件,与之相关的系统服务有3个: systemd-tmpfiles-setup.service :Create Volatile Files an ...

  6. 删除Linux下/tmp目录引起的不正常登录系统

    现象:/tmp占用400M的空间(里面全部是乱七八糟的东西) 动作:删除/tmp目录 后果:造成只能启动到控制台模式 应急: 1 创建目录:#mkdir /tmp 结果系统在控制台模式登录和X win ...

  7. linux下tmp目录属性,Linux:文件夹属性及umask

    回顾: 文件在小,也要占用一个Block 如:echo > a1.log ls a1.log(文件大小为1k) du a1.log(文件大小也应该为1k,如果不是1k,可能selinux是打开的 ...

  8. 嵌入式Linux中tmp目录大小修改

    嵌入式项目过程中有的时候需要扩展下/tmp目录的大小,如何实现: 通过df -h可以查看到/tmp目录的大小,文件类型 Filesystem Size Used Available Use% Moun ...

  9. linux vi 是目录,linux基本操作之目录、vi等

    目录在文件类型上用d标示,用/分隔目录层,对每个shell和操作环境,都有一个当前工作目录. 目录也是一种权限.(u,g,o) 强制位s chmod u+x 强制权限. 冒险位x chmod u+t ...

最新文章

  1. JavaSE--jdom解析之bom
  2. python类不支持多继承_Java和C#等不允许多继承类,但是Python是可以的
  3. spark-shuffle分析
  4. revit建筑样板_Revit出建筑施工图步骤及注意事项
  5. 贴片电容耐压值一般都是多少?
  6. 生信宝典之傻瓜式(五) 文献挖掘查找指定基因调控网络
  7. 两个git库之间迁移_从一个git仓库迁移代码到另一个git仓库(亲测有效版)(转)...
  8. 如何利用FNDLOAD更新FORM的Personalization(Moving Personalizations between instances)
  9. Wordpress 2.91 的一些良好改进
  10. 计算机机房维护与管理,计算机机房的管理与维护.doc
  11. 实现atoi函数(C++实现)
  12. PDFcrack暴力破解pdf密码
  13. 恩施机器人编程_恩施武汉机器人激光切割机
  14. java 程序员职业规划,详细说明
  15. visio如何粘附或取消粘附连接线
  16. ImageJ的Macro语言实例教程
  17. 51单片机流水灯电路以及C代码
  18. Mac终端链接服务器记住密码
  19. JS打印菱形、简易计算器
  20. (73)C#里怎么样调用WIN API的函数时传送结构或指针对象

热门文章

  1. 开发时,尤其是最初的版本,只要保持有80%的功能即可
  2. 第二十四课:能量和功率
  3. WPF中的容器控件——GridSplit
  4. 日本上市公司提供BTC, BCH, ETH担保的贷款
  5. BCH的去中心化理念自治
  6. BCH大区块导致中心化其实是伪命题
  7. Day 49 Nginx
  8. MySQL存储引擎--------Federated最佳实战
  9. 【Android开发—智能家居系列】(四):UDP通信发送指令
  10. 【转】Android开发中adb启动失败adb连接异常的解决办法 offline