“通配符”对象没有属性“输出”

2023-12-23

我收到一条相当简单的规则的错误。我必须为另一个程序编写一个任务文件,需要一个 tsv 文件。我从配置文件中读取一定数量的参数,并使用 shell 命令将它们写入文件中。

Code:

rule create_tasks:
    output:
        temp("tasks_{sample}.tsv")
    params:
        ID="{sample}",
        file=lambda wc: samples["path"][wc.sample] ,
        bigwig=lambda wc: samples["bigwig"][wc.sample] ,
        ambig=lambda wc: samples["ambig"][wc.sample] 
    shell:
        
        'echo -e "{params.ID}\t{params.file}" > {output}' 

当我执行工作流程时,出现以下错误:

Building DAG of jobs...
Using shell: /usr/bin/bash
Provided cluster nodes: 1
Job counts:
        count   jobs
        1       create_tasks
        1

[Mon Oct 12 14:48:15 2020]
rule create_tasks:
    output: tasks_sampleA.tsv
    jobid: 0
    wildcards: sample=sampleA

echo -e "sampleA    /Path/To/sampleA.bed               " > tasks_sampleA.tsv
WorkflowError in line 23 of /path/to/workflow.snakefile:
'Wildcards' object has no attribute 'output'
  File "/path/to/miniconda/envs/snakemake_submit/lib/python3.8/site-packages/snakemake/executors/__init__.py", line 111, in run_jobs
  File "/path/to/miniconda/envs/snakemake_submit/lib/python3.8/site-packages/snakemake/executors/__init__.py", line 1233, in run 

我应该提到,其中两个变量是空的,并且我期望 echo 命令中存在制表符/空格。

有人能解释一下为什么snakemake试图在通配符中查找输出吗?我特别困惑,因为它打印了正确的命令。


我遇到了同样的问题。 问题可能在于您如何从命令行调用 Snakemake。 例如,这是我的 Snakefile 规则:

rule sort:
    input:
        "{file}.bam",
    output:
        "{file}.sorted.bam",
        "{file}.sorted.bai",
    shell:
        "sambamba sort {input}"

我什至没有params or wildcards明确地在那里的任何地方。 但是当我在 Slurm HPC 上运行它时,我得到了同样的错误:

snakemake -j 10 -c "sbatch {cluster.params}" -u cluster.yaml

The Wildcards(注意大写“W”)和params对象不符合规则。 它们来自规则的集群执行,在尝试解析规则时抛出错误cluster.yaml file.

我的里面没有集群参数规范cluster.yaml文件为sort规则,所以抛出了错误。 我通过添加解决了这个问题

sort:
    params: "..."

