小编Ben*_* W.的帖子

使用文本标题和数字列按日期对 CSV 列进行排序

我有一个这样的 CSV 文件:

Order,Item,Date
387-0293,chips,04/26/2016
133-4454,soda,04/25/2016
284-9989,beer,04/27/2016
Run Code Online (Sandbox Code Playgroud)

订单量每天都在变化。

如何让第三列按日期排序?

我尝试过很多不同类型的组合,以下是我尝试过的一些我认为会起作用的方法:

cat test.csv | sort -t, -k3 > sorted.csv
cat test.csv | sort -u -r > sorted.csv
cat test.csv | sort -n -k3 > sorted.csv
Run Code Online (Sandbox Code Playgroud)

我对 bash 不太了解,只是在这里搜索并谷歌寻找答案。

csv sorting bash

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

在终端中使用 AWK 在 CSV 中添加列标题

您好,我正在尝试在终端中使用 awk 在我的 CSV 文件中添加列标题。

目前显示:

Michael, Michael@email.com, Seattle, Washington, detail1, detail2, detail3
Run Code Online (Sandbox Code Playgroud)

所需格式:

Name, Email, City, State, more1, more2, more3etc
Michael, Michael@email.com, Seattle, Washington, detail1, detail2, detail3,
Run Code Online (Sandbox Code Playgroud)

已经尝试过这样的事情,但我最终得到了“源代码第 2 行的非法声明”:

awk 'BEGIN {FS=",";OFS=","; print "Rating,Restaurant,Address,Landline,Mobile,Cuisine,Website,LatDD,LonDD"}
NR >1 {print ",",,,",",",", }' Restaurants.txt > Restaurants_newer.txt
Run Code Online (Sandbox Code Playgroud)

unix linux csv terminal awk

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

插入多行并使用sed保持缩进

我有一些Tython函数要插入文件中.插入多行本身可以很好地使用变量和一些\n,但不保留缩进.因为它是Python代码,这是一个大问题,代码无法正常工作.

这是我尝试过的:

cat sed-insertlines.sh

#!/bin/bash

read -r -d '' lines_to_insert << 'EOF'
def string_cleanup(x, notwanted):\n
    for item in notwanted:\n
        x = re.sub(item, '', x)\n
    return x\n
EOF

lines_to_insert=$(echo ${lines_to_insert} )

sed  -i "/import re  # Regular Expression library/a $lines_to_insert" sed-insertlines.txt
Run Code Online (Sandbox Code Playgroud)

但是我最终得到的是cat sed-insertlines.txt:

#!/bin/python

import re  # Regular Expression library
def string_cleanup(x, notwanted):
 for item in notwanted:
 x = re.sub(item, '', x)
 return x


def string_replace(i_string, pattern, newpattern):
    string_corrected = re.sub(pattern, newpattern, i_string)
    return string_corrected
Run Code Online (Sandbox Code Playgroud)

线条在那里,但压痕消失了.

bash sed insert

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

如何仅从每列的第一个单词中删除特定字符?

档案:

1 34566 34765 
2 45678 45789
Scaffold_3 34567 34799
Scaffold_X 67895 66900
Scaffold_Y 34567 34890
Run Code Online (Sandbox Code Playgroud)

注意:有很多行.我想_从第一列中的单词中仅删除下划线().除此之外不应该有其他变化.我正在学习sed和awk所以使用这些工具的任何命令都会有所帮助.此外,解释也会有所帮助.

归档:

1 34566 34765 
2 45678 45789
Scaffold3 34567 34799
ScaffoldX 67895 66900
ScaffoldY 34567 34890
Run Code Online (Sandbox Code Playgroud)

awk sed append character

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

shell脚本中'exit 0'的含义是什么?

我最近部署了一个脚本

exit_job(){
echo "$1"
exit 0
}
Run Code Online (Sandbox Code Playgroud)

我搜索了网络,发现正确的退出代码.谁能解释一下exit 0

shell

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

如果我使用'echo',为什么会这样呢?

