Linux之过滤器

Linux之过滤器

过滤器就是读取数据,对数据执行一些操作后,写入数据的程序。可以与管道符配合使用。本文将列举一些Linux中我认为常用的过滤器


cat

cat(catenate):将标准输入传向标准输出(但最重要的作用是组合文件)

听起来好像没啥用,但通过和重定向结合,他有许多有趣的用法,例如

  • cat > data:快速创建文件,将键盘输入的内容写入data文件中,输入结束后按^D发送eof信号
  • cat < data:快速显示文件,将文件的内容打印到屏幕上
  • cata < data > newdata:复制文件,将data的内容复制到newdata中

但由于cat通常都是需要从文件读取数据的,所以cat将文件名作为了参数,相当于省略了<,同时还支持多个文件,语法为

cat [-bns] [file…]

当指定多个文件时,将依次读取每个文件的数据,并依次输出,这就是cat最常用的用法:组合文件,例如

cat data newdata

他的一些常用选项的含义

  • -n(number):在每行前面加一个行号
  • -b(blank):和-n选项一起使用,告诉cat不要对空白行编号
  • -s(squeeze):将多个连续空白行替换为一个空白行

还有两个类似的命令tac(cat反转),用法和cat一样,但会把输出各行的顺序反转。命令rev,会把各行中的字符顺序反转。


head和tail

当文件太大(比如log),我们可以用headtail查看文件头/尾部的部分数据,其语法如下

tail [-n lines] [file]
head [-n lines] [file]

例如

tail -n 1000 app.log
head -n 1000 app.log

grep

查找对应的内容,语法为:

grep [options] pattern [file…]

其中pattern是要查找的内容,可以用正则,file是被搜索的文件,将查找出含有搜索内容的行。例如

grep root /etc/passwd

下面列举一些我认为常用的选项(省略-,注意大小写)

  • c:显示所查找到的行数量
  • i:忽略大小写
  • n:显示时展示行号
  • l:显示包含搜索内容的文件名
  • w:搜索完整单词
  • x:搜索完整行,
  • v:反转,显示不含有搜索内容的行
  • r:搜索整个目录,搜索指定目录及其子目录下所有的文件
  • E:使用扩展正则表达式,功能更强大

nl

添加行号,语法为

nl file

默认会对所有非空行添加行号,若需要对所有行都添加,可以使用

nl -b a file

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
布隆过滤器是一种用于判断某个元素是否存在于一个集合中的数据结构。在Linux Redis中,可以通过安装和使用RedisBloom模块来实现布隆过滤器的功能。 要安装RedisBloom模块,可以按照以下步骤进行操作: 1. 找到RedisBloom的源码压缩包地址。 2. 在Linux系统中进行下载并解压源码压缩包。 3. 进入解压后的目录,并进行编译。 4. 将编译后的redisbloom.so文件移动到Redis的安装目录下,例如/usr/local/redis。 完成安装后,可以启动Redis服务器,并使用Redis客户端进行布隆过滤器的操作。布隆过滤器的使用方式和命令可以参考RedisBloom模块的官方文档或者相关教程。 需要注意的是,布隆过滤器也可能存在被穿透的情况。这意味着布隆过滤器判断某个元素不存在时,仍然有一定的概率会误判为存在。因此,在使用布隆过滤器时需要权衡其特点和适用场景,以保证判断的准确性。 希望以上信息对你有帮助。如果你还有其他问题,请随时提问。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Redis 的布隆过滤器的安装及其使用](https://blog.csdn.net/qq_40230026/article/details/123048191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Linux Redis布隆过滤器](https://blog.csdn.net/u013271384/article/details/129480958)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值