基本指令(2):通配符,重定向,命令行管道

一、通配符

shell 复制代码
rm -rf ./*
# * ------ 通配符,指定路径下的所有文件(不包括隐藏文件)

二、重定向

在理解重定向前,先要有一个概念:Linux下一切皆文件,大部分硬件设备都可以看做有读写方法,只不过有些方法可以为空。

e.g.

shell 复制代码
echo "hello Linux"

显示器文件写入 hello Linux

shell 复制代码
cat

键盘文件读取数据,

1.1 输出重定向
shell 复制代码
echo "hello Linux" > file.txt
# > 为输出重定向符

hello Linuxfile.txt 进行文件写入(文件不存在时会自动创建)。

shell 复制代码
echo "" > file.txt
复制代码
> file.txt

以上两条指令,都可以做到

  1. 创建一个 file.txt 空文件。
  2. 清空 file.txt 文件。

<

使用 > 向文件中写入数据时,默认会先清除文件内容。

如果想要在文件内容末尾追加写入,则需要使用追加重定向 >>

1.2 输入重定向

假设在当前工作目录下,已创建 file.txt 。使用 nano ,先对其进行文件写入。

shell 复制代码
cat < file.txt
# < 为输入重定向符

三、命令行管道

file.txt 内写入十万行数据

shell 复制代码
i=0; while [ $i -le 100000 ]; do echo "hello $i"; let i++; done > file.txt

如何获取其中第80000 ~ 80010行数据?

head -80010 作为 tail -10 的输入。

shell 复制代码
head -80010 file.txt > temp.txt
tail -10 temp.txt

是否有办法,在不创建"临时文件"的情况下,获取到目标的十行数据?

需要用到命令行管道 |

shell 复制代码
head -80010 file.txt | tail -10
相关推荐
人猿泰飞41 分钟前
在Ubuntu-22.04.5中安装ONLYOFFICE DocSpace(协作空间)【注意:安装失败,谨慎参考!】
java·linux·运维·python·ubuntu·项目管理·onlyoffice
CAE虚拟与现实43 分钟前
修改wsl中发行版Ubuntu的主机名
linux·运维·ubuntu·wsl·wsl2·修改主机名
开发小能手-roy1 小时前
Ubuntu服务器性能调优指南:从基础工具到系统稳定性提升
linux·运维·服务器·ubuntu
潘yi.1 小时前
Shell编程之正则表达式与文本处理器
linux·运维·正则表达式
涛涛讲AI1 小时前
wkhtmltopdf 实现批量对网页转为图片的好工具,快速实现大量卡片制作
linux·服务器·windows·windows效率工具
破刺不会编程1 小时前
什么是进程?
linux·运维·服务器
大数据魔法师2 小时前
Redis(一) - Redis安装教程(Windows + Linux)
linux·windows·redis
Y1anoohh2 小时前
驱动学习专栏--字符设备驱动篇--2_字符设备注册与注销
linux·c语言·驱动开发·学习
.R^O^3 小时前
计算机知识
linux·服务器·网络·安全
卡戎-caryon3 小时前
【Linux网络与网络编程】11.数据链路层mac帧协议&&ARP协议
linux·服务器·网络·笔记·tcp/ip·数据链路层