gpt4 book ai didi

linux - 使用 bash 迭代排序和就地替换文件

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:35 25 4
gpt4 key购买 nike

我有几个基因表达文件按基因名称排序不正确。我可以手动浏览列表并使用 sort 对每个列表进行排序,但我想自动执行该过程以防我需要再次执行此操作(而且它现在可以节省我的时间)。我遇到的主要问题是以某种方式将使用 find 选择正确文件的结果设置为我可以迭代的列表。

我知道我可以使用以下代码按基因名称对文件进行排序:

sort -d -k1 -o fileName fileName

但是,我并不精通在 bash 中使用循环。

基本上我想执行这个操作:

find ./ -type f \( -iname \*.tpm -o -iname \*.cnt \)
# somehow set the results of find to list I can iterate over
for fileName in fileList
do
sort -d -k1 -o fileName fileName
done

最佳答案

fileList=$(find ./ -type f \( -iname \*.tpm -o -iname \*.cnt \))
for fileName in fileList
do
sort -d -k1 -o fileName fileName
done

如果您的文件名包含空格,在执行此循环之前,设置 IFS=$'\n',以便将换行符用作分隔符。可能有更安全的方法来执行此操作。我提到了我所知道的最好的。

关于linux - 使用 bash 迭代排序和就地替换文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57729138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com