2012-05-16 240 views
0

因此,我正在运行雪豹并使用终端ssh登录到我的工作网络中的远程主机上的旧(全铝)macbook pro。当我在终端中复制和粘贴东西时,我注意到一件奇怪的事情。Mac ssh终端

例如,我将在一个文件中的grep这样的事情:

samtools view sorted-616.bam | grep 'SOLEXA9:1:1:30:3316:10211' | head -n 1 

和它给

SOLEXA9:1:1:30:3316:10211 69 k26_179705 159 0 * = 159 0 TATGCCGCCAAACGCTTCCGCAAAGCTCTGTGTTTGACTATGTAGCGACTA CBCCCCCC @ CCCCCCCCC @CC CC########################## RG:??Z:1

但现在,当我选择它,命令命令+ c复制,然后命令+ v粘贴,它出现如下:

SOLEXA9:1:1:30:3316:1021169k26_1797051590 * = 1590TATGCCGCCAAACGCTTCCGCAAAGCTCTGTGTTTGACTATGTAGCGACTACBCCCCCC @CCCCCCCCC?@CC?CC########################## RG :Z:1

请注意现在字段之间没有空格。有没有特别的方法来复制和粘贴东西?为什么终端以这种方式行事?

回答

2

当你使用pbcopy时会发生什么?

samtools view sorted-616.bam | grep 'SOLEXA9:1:1:30:3316:10211' | head -n 1 | pbcopy 

这应该与copy命令做同样的事情,但不必选择所需的输出。

您是否尝试过其他终端模拟器?我使用iTerm2,因为它将在选择时复制到剪贴板,而不必点击Command-c。

编辑:您可能需要安装Apple的开发工具来获取pbcopy/pbpaste工具。

+0

iTerm2很好用,我想我会转换到这个。感谢您的建议!懒得安装Apple开发工具呃,也需要为他们付钱。 –

+0

Xcode和工具可以免费下载任何带有Apple ID的人。如果您正在运行Lion(10.7),则可以从Mac App Store安装Xcode。命令行工具可在中找到。需要Apple ID才能登录,但如果您还没有Apple ID,则该ID也是免费的。较旧版本的Xcode3可以在同一个URL中找到。 – Mark

1

不知道为什么从粘贴的文本中缺少空格,但我会尝试将输出写入文件,在编辑器中打开文件并尝试查看它是否是标准空格/换行符以外的内容字符。你似乎知道你的管道方式,但无论如何:

samtools view sorted-616.bam | grep 'SOLEXA9:1:1:30:3316:10211' | head -n 1 > file.txt 

这可能取决于主机运行在哪个系统。我在使用linux/unix主机的ssh连接时遇到了一些问题,而Mac-to-Mac通常工作得很好。

+0

发生这种情况时,我复制并粘贴到任何终端上,甚至到vim。不幸的是,我知道我可以将它写入一个文件,但那不是我想要的,这将涉及'grep'50gig文件中的某些内容并等待命令完成以获得一行。我宁愿只是'头-n 30',并使用vim手动复制几行。所以虽然这确实提供了一种可行的解决方法,但它并不能解决问题。 但为尝试:) +1。 –