to my cluster.yaml文件。 根据您的情况,在create_tasks: ...列表。 您还可以添加一个__default__: ...默认情况下,列表作为任何作业的默认提交参数,除非它与其他规则匹配。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“通配符”对象没有属性“输出” 的相关文章

  • C# 泛型中的通配符等效项

    假设我有一个通用类 如下所示 public class GeneralPropertyMap
  • 模拟用户输入以使用不同参数多次调用脚本

    我必须使用提供的脚本 该脚本在脚本运行时接受用户输入而不是参数 我无法解决这个问题 脚本的一个例子是 bin bash echo param one read one doSomething echo param two read two
  • 使用 shell 脚本在 docker 容器内运行脚本

    我正在尝试创建一个 shell 脚本来设置 docker 容器 我的脚本文件如下所示 bin bash docker run t i p 5902 5902 name mycontainer privileged myImage new b
  • 如何在 Bash 中将字符串转换为小写

    有办法进去吗bash questions tagged bash将字符串转换为小写字符串 例如 如果我有 a Hi all 我想将其转换为 hi all 有多种方法 POSIX标准 https en m wikipedia org wiki
  • 寻找下一个开放端口

    有没有什么办法 使用基本的 Unix 命令 找到下一个未使用的端口号 从端口 4444 开始向上 我通过 ssh 通过 openssh 进入 Windows XP 计算机 运行 Cygwin 工具并使用 bash shell 谢谢 戴夫 尝
  • VHDL STD_LOGIC_VECTOR 通配符值

    我一直在尝试用 VHDL 代码为我在 Altera DE1 板上实现的简单 16 位处理器编写有限状态机 在有限状态机中 我有一个CASE处理不同 16 位指令的语句 这些指令由 16 位 STD LOGIC VECTOR 带入 FSM 但
  • 将所有脚本参数复制到另一个变量

    我需要复制所有脚本参数并将它们传递给另一个脚本 我尝试这样做 args printargs sh args echo printargs sh args 但在这种情况下 如果我使用包含空格的参数调用我的父脚本 例如 script sh ar
  • 如何将文件中的值分配给 UNIX sh shell 中的变量?

    我一直在搜索这个网站 试图找到这个问题的答案 并发现了几个非常好的答案 不幸的是 它们都不适合我 这是我正在使用的脚本 VALUE cat szpfxct tmp export VALUE echo gt gt LGFILE echo te
  • 使用 sed 将 old-link-url 替换为 new-link-url

    我正在 bash 中编写一个脚本 将 old link url 替换为 new link url 我的问题是 sed 由于斜杠而无法替换 url 如果我只输入一些文字就可以了 my code sed e s old link new lin
  • 退出 bash 脚本但保持进程运行

    我正在运行服务器 需要使用参数执行以下命令 这些脚本目前工作得很好 但问题是当我运行脚本时我无法返回到控制台 它在控制台中保持运行 如果我强行停止它 那么该过程也会停止 我想继续运行该进程并返回到控制台 bin sh php home st
  • Makefile 和通配符

    好吧 这是我当前的 makefile 设置 有一些文件名为public01 c public02 c等等 我正在尝试使用以下方法为每个人制作目标文件public o带有通配符的标签 public o public c hashtable h
  • 如何在bash中仅提取两个字符串之间多行的第一个实例?

    我的文件是 abc 123 xyz abc 675 xyz 我想提取 abc 123 xyz 123 可以是任何东西 重点是我想要第一次出现 我尝试使用这个 sed n abc xyz p filename 但这给了我所有的例子 我怎样才能
  • 是否有可能在linux中找到包含特定文本的文件?

    考虑这种情况 我在文件夹 Example 下有很多文件 如果我需要找到一个包含特定短语 如 Class Example 的文件 我该如何使用 Linux shell 来做到这一点 linux中有类似 定位 的函数可以做到这一点吗 Thank
  • 如何从 Linux 的 shell 中删除所有以 ._ 开头的文件?

    确实如标题所示 我已将许多文件从 Mac 复制到 Raspberry Pi 这导致了许多以前缀开头的多余文件 我想删除以以下开头的文件夹中的每个文件 我该怎么做 尝试类似的方法 cd path to directory rm rf 或者 如
  • 如何使用AWK脚本检查表的所有列数据类型? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 在这里 我正在检查表中第一列的数据类型 但我想知道AWK中表的所有列数据类型 我尝试过 但只能获得一列数据类型 例如 Column 1
  • 如何将 bash 脚本的整个输出保存到文件

    我正在尝试将 bash 脚本的整个输出保存到文件中 我目前在代码开头有一个参数 ip 地址 如下所示 bin bash USAGE Usage 0
  • Bash 脚本大小限制?

    我有一个 bash 脚本 在 RHEL 或 OS X 上运行时出现以下错误 第 62484 行 意外标记 换行符 附近出现语法错误 第 62484 行 o gz 这是一个自动生成的脚本 用于解决我公司使用的 Grid Engine 计算集群
  • 如何将设备屏幕位置转换为发送事件位置?

    我知道关于input tap x yshell 命令 但是 我想了解如何 使用执行单击sendevent命令 我能够通过以下命令实现它 sendevent dev input event5 3 53 X sendevent dev inpu
  • 给出 5 个参数,但在终端中只得到 3 个参数

    我想将一个文件传递给一个c 程序 如果我在 IDE 中执行此操作 test string string lt test txt return argc 5 但在终端上我刚刚得到argc 3 看来 这是因为 什么是 lt 意思是 我正在使用
  • 在 Linux 中禁用历史记录 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 要在 Linux 环境中禁用历史记录 我执行了以下命令 export HISTFILESIZE 0 export HISTSIZE 0 u

