相关疑难解决方法(0)

使用sed删除Linux中文本文件任意一行的前五个字符

我需要一个单行删除文本文件的任何行上的前五个字符.我怎么能用sed做到这一点?

unix linux sed

56
推荐指数
4
解决办法
10万
查看次数

如何删除文件最后一行的最后一个字符?

我在文件中有这组行:

{info},
{info},
{info},
{info},
Run Code Online (Sandbox Code Playgroud)

我希望这样的文件没有最后一个",":

{info},
{info},
{info},
{info}
Run Code Online (Sandbox Code Playgroud)

我怎么能用bash做呢?任何的想法?

linux bash file

9
推荐指数
1
解决办法
8515
查看次数

Bash/*NIX:将文件拆分为子字符串上的多个文件

之前已经问过并回答过这个问题的变种,但是我发现我的sed/grep/awk技能从那些工作到自定义解决方案都太基础了,因为我几乎没有在shell脚本中工作.

我有一个相当大的(100K +行)文本文件,其中每行定义一个GeoJSON对象,每个这样的对象包括一个名为"county"的属性(所有人都说,有100个不同的县).这是一个片段:

{"type": "Feature", "properties": {"county":"ALAMANCE", "vBLA": 0, "vWHI": 4, "vDEM": 0, "vREP": 2, "vUNA": 2, "vTOT": 4}, "geometry": {"type":"Polygon","coordinates":[[[-79.537429,35.843303],[-79.542428,35.843303],[-79.542428,35.848302],[-79.537429,35.848302],[-79.537429,35.843303]]]}},
{"type": "Feature", "properties": {"county":"NEW HANOVER", "vBLA": 0, "vWHI": 0, "vDEM": 0, "vREP": 0, "vUNA": 0, "vTOT": 0}, "geometry": {"type":"Polygon","coordinates":[[[-79.532429,35.843303],[-79.537428,35.843303],[-79.537428,35.848302],[-79.532429,35.848302],[-79.532429,35.843303]]]}},
{"type": "Feature", "properties": {"county":"ALAMANCE", "vBLA": 0, "vWHI": 0, "vDEM": 0, "vREP": 0, "vUNA": 0, "vTOT": 0}, "geometry": {"type":"Polygon","coordinates":[[[-79.527429,35.843303],[-79.532428,35.843303],[-79.532428,35.848302],[-79.527429,35.848302],[-79.527429,35.843303]]]}},
Run Code Online (Sandbox Code Playgroud)

我需要将其拆分为100个单独的文件,每个文件包含一个县的GeoJSON,每个文件名为xxxx_bins_2016.json(其中xxxx是县名).我也希望每个这样的文件末尾的最后一个字符(逗号)消失.

我在Mac OSX中这样做,如果这很重要的话.我希望通过研究你能提出的任何解决方案来学到很多东西,所以如果你想花时间解释'为什么'以及那些将会很棒的'什么'.谢谢!

编辑,以明确有不同的县名,其中一些是双字名.

macos bash shell geojson

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

通过终端删除大文件的第一个和最后一个字符

我有几个大文件(从 1GB 到 1TB),我想删除每个文件中的第一个和最后一个字符。

有什么快速的方法(最好使用简单的 bash 脚本)?我不需要保存旧文件。

linux file

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

使用Awk或Sed来处理特定行末尾的语句

我有一个我命名的文件poscar1.cif,我想在此文件的特定行插入变量的内容.

例如,line 24,当前读取:

_cell_length_a
Run Code Online (Sandbox Code Playgroud)

我想添加我的变量的内容a(在我的函数中定义a=5.3827),这样该行现在读取:

_cell_length_a 5.3827
Run Code Online (Sandbox Code Playgroud)

有没有办法用sed或awk做到这一点?我正在使用bash脚本来完成此任务(不幸的是,完整的脚本太大而无法发布).

bash awk sed

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

如何使用 Bash 删除 json 文件中的最后一个逗号?

我写了一些脚本来获取 aws ec2 实例的所有用户数据,并回显到 local.json。当我安装 node.js 模块时,所有这些都会发生。我不知道如何删除 json 文件中的最后一个逗号。这是 bash 脚本:

#!/bin/bash
export DATA_DIR=/data
export PATH=$PATH:/usr/local/bin

#install package from git repository
sudo -- sh -c "export PATH=$PATH:/usr/local/bin; export DATA_DIR=/data; npm install git+https://reader:secret@bitbucket.org/somebranch/$1.git#$2"

#update config files from instance user-data
InstanceConfig=`cat /instance-config`
echo '{' >> node_modules/$1/config/local.json
while read line
do
   if [ ! -z "$line" -a "$line" != " " ]; then
      Key=`echo $line | cut -f1 -d=`
      Value=`echo $line | cut -f2 -d=`
      if [ "$Key" = "Env" ]; then
         Env="$Value" …
Run Code Online (Sandbox Code Playgroud)

bash shell awk json sed

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

sort -o将换行符附加到文件末尾 - 为什么?

我正在处理一个小文本文件,其中包含一个单词列表,我想添加一个新单词,然后排序.我启动时文件末尾没有换行符,但排序后却没有换行符.为什么?我可以避免这种行为,还是有办法将换行删除?

例:

words.txt 好像

apple
cookie
salmon
Run Code Online (Sandbox Code Playgroud)

然后我跑了 printf "\norange" >> words.txt; sort words.txt -o words.txt

我使用printf而不是echo来确定是否会避免换行,但文件会读取

apple
cookie
orange
salmon
#newline here
Run Code Online (Sandbox Code Playgroud)

如果我只是运行printf "\norange" >> words.txt橙色出现在文件的底部,没有换行符,即;

apple
cookie
salmon
orange
Run Code Online (Sandbox Code Playgroud)

sorting bash

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

如何在Bash中合并成千上万的json文档?

我通过连接到某些API的脚本创建了超过50万个JSON文档.我想将这些文档导入RethinkDB,但似乎RethinkDB无法大量导入文件,因此我考虑将所有这些文件合并到一个大的JSON文件中(比如bigf​​ile.json).这是他们的结构:

档案1.json:

{
  "key_1": "value_1.1",
  "key_2": "value_1.2",
  "key_3": "value_1.3",
    ...
  "key_n": "value_1.n"
}
Run Code Online (Sandbox Code Playgroud)

文件2.json:

{
  "key_1": "value_2.1",
  "key_2": "value_2.2",
  "key_3": "value_2.3",
    ...
  "key_n": "value_2.n"
}
...
Run Code Online (Sandbox Code Playgroud)

文件n.json:

{
  "key_1": "value_n.1",
  "key_2": "value_n.2",
  "key_3": "value_n.3",
    ...
  "key_n": "value_n.n"
}
Run Code Online (Sandbox Code Playgroud)

我想知道哪个是创建一个大JSON文件的最佳结构(完整,每个文件都有一个由3个变量组成的特定名称,第一个是时间戳(YYYYMMDDHHMMSS)),以及哪个命令或脚本(到现在为止)我只为bash编写脚本...)允许我产生合并.

bash json bigdata rethinkdb

-1
推荐指数
1
解决办法
1429
查看次数

标签 统计

bash ×6

linux ×3

sed ×3

awk ×2

file ×2

json ×2

shell ×2

bigdata ×1

geojson ×1

macos ×1

rethinkdb ×1

sorting ×1

unix ×1