首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

空文件的grep -v -f不同于OS X上的脚本和命令行

在Linux系统中,grep是一个强大的文本搜索工具,用于在文件中查找匹配指定模式的行。而grep -v -f命令则用于从文件中排除匹配指定模式的行。

在空文件的情况下,grep -v -f命令在Linux和OS X上的行为是不同的。

在Linux系统中,当空文件作为-f选项的参数传递给grep -v命令时,它会将所有输入行都视为不匹配的行,并将它们全部输出。这是因为在Linux中,grep -v命令会将空文件视为一个不包含任何模式的文件,因此不会排除任何行。

而在OS X系统中,当空文件作为-f选项的参数传递给grep -v命令时,它会将所有输入行都视为匹配的行,并将它们全部排除。这是因为在OS X中,grep -v命令会将空文件视为一个包含空模式的文件,因此会排除所有行。

因此,空文件的grep -v -f命令在Linux和OS X上的行为是不同的,需要根据具体的操作系统来确定其行为。

关于grep命令的更多信息,您可以参考腾讯云的文档:grep命令

请注意,本回答中没有提及亚马逊AWS、Azure、阿里云、华为云、天翼云、GoDaddy、Namecheap、Google等流行的云计算品牌商。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

linux Bash脚本判别使用者身份方法示例

比如用sudo时候,脚本~或$HOME指代用户文件这个变量,到底是应该指向我真正用户文件夹如/home/pi呢,还是指向了超级管理员用户文件夹/root/呢?...实际它指向了/root/文件夹,这是我们绝对不想要。但是很多命令如安装个程序,都不得不用sudo,那怎么办?.../test.sh这样执行方式下找出正确解决方案。 以下为脚本各种语句变量以及显示结果: # (不推荐!)...$ whoami >>> root # 不同于whoami,能够指出当前有哪些用户登录电脑,包括本机登录ssh登录所有人 $ who am i >>> 有些机器显示为 >>> Mac显示:...再进一步,如果脚本没有以sudo方式运行呢?这时候root用户普通用户环境变量下都是没有SUDO_USER这个变量

2.5K20

Linux 命令行艺术

Bash 变量要用引号括起来,比如 " 在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。...“有用” 仅限 OS X 系统 以下是仅限于 OS X 系统技巧。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix...更多资源 awesome-shell:一份精心组织命令行工具及资源列表。 awesome-osx-command-line:一份针对 OS X 命令行更深入指南。