随机推荐

  • 在Lua 4中将十进制转换为十六进制?

    我发现这个公式可以在Lua中将十进制数转换为十六进制颜色值 http lua users org lists lua l 2004 09 msg00054 html http lua users org lists lua l 2004 0
  • 尽管启用了计费功能,Google API 密钥仍达到最大请求限制

    我相信我已尽一切努力正确设置对距离矩阵 API 的访问 首先 我创建了一个项目和一个计费帐户 该计费帐户已在此项目上启用 接下来 我启用了距离矩阵 API 并创建了一个不受限制的 目前 API 密钥 这就是我调用 Google 距离矩阵 A
  • 使用 UnboundID SDK 和 SSL 证书文件连接到 Android 应用程序中的 LDAP 服务器

    我正在尝试在 Android 应用程序中连接到 LDAP 服务器 并使用 UnboundID SDK 最近 从不安全的 LDAP 更改为安全的 LDAP 我必须相应地更改应用程序 我已获得 SSL 证书文件来进行验证 我已经使用该文件来制作
  • mySQL 和 PHP 编码

    您好 我对此查询有疑问 SELECT FROM table WHERE name LIKE t st HTML 和 SQL 表都有 utf 8 编码 但不幸的是没有mysql set charset utf 8 我是NOT能够使用它 我尝试
  • 正则表达式中的 \b 和 \>、\< 有什么区别?

    现在 我很困惑 我在正则表达式备忘单中找到了这个 b word boundary lt start of word gt end of word 但在 掌握正则表达式 一书中 它告诉我 lt word boundary gt word bo
  • 适用于 Linux 桌面的代码片段管理器? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 本着https stackoverflow com questions 3349990 code snippet managers for
  • 如何扩展 Twitter Bootstrap 图像轮播以实现动态大小、居中的图像

    我正在尝试扩展默认的 Bootstrap 图像轮播以支持动态大小的图像 最大 500x400 水平和垂直居中 此外 我想保留原始的标题布局 它将标题锚定到图像的底部 标题 div 完全延伸到图像上 但不再进一步 我整理了一个小提琴 它是默认
  • 使用javascript连续滚动页面

    我试图重复一个页面自动滚动到底部的动画 当它到达底部时 我希望它滚动到顶部 然后 永远重复 但是 我什至无法让它执行第一个回调 任何帮助将不胜感激 Code pageScroll pageScrollUp function pageScro
  • 在哪里可以获得实时视频流示例(GStreamer)? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • NHibernate:如何在投影中选择根实体

    Ayende 描述了一种非常好的方法来获取页数 以及单个查询中的特定数据页 http ayende com blog 2334 paged data count with nhibernate the really easy way htt
  • 从下到上动画图像

    我有一棵小树的图像 我想让它从bottom to top使用 jQuery 和 CSS 目前这棵树有bottom位置为 0 并上升animate jQuery 函数 我可以做一个div与树重叠并为其设置动画animate jquery 函数
  • Angular 4使用viewChildran在动态生成的文本框中设置焦点

    我有动态生成的文本框 如下所示 tr td td tr
  • 使用 jaxb2-maven-plugin 从 WSDL 生成类

    我在配置时遇到问题jaxb2 maven plugin从 WSDL 和多个 XSD 文件生成 Java 类 这些文件都存在于同一标准目录中src main xsd 如何将 jaxb2 maven 插件与内联 XSD 一起使用 https s
  • 密码格式无效或未知的哈希算法

    我网站上的一位用户最近在尝试登录时成功触发了此回溯 在 Django Admin 中 他的密码为Invalid password format or unknown hashing algorithm 我不知道是什么原因造成的 到目前为止
  • 用谷歌脚本播放声音

    有没有一种简单的方法可以将声音文件合并到 Google Apps 脚本中 我看到一个帖子尝试以下操作 var audio new Audio alert ogg audio play 我收到错误 ReferenceError 音频 未定义
  • Tableau 过滤重复项

    我有一个与此类似的数据集 正如您所看到的 一些 ABN 附有多个企业名称 而另一些则只有一个 我想创建一个过滤器 允许用户仅查看每个 ABN 有多个名称的行 例如 将过滤掉 ABN 456 的过滤器 我可以想象如何在 SQL 中编写该内容
  • Android Volley 同步请求不起作用

    我正在尝试做一个同步请求到服务器使用请求未来但它不起作用 使用异步完成相同的请求可以正常工作 这是我的代码 public void fetchModules JSONObject response null RequestQueue req
  • Jackson JSON 给出了嵌套类集合的异常

    Jackson JSON 序列化 反序列化此类没有问题 public class MyClass public class Nested public String string public Nested public Nested ne
  • Three.js - 我可以将位置、旋转和缩放“应用”到几何图形吗?

    我想编辑对象的位置 旋转和缩放向量 然后将它们 应用 到几何图形 这会将这些向量清零 但保留变换 例如 假设我导入一个边长为 1 的立方体 立方体的最小和最大顶点位于 0 0 0 and 1 1 1 我将对象的比例设置为 2 2 2 然后将
  • “通配符”对象没有属性“输出”

    我收到一条相当简单的规则的错误 我必须为另一个程序编写一个任务文件 需要一个 tsv 文件 我从配置文件中读取一定数量的参数 并使用 shell 命令将它们写入文件中 Code rule create tasks output temp t