小编The*_*Cat的帖子

tail 是否读取整个文件?

如果我想要tail一个 25 GB 的文本文件,该tail命令会读取整个文件吗?

由于文件可能分散在磁盘上,我想它必须如此,但我不太了解这种内部结构。

tail

115
推荐指数
3
解决办法
1万
查看次数

多次按 ctrl-c 会使正在运行的程序关闭得更快吗?

我经常开始读​​取一个大文件,然后在一段时间后想退出,但是从按
Ctrl+C到程序停止有延迟。是否有可能通过多次按Ctrl+C键来缩短延迟?还是我在浪费我的按键?

process kill signals

41
推荐指数
3
解决办法
9342
查看次数

gunzip 目录中的所有 .gz 文件

我有一个包含大量.txt.gz文件的目录(其中名称不遵循特定模式。)

gunzip他们来说最简单的方法是什么?我想保留原来的名称,让他们从去whatevz.txt.gzwhatevz.txt

gzip

30
推荐指数
2
解决办法
9万
查看次数

管道搜索词(不是文件名)到 grep

我想从文件中挑选出包含给定数字的某些行。我要搜索的文件名为os_clusters/piRNA_clusters.bed.

awk '{if (a[$0]++ == 0) {split($0,b,"."); ;split(b[1],c,"r"); print c[3]}};' test_non_enriched | xargs grep {} os_clusters/piRNA_clusters.bed
Run Code Online (Sandbox Code Playgroud)

第一部分在管道之前起作用——它产生要搜索的术语,例如 8707、8824 等。但是,后一部分没有。

awk '' ... | xargs grep {} os_clusters/piRNA_clusters.bed
Run Code Online (Sandbox Code Playgroud)

它不是在目标文件中搜索管道产生的术语,而是将搜索术语视为输入文件。因此,我收到如下错误消息:

grep: 8707: No such file or directory
grep: 8824: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我需要更改什么才能在文件中搜索os_clusters/piRNA_clusters.bed管道产生的术语?

grep bash pipe

26
推荐指数
1
解决办法
3万
查看次数

如何退出sh程序?

我搞砸了命令并写了 sh -man

现在我进入了一个sh-3.2看似不可能退出的程序。

CtrlcCtrlz、 或Ctrlx不起作用。

exit, quit, q,:q也不起作用。

所有谷歌答案都是以编程方式退出 shell 脚本。

command-line shell

20
推荐指数
1
解决办法
8万
查看次数

进程结束或被终止时是否可以获得短信/短信通知?

有一些脚本会在服务器进程完成时发送电子邮件。

但是,我不想只是为了查看工作是否完成而经常查看我的电子邮件。因此,我想收到一条短信。

我的问题与此类似,只需与所有出现的“电子邮件”交换短信:是否有程序可以在进程完成时向我发送通知电子邮件?

您能想出任何解决方法/应用程序/脚本/任何可以在工作完成(或提前结束)时发送短信的方法吗?

shell process monitoring email sms

11
推荐指数
1
解决办法
1万
查看次数

将所有命令的输出重定向到文件,而不仅仅是最后一个

我想用回显向文件添加标题,然后使用命令创建文件的其余部分。这意味着我将使用两个单独的命令。

如何将两个命令的输出写入带有重定向的文件?

我试过了

echo "header line" | cut -c 1-5 input_file > output_file

echo "header line"; cut -c 1-5 input_file > output_file
Run Code Online (Sandbox Code Playgroud)

这只会重定向 cut 命令的输出。

以下命令有效,但感觉很笨拙:

echo "header line" > output_file; cut -c 1-5 input_file >> output_file
Run Code Online (Sandbox Code Playgroud)

解决我的问题的聪明方法是什么?

shell io-redirection

11
推荐指数
3
解决办法
4082
查看次数

三通会减慢管道速度吗?

我想知道三通是否会减慢管道速度。毕竟,将数据写入磁盘比管道传输要慢。

tee 是否等待将数据发送到下一个管道,直到数据写入磁盘?(如果没有,我想 tee 必须将已发送但未写入磁盘的数据排队,这对我来说不太可能。)

$ program1 input.txt | tee intermediate-file.txt | program2 ...
Run Code Online (Sandbox Code Playgroud)

pipe tee

11
推荐指数
2
解决办法
3528
查看次数

在 emacs term-mode 中,char-mode 和 line-mode 是什么?它们有何不同?

谷歌搜索,我只能找到如何在这两者之间切换,但没有描述它们是什么。

那么,什么是char-mode 和 line-mode?常规外壳通常处于什么模式?

emacs

7
推荐指数
1
解决办法
2390
查看次数

shell glob中的“或”

我想 ls 文件名中包含子字符串“s1r”、“s2r”、“s3r”或“s19r”的文件。

我快到了!

拙劣的尝试:

ls *s[123][9?]r*
Run Code Online (Sandbox Code Playgroud)

上面只给了我包含子字符串的文件

s19r

尽管

ls *s[1-3]|[19]r*
Run Code Online (Sandbox Code Playgroud)

返回

-bash: [19]r*: 命令未找到

ls: *s[1-3]: 没有那个文件或目录

也就是说,它不识别或 | 运算符 - 这是有道理的,因为它也用于管道。

如何 ls 包含“s1r”、“s2r”、“s3r”或“s19r”的文件?

osx shell shell-script wildcards

6
推荐指数
1
解决办法
7924
查看次数