从文本文件中的行访问子字符串并将其存储


1

我有一个这样的文本文件

chr1:16840617-16840780    RNU1-1             (2 columns are tab separated)
chr3:142139047-142139211    RNU1-100P
............
............

我想遍历文本文件的行并将第1列和第2列保存在sep变量中,如下所示:

OLDIFS=$IFS; IFS=$'\n'; for line in $(cat test.txt);do LOC="save location";NAME="save name";done

保存名称和位置后,我必须执行几个步骤才能获得所需的输出,但是到目前为止,我想存储它们。


希望共享文本的哪些位组成哪些列?
修补

column1 = chr1:16840617-16840780; column2 = RNU1-1
user31383732014年

Answers:


2

尝试

while read column1 column2
do
  something with $column1
  something more $column2
  ... 
done < test.txt

直接使用来自一会儿和重定向文件的读取可以节省您的时间(完全不必要地使用;})和更改IFS。


因为我使用了for循环,所以我认为我需要更改IFS,因为如果我逐行读取文件时,它不会考虑空间
user3138373 2014年

空格是while循环通常是首选选项的原因。看看接受的答案在这里: unix.stackexchange.com/questions/24260/...
天衣

您可以像播放流媒体一样播放流媒体while...process...echo "$RESULT"...done <in >out
mikeserv
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.