如何使 bash 脚本与一个又一个命令一起工作?

2024-04-15

我有一个如下所示的 bash 脚本。首先,它将sorted.bam 文件作为输入,并使用“stringtie”工具将每个样本gtf 作为输出。然后每个样本 gtf 的路径将被赋予到 mergelist.txt 中。然后对它们使用“stringtie merge”以获得“stringtie_merged.gtf”。

我总共有 40 个排序的.bam 文件。

for sample in /path/*.sorted.bam
do
dir="/pathto/hisat2_output"
dir2="/pathto/folder"
base=`basename $sample '.sorted.bam'`
"stringtie -p 8 -G gencode.v27.primary_assembly.annotation_nochr.gtf -o ${dir2}/stringtie_output/${base}/${base}_GRCh38.gtf -l ${dir2}/stringtie_output/${base}/${base} ${dir}/${base}.sorted.bam; ls ${dir2}/stringtie_output/*/*_GRCh38.gtf > mergelist.txt; stringtie --merge -p 8 -G gencode.v27.primary_assembly.annotation_nochr.gtf -o ${dir2}/stringtie_output/stringtie_merged.gtf mergelist.txt"
done

我用分隔命令;在所有排序的.bam 文件上运行脚本并完成作业后,我发现 mergelist.txt 仅具有 33 个示例 gtf 的路径。这意味着 merge list.txt 中缺少其他 7 个示例 gtfs 的路径。

将命令与分隔开;正确的一种还是有其他方法?

该脚本应首先使用一个命令,并在文本文件中给出输出路径,然后使用另一个命令。


您没有用分号分隔命令;您调用了一个嵌入了分号的命令。考虑简单的脚本:

"ls; pwd"

这个脚本的作用是not call ls其次是pwd。相反,shell 将搜索 PATH 来查找名为的文件ls; pwd(即名称中带有分号和空格的文件),可能找不到该文件并以错误消息响应。您需要删除双引号。

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

如何使 bash 脚本与一个又一个命令一起工作? 的相关文章

随机推荐

  • 悬停时隐藏 div 的子元素

    有没有办法让这项工作发挥作用 我想将鼠标悬停在外部div并隐藏子元素而不使用 javascript 这样的事情可能吗 fullwrap nth child 1 hover display none 要隐藏子元素 您需要这样的结构 paren
  • Mac 上出现“SSL: CERTIFICATE_VERIFY_FAILED”错误

    我本来想解决 SSL CERTIFICATE VERIFY FAILED 问题 因为我使用 mac 和 python 3 很多人说我应该运行 Applications Python 3 6 Install Certificates comm
  • 使用 PHP 格式化 API JSON 响应

    我有一个 api 我想使用 php 解析其中的数据 这就是回应 success true data medicineId 12 medicineName Abacavir medicineId 10 medicineName Alclome
  • python setuptools setup.cfg:在构建目录中包含主包和子包

    我想使用以下命令为我的 python 软件创建一个 pip 包安装程序 cfg https setuptools pypa io en latest userguide declarative config html文件 我的程序目前的结构
  • 如何在Delphi 10.2中使用ToolsAPI获取当前项目的版本号

    在 Delphi 2007 中 我可以使用以下 ToolsAPI 调用轻松获取当前项目的版本信息 procedure Test var ProjectOptions IOTAProjectOptions Project IOTAProjec
  • 我无法在 Netbeans 7.0 上创建 Rails 应用程序。挂在25%处

    我的开发环境 是 Win7旗舰版 红宝石 1 9 2p180 铁轨3 0 9 宝石1 8 5 sqlite3 和 mysql2 gems 已安装 我的IDE是netbeans 7 0 用于 netbeans 7 0 的 ruby 插件已安装
  • 在移动 Safari 中检测 iOS5(首选 JavaScript)

    iOS5 中引入的新固定定位损坏了我的网络应用程序 我需要一种方法来检测 iOS5 用户 如何检测iOS5 浏览器代理字符串是什么 首选 JavaScript 谢谢 从SO问题来看 iOS 5 用户代理字符串是什么 https stacko
  • 将 int 转换为 size_t

    当我传递一个时 我想知道 clang 编译器的以下警告integer to an std initializer list lt size t gt non constant expression cannot be narrowed fr
  • 使用boilerpipe提取非英文文章

    我正在尝试使用锅炉管 http code google com p boilerpipe java 库 用于从一组网站中提取新闻文章 它非常适合英文文本 但对于带有特殊字符的文本 例如带有重音符号的单词 hist ria 无法正确提取这些特
  • Firebase 按顺序获取数据

    我正在使用 Firebase 直到最近才按字母顺序获取数据时没有遇到任何问题 我从来没有使用过查询 我总是只使用数据快照并对其进行一一排序 最近 数据并不总是按字母顺序排列snapVal 如何才能获得按字母顺序排序的数据 snapVal 就
  • commonModalDialogClose(SP.UI.DialogResult.OK, someValue) 抛出错误

    在 SharePoint 2010 中 我有一个可视化 Web 部件 它使用SP UI ModalDialog showModalDialog 该对话框显示正常 但是当我尝试使用关闭对话框时 SP UI ModalDialog common
  • USBInterfaceOpen总是报kIOReturnExclusiveAccess错误

    最近我遇到了这个问题 很头疼 我已经在这个问题上花了一个星期了 但仍然失败 希望您能帮我把这块石头踢开 非常感谢 我的问题 我们公司为iPhone生产USB存储设备 实际上这个存储设备中有一个SDCard 现在 我们想要开发一个 Mac 应
  • li 菜单需要“selected”类

    当用户单击菜单选项卡时 我希望它保持选中状态 并带有白色按钮 这是我的尝试 但它不起作用 如果您单击主页按钮 它不会保持白色 html ul li a href span HOME span a li li a href en us abo
  • 带 redux 的进度条

    我的 React Redux 应用程序中有一个后台上传过程 更新非常频繁 我的减速器看起来像这样 export default function progressReducer state initialState action switc
  • struct - 使用 qsort 对 C 字符串进行排序

    我正在对一堆 IP 进行排序 但由于某种原因 它们的顺序错误 我不太确定问题出在哪里 66 249 71 3 190 148 164 245 207 46 232 182 190 148 164 245 190 148 164 245 20
  • Google 应用已发布到内部测试轨道,但无法找到/下载

    我已成功完成 APK 到内部测试轨道的发布过程 但是 当我尝试使用下面屏幕截图中的 在 GOOGLE PLAY 上查看 链接查看 Google Play 商店上下载的应用程序时 it opens a new window with the
  • 超链接在 Android UC 浏览器中不起作用

    我被一个问题困扰 我正在尝试通过放置在我的网站中的超链接打开 Android 应用程序 下面是链接 href intent Intent action com example myapp category android intent ca
  • 在 Objective-C 中,我可以在 c 浮点数组上声明 @property 吗?

    thing h interface Thing NSObject float stuff 30 property float stuff end thing m implementation Thing synthesize stuff e
  • 玩!没有正确关闭 H2

    我正在使用 Play 编写一个部署在 Tomcat 中的 Web 应用程序 因为应用程序不会处理太多数据 所以我将默认的 H2 数据库与 Hibernate 一起使用 当我想要部署新版本的应用程序时 我关闭 tomcat 擦除旧的 web
  • 如何使 bash 脚本与一个又一个命令一起工作?

    我有一个如下所示的 bash 脚本 首先 它将sorted bam 文件作为输入 并使用 stringtie 工具将每个样本gtf 作为输出 然后每个样本 gtf 的路径将被赋予到 mergelist txt 中 然后对它们使用 strin