首页 > 系统相关 >Linux 下>> << > <介绍

Linux 下>> << > <介绍

时间:2025-01-08 17:59:05浏览次数:3  
标签:文件 重定向 输出 示例 介绍 Linux output txt

在 Linux 或类 Unix 系统的命令行中,>>、<<、> 和 < 是用于重定向输入输出的操作符。它们允许你控制命令的输入和输出,改变数据流的方向。这些符号是常见的 I/O 重定向符号,在 shell 脚本和命令行操作中非常有用。

  1. (输出重定向,覆盖文件)

用于将命令的标准输出(stdout)重定向到一个文件。如果目标文件已存在,> 会覆盖文件内容。如果文件不存在,则会创建该文件。

示例:

echo "Hello, World!" > output.txt

解释:将 “Hello, World!” 写入 output.txt 文件。如果 output.txt 已存在,它将被覆盖。
2. >>(输出重定向,追加到文件)

用于将命令的标准输出追加到一个文件。如果文件不存在,则会创建该文件。如果文件已存在,数据会被追加到文件末尾,而不是覆盖原有内容。

示例:

echo "New line of text" >> output.txt

解释:将 “New line of text” 追加到 output.txt 文件的末尾。如果 output.txt 不存在,则会创建它。
3. <(输入重定向)
< 用于将文件的内容作为命令的标准输入(stdin)。与 > 不同,< 是用来从文件中读取数据,而不是将数据输出到文件。

示例:

sort < input.txt

解释:从 input.txt 文件中读取数据并将其传递给 sort 命令进行排序。
4. <<(Here Document)
<< 用于从命令行中输入多行文本,称为 Here Document。在 << 后面,通常跟一个定界符(标识符),直到遇到该定界符为止,所有的输入行都会作为输入传递给命令。

示例:

cat << EOF
This is line 1
This is line 2
EOF
解释:cat 命令将从 << EOF 后的文本作为输入,直到遇到 EOF 为止。输出将是:
arduino

This is line 1
This is line 2
进阶示例:使用 << 在脚本中动态提供输入

#!/bin/bash
cat << END
Welcome to the script!
This is an example of using here document.
END
解释:这个脚本将输出:
vbnet

Welcome to the script!
This is an example of using here document.
综合示例:
使用 > 和 < 进行文件重定向:

# 将命令输出写入文件
echo "This is a test" > file.txt

# 从文件中读取并输出
cat < file.txt
使用 >> 进行日志记录:

# 记录输出到日志文件中
echo "New log entry" >> /var/log/mylog.log
使用 << 进行多行输入:

# 使用 Here Document 提供多行输入
grep "pattern" << EOF
line 1
line 2
pattern found in this line
EOF
输出将是:

arduino

pattern found in this line

总结:

: 输出重定向,覆盖文件内容。

: 输出重定向,追加内容到文件。
<: 输入重定向,从文件读取输入。
<<: Here Document,用于输入多行内容。
这些重定向符号非常有用,能帮助你更灵活地操作文件和命令行输入输出,尤其是在脚本编写和日志管理中。

标签:文件,重定向,输出,示例,介绍,Linux,output,txt
From: https://blog.csdn.net/jjjxxxhhh123/article/details/145014552

相关文章

  • 学习 - Linux - Centos安装jdk8
    Centos安装jdk8安装包下载地址:通过网盘分享的文件:jdk链接:https://pan.baidu.com/s/1dQTMZk7foPZhOcw55QM_lQ?pwd=sky1提取码:sky1二、上传至Centos系统解压文件并移动到usr/local目录下解压tarzxvfjdk-8u181-linux-x64.tar.gz移动mvjdk1.8.0_181/usr/local/jdk8......
  • Hibiscus辅助开发框架介绍使用
    使用Hibiscus框架快速构建高效Java应用Hibiscus是一个轻量级的Java开发辅助框架,专注于简化开发流程,提升开发效率。无论是代码生成、数据库管理、Redis操作还是性能监控,Hibiscus都能为开发者提供丰富的工具和高效的解决方案。本文将为大家介绍如何快速入门Hibiscus......
  • LInux单机安装Redis
    1.安装gee工具包由于Redis是基于c语言编写的所以安装的时候需要先安装gee以及gcc的依赖,yum云用不了可以看一下这个 linux替换yum源镜像_更换yum镜像源-CSDN博客yuminstall-ygcctcl2.添加redis的压缩包3.上传到Linux上传到 /usr/local/src目录、这个目录......
  • 工业智能网关在数据采集方面的应用介绍
    工业智能网关作为连接现场设备与云端系统的关键桥梁,其数据采集功能显得尤为重要。通过高效、安全的数据采集,工业智能网关不仅提升了生产效率和设备维护的及时性,还为企业的智能化管理提供了坚实的基础。本文将深入探讨工业智能网关在数据采集方面的应用、原理、特点以及最新技术......
  • 腾讯通RTX用户必看的升级攻略,支持移动端及Linux系统
    一、腾讯通RTX用户面临的使用难题随着腾讯通RTX停止更新并下架官网,许多企业用户在日常办公中遇到了无法解决的问题,这些问题不仅制约了办公效率,也加速了企业寻找替代方案的步伐:●不兼容国产系统与移动端:腾讯通RTX仅支持Windows和Mac系统,无法在国产操作系统(如统信UOS、银河麒麟)和......
  • linux 安装 Ollama 框架
    概述Ollama是一款旨在简化大语言模型(LLM)本地部署的工具,支持Windows、Linux和MacOS系统。它提供了一个用户友好的环境,让开发者可以轻松地运行和调优如Qwen、Llama等超过1700种的大语言模型。核心优势多平台兼容性:无缝适配主流操作系统。丰富的模型库:内置了大量预训练模......
  • RabbitMQ高级篇之延迟消息 介绍
    文章目录延迟消息的概念支付与交易服务一致性问题解决方案:延迟消息支付订单流程延迟消息的实现延迟消息的业务场景总结关键技术点业务流程总结实践建议延迟消息的概念延迟消息是指发送者在发送消息时,指定一个时间,消费者在指定时间后才能接收到消息,而不是立即接收。......
  • 基本linux命令行
    **系统信息**arch显示机器的处理器架构(1)uname-m显示机器的处理器架构(2)uname-r显示正在使用的内核版本dmidecode-q显示硬件系统部件-(SMBIOS/DMI)hdparm-i/dev/hda罗列一个磁盘的架构特性hdparm-tT/dev/sda在磁盘上执行测试性读取操作cat/proc/cpuin......
  • 【WRF数据准备】气象驱动数据-ERA5数据相关Vtable介绍
    ERA5数据相关Vtable介绍Vtable文件作用ERA-interimVtable.ERA-interim.plVtable.ERA-interim.mlERA-ECMWFVtable.ECMWFVtable.ECMWF_sigma总结:建议与适用场景参考Vtable文件作用Vtable的作用是定义GRIB文件中变量的解码规则,主要包括:变量代......
  • linux 清空catalina.out日志 不需要重启tomcat(五种方法)
    今天突然发现图表展示查询条件不能用了,想着可能是日志太多一直没清理导致的,结果一查tomcat的log目录居然已经有1012G,果断删除生成的前几年的日志,发现这些都不大,保留2425年其他都删掉还有956G,仔细一看catalina.out居然有865G,上网查看有没有不关闭tomcat就清空这个文件的方法,删除之......