Windows 下的 Unix tail 和 grep 等效项

2023-11-30

我们有以下 unix 命令:

/usr/bin/tail -n 1 %{path} | grep --silent -F "%{message}" && rm -f %{path}%

This:

  1. /usr/bin/tail -n 1 %{path}获取文件中的最后一行path变量指的是

  2. | grep --silent -F "%{message}"将输出传输到另一个命令,grep,它检查前一个命令的输出是否等于message

  3. && rm -f %{path}%如果值相等,则删除引用的文件path

上面的行位于配置文件中,允许对底层操作系统进行调用。

我想在 Windows 上复制该功能。 我试过这个:

command => 'powershell -Command "& {Get-Item $args[0] | ? { (Get-Content $_ -Tail 1).Contains($args[1]) }| Remove-Item -Force}" "'%path%'" "'%message%'"'

抛出此错误:

Error: Expected one of #, {, } at line 15, column 131 (byte 498)

第 15 行是配置文件中包含上述内容的行。

Thanks


PowerShell解决方案:

$path    = 'C:\path\to\your.txt'
$message = 'message'

Get-Item $path | ? { (Get-Content $_ -Tail 1).Contains($message) } | Remove-Item -Force

如果您想从命令行运行它,请像这样调用它:

powershell -Command "& {Get-Item $args[0] | ? { (Get-Content $_ -Tail 1).Contains($args[1]) } | Remove-Item -Force}" "'C:\path\to\your.txt'" "'message'"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Windows 下的 Unix tail 和 grep 等效项 的相关文章

随机推荐

  • 属性复制在Cocoa框架中意味着什么?(如UITabBar的items属性)

    在 Tab Bar h 中 正确签名的副本 property nonatomic copy NSArray items 获取 设置可见 这是一个数组 复制 是什么意思 复制 NSArray 容器 obj 复制 NSArray 包含的每个 o
  • 从 DataGridView 获取 DataTable 并尊重过滤器和排序

    我有一个System Windows Forms DataGridView充满了数据 我正在使用这样的代码 System Data DataTable dataTable1 System Windows Forms BindingSourc
  • 在 Outlook 中粘贴表格之前写入 - Excel VBA

    我使用以下代码将表格粘贴到 Outlook 上的新电子邮件中 Copy range of interest Dim r As Range Set r Range B2 D5 r Copy Open a new mail item Dim o
  • 选项卡中的图标未显示

    我从 Android 开始 当我尝试使用图标和文本制作 TabHost 时 只有文本可见 如果我将文本保留为空白 则可以看到图标 我想在屏幕上看到两者 有人可以给我建议吗 public void onCreate Bundle savedI
  • 替换除最后一个字符之外的所有字符

    假设我有一串a b c d 如何编写一个方法将该字符串转换为abc d 或者有没有可用的实现方法 到目前为止我已经尝试过的 int dotPlacing propertyName lastIndexOf 12 String modStrin
  • Databricks 上的 Shap 值绘图错误,但在本地工作

    我想做一个简单的形状分析并绘制 shap force plot 我注意到它在 ipynb 文件中本地工作没有任何问题 但在 Databricks 上失败并显示以下错误消息 Visualization omitted Javascript l
  • 如何在 Google appengine 中加密 ZipOutputStream?

    我正在使用 Java 在 GAE 中创建 zip 文件 并使用 ZipOutputStream 将它们上传到 Google Cloud Storage 但是我需要加密文件 但我不知道如何加密 有谁知道如何在 Google Appengine
  • Firefox 处理 xxx.submit(),Safari 不处理...可以做什么?

    当用户从菜单中选择 释放鼠标 选项之一时 我试图使下拉菜单发布表单 此代码在 FF 中运行良好 但 Safari 由于某种原因不提交表单 我使用 jquery 重新编写了代码 以查看 jquery 的 submit 实现是否可以更好地处理浏
  • C# Alpha Blend 透明 PictureBox

    我的表单上显示了一个网络摄像头提要 并且想在其上绘图 我本来打算使用图片框来完成此操作 但我发现 PictureBox 不支持真正的透明度 而只支持其所在表单的颜色 它也不支持字母混合 这就是我希望它显示的方式 类似于表单的显示方式 有谁知
  • CLLocationManager requestWhenInUseAuthorization() 不起作用

    我尝试在我的 iOS 应用程序中使用位置服务 但出于某种原因requestWhenInUseAuthorization不管用 当用户第一次使用该应用程序时 会像平常一样出现提示请求权限 但当您第二次打开该应用程序时 由于某种原因didCha
  • 如何在“绑定时”获取 ListBox 中项目的 ListBoxItem

    我有一个带有 Foo 对象的 ListBox 并且根据一些事件我禁用 启用 ListBox 中的 ListBoxItems 使用 ListBox Items 属性 我找到 Foo 对象 根据我的理解 我需要使用以下函数来获取 Foo 的 L
  • excel vba插入带格式的行

    我有一个宏 它根据 Excel 2007 中的用户输入插入多行 一切正常 但我仍然有一个小问题 我想复制上面行的完整格式 它仅适用于行中的某些单元格 这是插入代码 Rows B B Insert Shift xlDown CopyOrigi
  • MySQL 中的“REPLACE”和“INSERT ... ON DUPLICATE KEY UPDATE”之间有什么实际区别?

    我需要的是使用特定键设置记录的所有字段的值 该键实际上是复合键 如果还没有具有该键的记录 则插入该记录 REPLACE似乎是为了完成这项工作 但同时它的手册页表明INSERT ON DUPLICATE KEY UPDATE 我应该更好地选择
  • 使用 pythoncurses 逐页或逐行滚动

    我正在尝试使用 pythoncurses 在窗口中写入一些文本 但是当我到达窗口的尽头时我得到了addstr returned ERR 如何逐页或逐行滚动输出 如何绑定空格键或向下箭头 这是我的代码 try screen curses in
  • ITuner::put_TuneRequest() 调用被忽略

    我有一个带有 Microsoft DVBT Network Provider AVerMedia BDA DVBT Tuner AVerMEdia BDA Digital Capture Sample Grabber 和 NULL Rend
  • 如何覆盖每个环境的 Symfony2 语义配置?

    参数 yml time limit 8 my ui yml my ui time limit time limit 配置 yml imports resource my ui yml 然后我可以通过我的包中的扩展和配置类在我的控制器中访问这
  • 确保用户制作的 HTML 模板安全

    我希望允许用户创建微小的模板 然后我使用预定义的上下文在 Django 中呈现这些模板 我假设 Django 渲染是安全的 我问了一个关于这个的问题before 但仍然存在跨站点脚本的风险 我想防止这种情况发生 这些模板的主要要求之一是用户
  • 切换 MSB 的最佳方法是什么?

    所以我想切换我的数字的最高有效位 这是一个例子 x 100101 then answer should be 00101 我有一台 64 位机器 因此我不希望答案是100000 lt 51 0 s gt 100101我想到的一种方法是计算我
  • Visual Studio FsUnit 测试设置 - 异常 NUnit.Engine.NUnitEngineException

    我使用的是 Visual Studio 2013 安装了 FsUnit 2 2 0 它需要 NUnit 3 2 1 和 FSharpCore 3 1 我创建了一个单独的测试项目 并在其中放置了一个测试装置和测试 我的平台是 x64 Win
  • Windows 下的 Unix tail 和 grep 等效项

    我们有以下 unix 命令 usr bin tail n 1 path grep silent F message rm f path This usr bin tail n 1 path 获取文件中的最后一行path变量指的是 grep