Articles of shell

如何使用schell脚本从文件读取元素,做一些计算和回写?

我只是脚本语言的新手。 现在我有一个文件,里面是: > A1 B1 C1 > A2 B2 C2 > A3 B3 C3 我只想使用shell脚本(bash)按元素读取文件元素。 然后,我想对元素A1,A2和A3进行一些计算,然后将它们写回新文件(或旧文件)。 所以新文件会是(假devise算结果是D1,D2和D3): D1 B1 C1 D2 B2 C2 D3 B3 C3 计算是通过命令“date -d @(A's value)”将Unix历元时间(A的值)转换为人类可读的时间(D的值)。 我尝试使用awk命令: awk '{$1=`date -d @$1`}' test.txt 但它似乎有一些语法错误:>错误是: awk: {$1=`date -d @$3`} awk: ^ invalid char '`' in expression

使用grep匹配确切的单词

我有一个要求,search一个确切的单词,并打印一行。 如果我没有的话,它正在工作. (点)在行中。 $cat file test1 ALL=ALL w.test1 ALL=ALL $grep -w test1 file test1 ALL=ALL w.test1 ALL=ALL 它也是给第二行,我只想要确切单词test1 。

Linux C:类似shell的环境 – 个别执行 – C命令? (C口译员)

对不起,如果这个问题措辞错误 – 我不知道我要求的正确的话! 🙂 说,你有一些简单的C程序,如: #include <stdio.h> int main() { int a=2; printf("Hello World %d\n", a); return 0; } 通常情况下,这将不得不被保存在一个文件(比如, hello.c ); 那么我们在源文件上运行gcc并获得可执行文件 – 如果我们编译了debugging信息,那么我们可以在可执行文件上使用gdb来遍历代码行,并检查variables。 我想要的是基本上某种“C”shell – 类似于Pythonshell; 从某种意义上说,我可以在一个文件(一个脚本)中拥有一系列Python命令 – 或者我可以将相同的命令粘贴到shell中,并执行相同的命令。 关于上面这个简单的程序,这是我希望能够做到的( C>代表想象中的提示): C> #include <stdio.h> (stdio.h included) C> int a=2; C> printf("Hello World %d\n", a); Hello World 2 C> 换句话说,我希望能够交互地执行单个C命令( 我猜这会代表即时编译的sorting? )。 最初,我被C shell […]

如何仅在重复行的末尾添加连续数字

我有一个重复行的文件。 我只想在这些重复的结尾放一个连续的数字。 例。 input: Jose da Silva Jose da Silva Fulano de Tal Jose da Silva Sicrano Pereira Ze Ruela Sicrano Pereira Jose da Silva 输出: Jose da Silva #1 Jose da Silva #2 Fulano de Tal Jose da Silva #3 Sicrano Pereira #1 Ze Ruela Sicrano Pereira #2 Jose da Silva #4 我不能sorting这些线。 他们必须以相同的顺序出现。

用bash通配符定位行为

我有 $ ls -l re*trict ls: cannot access re*trict: No such file or directory 为什么这给0比赛? $ locate -c 're*trict' 0 $ locate -c re*trict 0 $ locate -c re?trict 0 这虽然工作,并给予8351匹配: $ locate -c restrict 8351

用反向引用在两个模式之间加上所有行

我正在做一个简单的脚本,以预先匹配匹配之间所有行的模式匹配的一部分。 例如: matchline_VAR name1 xxx yyy zzz name2 aaa bbb ccc matchline_VAR 需要成为(如果简单删除matchlines,如果不是我可以后处理删除它们): VAR_name1 xxx yyy zzz VAR_name2 aaa bbb ccc 现在我正在尝试像这样: sed '/matchline_\(.*$\)/,/matchline_/ {s/^/\1_/g}' 而是在行前打印1。 也许我还应该提到,这是一个更大脚本的一部分,用于search文本文件,并用另一个shellvariables$ replace(多行)replaceshellvariables$ find(一行)的每个实例。 目前的解决scheme是: awk -v find="$find" -v replace="$replace" '$0==find{$0=replace}1' file 问题是,我需要将$ find的第一个字段追加到$ replace的每一行我试过: awk -v find="$find" -v replace="$replace" '$0==find{$0="matchline_" $1 "_" replace}1' 但是它只在多行$ replace的开头附加名称。 任何帮助表示赞赏, 约翰

如何从Linux shell中的文件中的二维数组中select一个元素

我是新的shell脚本,我需要的是从包含2d数组的文件中读取。 假设有一个名为test.dat的文件,其中包含以下值: – Paris London Lisbon – Manchester Nurnberg Istanbul – Stockholm Kopenhag Berlin 在Linux bash脚本中从这张表中select一个元素最简单的方法是什么? 例如,用户input-r 2 -c 2 test.dat,这意味着select在行[2]和列[2](Nurnberg)的元素。 我已经看到了读取命令和谷歌search,但大部分的例子是关于1D数组。 这个看起来很熟悉,但是完全不能理解。

nohup每天创build新文件nohup.out

我不知道我能不能用nohup来做,但这是个问题….我有这个命令: nohup java -XX:MaxHeapFreeRatio=70 -Xmx2048M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=dump.hprof -jar $iscsiJar & 我希望当天改变我保存的前一天nohupYYYYMM01.out并创build另一个文件nohupYYYYMM02.out,当然,与出杀我的过程。 =) 是否有可能,我怎么编程在shell脚本? 非常感谢!

shell脚本将数据parsing为variables,然后更新数据库

我的networking上有一个设备将数据发布到html页面。 我需要能够从页面收集数据并将其插入到我的数据库中,以便我可以对数据进行历史参考。 我能够使用以下命令从网站中检索字段。 结果返回由换行符分隔的三个数字。 我想运行这个作为一个Linux的cron作业,所以我想用一个Linux脚本来: 将数据(数字)保存到variables中 连接到我的数据库,并将数据插入表中 我的命令行检索信息如下。 这对parsing设备中的数据非常有用: curl -s http://local_device.com/dtm.html?address=C5:0 | grep -Po '[0-9]+(?=[^0-9]+(C5:2<|C5:6<|C5:13))'

在busybox sh中,不能递增填充8的数字

这是我用来保存照相机文件的代码,并从0001开始命名。 相机正在运行Busybox,并且里面有一个灰壳。 代码是基于查尔斯·达菲在此之前的回答。 #!/bin/sh # Snapshot script cd /mnt/0/foto sleep 1 set — *.jpg # put the sorted list of picture namefiles on argv ( the number of files on the list can be requested by echo $# ) while [ $# -gt 1 ]; do # as long as there's more than one… shift […]