小编ale*_*lex的帖子

为什么使用 -name 和 -regex 都找不到我的目录

我有一个目录~/Documents/machine_learning_coursera/

命令

find . -type d -name '^machine'
Run Code Online (Sandbox Code Playgroud)

没有找到任何东西

我也试过

find . -type d -regextype posix-extended -regex '^machine'
Run Code Online (Sandbox Code Playgroud)

以便匹配字符串的开头而没有。

我也试过-name

find . -type d -regextype posix-extended -regex -name '^machine'
Run Code Online (Sandbox Code Playgroud)

并得到错误:

find: paths must precede expression: `^machine'
Run Code Online (Sandbox Code Playgroud)

我在这里做错了什么?

find pattern-matching

10
推荐指数
3
解决办法
896
查看次数

在 bash 或 zsh 中循环遍历一个文件扩展名或另一个文件扩展名

这在语法上是正确的:

for f in *bw;do echo $f;done
Run Code Online (Sandbox Code Playgroud)

但是我如何添加一个扩展来循环其中一个?

bash zsh for

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

使用 sed 捕获组

我有一个看起来像这样的文件:

chr1    3143567 3143568 .3-2704 1.000000|ENSMUSG00000102693.2
chr1    3143599 3143600 .3-2705 1.000000|ENSMUSG00000102693.2
chr1    3143631 3143632 .3-2706 1.000000|ENSMUSG00000102693.2
chr1    3143663 3143664 .3-2707 1.000000|ENSMUSG00000102693.2
chr1    3143695 3143696 .3-2708 1.000000|ENSMUSG00000102693.2
chr1    3143727 3143728 .3-2709 1.000000|ENSMUSG00000102693.2
Run Code Online (Sandbox Code Playgroud)

我正在编写 2 个 sed 表达式来过滤|第一个表达式之前的所有内容,并且对于结果文件,我会丢弃之后的所有内容,.如下所示:

sed -n -e 's/^.*|//p' original_file.txt > first_result.txt

sed -n -e 's/\..*//p' first_result.txt > final_result.txt

我怎样才能将所有这些写在一行中?

最终目标是捕获ENSMUSG00000102693

sed bioinformatics

2
推荐指数
1
解决办法
1367
查看次数

标签 统计

bash ×1

bioinformatics ×1

find ×1

for ×1

pattern-matching ×1

sed ×1

zsh ×1