Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 文件只读部分/剪切到特定符号_R_Bash - Fatal编程技术网

R 文件只读部分/剪切到特定符号

R 文件只读部分/剪切到特定符号,r,bash,R,Bash,我有100个文件,都有类似的结构 line1 line2 stuff RR important stuff 问题是我想在RR出现时剪切(它在每个文件中都会这样做)。然而,这并不总是在同一行(可以是第20行,也可以是第35行),但它总是在那里。因此,在bash或R(在读取文件时)中是否有任何方法可以实现这一点(仅对头进行剪切)?如果您通过bash获得awk,我更喜欢R.,您可以: awk '(/RR/){p=1; next} (p){print}' < file.txt $ cat fi

我有100个文件,都有类似的结构

line1
line2
stuff
RR
important stuff

问题是我想在RR出现时剪切(它在每个文件中都会这样做)。然而,这并不总是在同一行(可以是第20行,也可以是第35行),但它总是在那里。因此,在bash或R(在读取文件时)中是否有任何方法可以实现这一点(仅对头进行剪切)?如果您通过
bash
获得
awk
,我更喜欢R.

,您可以:

awk '(/RR/){p=1; next} (p){print}' < file.txt

$ cat file.txt
line1
line2
stuff
RR
important stuff
$ awk '(/RR/){p=1; next} (p){print}' < file.txt
important stuff
awk'(/RR/){p=1;next}(p){print}'

这将在找到“RR”字符串时设置一个标志
p
next
导致在不首先计算
(p){print}
的情况下读取下一行。将打印后续行。

您可以读取所有行并删除不必要的行:

dat <- readLines(textConnection(
"line1
line2
stuff
RR
important stuff"))
# dat <- readLines("file.name")


dat[seq(which.max(dat == "RR") + 1, length(dat))]
# [1] "important stuff"
dat以下是一些方法:

使用基本工具: 使用纯:
为什么不全部读取并删除出现
RR
的行对不起,您的意思是在R中重新读取并手动删除?严重吗?当然不是手动的,但是每个文件都有脚本来完成。顺便问一下,你的意思是删除带有RR的行还是删除RR之后的任何行?错误地理解这个问题是想删除
RR
,因此,我猜@Sven的答案是正确的,但这不意味着我必须将每个文件复制到你答案的rep部分吗?我可能误解了…@user3069326不,你可以直接使用
dat哦,我想这是一个误解,我想去掉第1行、第2行和其他东西…同时在RR之后保留所有位…@user3069326好的,我理解。看看更新后的答案。嘿..不知怎的,这只会删除RR代表的行…但是行1,行2,东西和重要的东西仍然存在。。。
$ tail -n+$((1 + $(grep -n '^RR$' file.txt | cut -d: -f1))) file.txt
important stuff
$
$ { while read ln; do [ "$ln" == RR ] && break; done; cat; } < file.txt 
important stuff
$ 
$ grep -A9999 '^RR$' file.txt | tail -n+2
important stuff
$