小编Bal*_*ken的帖子

删除第一个和第二个下划线之前和之后的字符提取第一个和第二个下划线之间的字符串

我在用

gsub(".*_","",ldf[[j]]),1,nchar(gsub(".*_","",ldf[[j]]))-4)
Run Code Online (Sandbox Code Playgroud)

创建要写入的路径和文件名。它适用于lfd只有一个下划线的名称。具有另一个下划线的文件名,它会切断第二个下划线前面的所有内容。

我有例如: Arof_07122016_2.csv我想要07122016,但我得到2. 但我不明白为什么会这样。如何使用这一行只截断第一个下划线中的字符并保留第二个?

regex r gsub

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

bash - sed 不会替换所有分号

我将三个变量写入文本文件。现在它变成了一个变量,因为像这样尝试和错误会更快。这三个变量由之前的脚本生成,每个变量都有一列,其中包含值。例如,变量一看起来像这样:

hour
minute
minute
day
Run Code Online (Sandbox Code Playgroud)

我使用以下代码将它们放在一起:

New_fileloc=$(paste <(echo "$Grabinterval") <(echo "$Filelocation") <(echo "$Time") --delimiters ';' | sed -e 's/^\|$/"/g' -e 's/\;/";"/')
Run Code Online (Sandbox Code Playgroud)

最后,我需要每列中的每一行用双引号括起来并用分号分隔。目前我正在使用 sed 在那一个班轮中这样做。这大部分工作正常。我的输出如下所示:

"hour";"A_path/to/somewhere/;2016-02-10 17:07:00Z"
"minute";"A_path/to/somewhere/;2016-01-29 17:26:20Z"
"minute";"A_path/to/somewhere/;2016-01-29 17:26:20Z"
"day";"A_path/to/somewhere/;2016-01-29 00:07:00Z"
Run Code Online (Sandbox Code Playgroud)

第一个分号被替换为“;”,但每行中的第二个分号没有。我不知道为什么。

bash sed

0
推荐指数
1
解决办法
7008
查看次数

标签 统计

bash ×1

gsub ×1

r ×1

regex ×1

sed ×1