所以我目前只是试图遍历我当前的目录,在那里我调用以下bash脚本,每次找到一个打印出来的'我们找到了一个.c文件'.我有一个if语句来检查args,因为我将扩展脚本,如果没有找到args它将继续运行,并且一个arg将告诉脚本要查看的目录.

问题是,此代码不起作用:

if [ -z "$#" ]
    then
        for i in *.c; do
            echo "We found a .c file"
       done
fi
Run Code Online (Sandbox Code Playgroud)

但是如果我加入echo "Test",它有效吗?

if [ -z "$#" ]
    echo "Test"
    then
        for i in *.c; do
            echo "We found a .c file"
       done
fi
Run Code Online (Sandbox Code Playgroud)

我是bash的新手,也不知道为什么会发生这种情况.谁能帮我吗?

bash if-statement

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

给定一个字符串,如何删除第一个字符的运行?(SED)

我需要一个sed命令,它接受一个字符串并从头开始删除第一个字符的所有副本(但不是从字符串的其余部分删除).

例如,AAABAC应该生成BAC,因为第一个字母是A,所以我们从一开始就删除了整个A的运行.

我最初的想法是:

data=$(echo $data | sed 's/^.\+\(.*\)/\1/')
Run Code Online (Sandbox Code Playgroud)

但这不起作用(输出空字符串).如果我用.特定字符替换第一个字符,它将成功地为该字符工作,但我不能正确地将它用于通配符.

我认为.匹配第一个字符就像我想要的那样,但后来+不记得我想要的字母,并继续接受每个字符直到字符串的结尾,这样圆括号就什么都没有,所以整个字符串都被替换了没有.我怎样才能最初接受任何角色,然后"锁定"该角色+

regex bash sed

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

目录中所有文件的数组,但不包括一个文件

试图弄清楚.txt除了一个被调用的文件之外如何包含所有文件manifest.txt.

FILES=(path/to/*.txt) 
Run Code Online (Sandbox Code Playgroud)

arrays bash

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

为什么 np.dot 比使用 for 循环求点积快得多

这是使用 np.dot 的时间:

import numpy as np
import timeit

x = np.random.random(size=10**7)
a = np.ones(x.size)

%time np.dot(x, a)
Run Code Online (Sandbox Code Playgroud)

挂壁时间:11 毫秒

5001679.267011214

这是使用 for 循环的时间:

import numpy as np
import timeit

x = np.random.random(size=10**7)
a = np.ones(x.size)

def innfeldi(vigur1, vigur2):
    return sum([vigu1[i]*vigur2[i] for i in range(len(vigur1))])

%timeit innfeldi(x, a)
Run Code Online (Sandbox Code Playgroud)

挂壁时间:4.78 秒

4998161.0032265792

python numpy

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

使用Ajax通过模式上传文件

我想使用Ajax通过模式上传文件。我怎样才能做到这一点?

我的模态:

<div id="addBtn" class="modal fade in" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
        <h5 class="modal-title" id="myModalLabel">Add a medicine</h5>
      </div>
      <div class="modal-body">
        <form>
          <div class="form-group">
            <label class="control-label mb-10">Generic Name</label>
            <select class="form-control" name="medicine_id" id="medicine_id">
              @foreach($items as $item)
              <option value="{{$item->id}}" >{{$item->generic_name}}</option>
              @endforeach
            </select>
          </div>

          <div class="form-group">
            <label class="control-label mb-10">Dosage Volume</label>
            <input type="text" name="dosage_name" id="dosage-volume" class="form-control" placeholder="Example: 20mg">
          </div>

          <div class="form-group">
            <label class="control-label mb-10">Form</label>
            <input type="text" name="form" id="form" class="form-control" placeholder="Bottle, Tablet">
          </div>

          <div class="form-group">
            <label …
Run Code Online (Sandbox Code Playgroud)

ajax jquery laravel

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

标签 统计

bash ×5

sed ×3

awk ×2

csv ×2

ajax ×1

append ×1

arrays ×1

character ×1

if-statement ×1

insert ×1

jquery ×1

laravel ×1

linux ×1

numpy ×1

python ×1

regex ×1

shell ×1

sorting ×1

terminal ×1

unix ×1