4.5K10
  • GitHub 60000+ Star 登顶,命令行艺术!

    命令行艺术 前言 基础 日常使用 文件及数据处理 系统调试 单行脚本 冷门但有用 仅限 OS X 系统 仅限 Windows 系统 更多资源 免责声明 ?...在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。...“有用” 八、仅限 OS X 系统 以下是仅限于 OS X 系统技巧。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix

    93020

    GitHub 60000+ Star 登顶,命令行艺术!

    命令行艺术 前言 基础 日常使用 文件及数据处理 系统调试 单行脚本 冷门但有用 仅限 OS X 系统 仅限 Windows 系统 更多资源 免责声明 ?...在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。...“有用” 八、仅限 OS X 系统 以下是仅限于 OS X 系统技巧。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix

    80910

    GitHub 60000+ Star 登顶,命令行艺术!

    命令行艺术 前言 基础 日常使用 文件及数据处理 系统调试 单行脚本 冷门但有用 仅限 OS X 系统 仅限 Windows 系统 更多资源 免责声明 ?...在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。...“有用” 八、仅限 OS X 系统 以下是仅限于 OS X 系统技巧。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix

    76720

    G站 50000+ Star 登顶,这份命令行艺术请查收!

    命令行艺术 ? 前言 基础 日常使用 文件及数据处理 系统调试 单行脚本 冷门但有用 仅限 OS X 系统 仅限 Windows 系统 更多资源 免责声明 ?...熟悉正则表达式,学会使用 grep/egrep,它们参数中 -i,-o,-v,-A,-B -C 这些是很常用并值得认真学习。...在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix

    84610

    蓝桥ROS机器人之命令行实践

    在 Bash 脚本中,使用 set -x 去调试输出(或者使用它变体 set -v,它会记录原始输入,包括多余参数注释)。... sl:额,这主要取决于你是否认为蒸汽火车莫名其妙名人名言是否“有用” 仅限 OS X 系统 以下是仅限于 OS X 系统技巧。...这些可以用来在 OS X 系统安装以上大多数命令。 用 pbcopy 复制任何命令输出到桌面应用,用 pbpaste 粘贴输入。...注意 OS X 系统是基于 BSD UNIX ,许多命令(例如 ps,ls,tail,awk,sed)都 Linux 中有微妙不同( Linux 很大程度上受到了 System V-style Unix...更多资源 awesome-shell:一份精心组织命令行工具及资源列表。 awesome-osx-command-line:一份针对 OS X 命令行更深入指南。

    84720

    shell脚本中常用命令复习

    shell脚本可以让降低大家工作强度,提升大家管理能力薪资报酬,还可以让大家有时间学习提升自己,更能让你有时间喝茶撩妹子。...学习之前首先要弄清什么是shell脚本: shell脚本本质就是要将完成一件事情所有命令按照执行先后顺序写入一个文件,并给予文件执行权限 so!...(stdin)数据转换成命令行参数,也能够从文件输出中读取数据。..." ' ': 单引号,脚本中字符串要用单引号引起来,但是不同于双引号是,单引号不解释变量 " ": 双引号,脚本中出现字符串可以用双引号引起来...:" "\t"|grep -i "bash"|grep -v "root" ayitula x /bin/bash 二、学习视频 视频:数据检索命令-grep 视频:数据截取命令-cut&tr 视频

    83110

    【DB笔试面试275】 与SHELL脚本相关一些笔试面试题(目前36道,后续持续更新)

    答案:下面列出了Bourne shell为命令行设置特殊变量: $0 命令行脚本名字 $1 第一个命令行参数 $2 第二个命令行参数 ….. ……. $9 第九个命令行参数...$# 命令行参数数量 $* 所有命令行参数,以空格隔开 真题18、在SHELL脚本中,如何测试文件?...r 文件名 如果文件存在并可读,那么返回true -s 文件名 如果文件存在并且不为,那么返回true -w 文件名 如果文件存在并可写,那么返回true -x 文件名 如果文件存在并可执行...答案: grep -c '^..*$' a.txt 或 grep -v '^$' a.txt | wc -l 真题26、文件b.txt,每行以“:”符分成5列,如“1:apple:3:2012-10-...命令如下: netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head

    88630

    命令行数据科学第二版:十、多语言数据科学

    我们在第四章中非常清楚地看到了这一点,在那里我们用 Bash、Python R 创建了命令行工具。此外,我们直接在 CSV 文件执行 SQL 查询,并从命令行执行 R 表达式。...图 10.1:带有文件浏览器、代码编辑器、笔记本终端 JupyterLab 屏幕截图这个笔记本也包含了个叫做%%bash单元,它可以让你写多行 Bash 脚本....你最好用一个单独文件创建 Bash 脚本,并且用感叹号来执行它 (!). 10.3 Python subprocess模块允许您从 Python 运行命令行工具,并连接到它们标准输入输出。...这只是对管道连接引用(就像stdinstdout一样)。实际没有数据写入磁盘。 ➋ 工具grep将只保留包含b行,并将它们写入命名管道out。 ➌ 将两个值写入 Shell 命令标准输入。...pipe()转换也在 PySpark, SparkR, SparklyR 中提供。 如果您想在管道中使用定制命令行工具,那么您需要确保它存在于集群中所有节点(称为执行器)。

    1.2K20

    如何在ubuntu定时抓取错误日志并发至管理员信箱

    被当成是一种脚本语言来设计,其运作方式与直译语言相当,由Unix shell扮演命令行解释器角色,在读取shell脚本之后,依序运行其中shell命令,之后输出结果。...依照Unix shell各种不同类型,shell脚本也有各种不同方言。在DOS、OS/2、Microsoft Windows中批处理文件,跟shell脚本有类似的功能。...脚本中用到命令 grep, Linux系统中grep命令是一种强大文本搜索工具,它能使用正则表达式搜索文本,并把匹 配行打印出来。...sendemail, 邮件发送工具,可以看这篇文章如何在ubuntu使用sendemail发送邮件。 comm, 逐行比较两个文件内容。 脚本程序流程 ? 程序流程 脚本 #!...> /tmp/diff if [ -s /tmp/diff ] then # 如果比较结果非,则发送 sendemail -f 发件人地址 -t 管理员邮箱 -u "ypk

    63630

    命令行数据科学第二版 四、创建命令行工具

    4.1 概述 在本章中,您将学习如何: 将一行程序转换成参数化 Shell 脚本 将现有的 Python R 代码转换成可重用命令行工具 本章从以下文件开始: $ cd /data/ch04...用-F将那些模式解释为固定字符串。只选择那些包含与-w构成完整单词匹配行。用-v选择不匹配行。 每一个命令行都提供了一个帮助说明....我们正在使用文件扩展名.sh说明我们正在创建一个 Shell 脚本。然而,命令行工具不需要有扩展。事实命令行工具很少有扩展。...用不同于 Bash 另一种编程语言创建命令行工具有三个主要原因。首先,您可能已经有了一些希望能够从命令行使用代码。其次,命令行工具最终会包含一百多行 Bash 代码。...4.3.2 处理来自标准输入流数据 在前面的两个代码片段中,Python R 都一次性读取了完整标准输入。在命令行,大多数工具以流方式将数据传输到下一个命令行工具。

    2.2K40
    领券