Articles of bash

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

我有一个重复行的文件。 我只想在这些重复的结尾放一个连续的数字。 例。 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这些线。 他们必须以相同的顺序出现。

如何用参数创buildgrep别名

可以说我有这个search词: grep -i -r –include=*.xib "img_28301.png" ./ 我将如何去创build一个别名,允许我这样做: xibsearch img_28301.png 并做同样的事情?

用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

Nagios插件检查文件是在x分钟内创build的

我试图将一个bash脚本转换成nagios插件 该脚本将运行一个find命令来查看是否在x分钟内创build了文件: #!/bin/bash # #Check NVR newfiles=$(find /srv/unifi-video/videos/* -name '*.ts' -mmin -10 | wc -l) if [[ $newfiles -eq 0 ]] ; then echo "!!!WARNING!!! The NVR has System stopped recording." fi 我试图把这个脚本转换成一个Nagios插件: #!/bin/bash # #Check NVR #http://www.netchester.com #Check if NVR System is recording correctly newfiles=$(find /srv/unifi-video/videos/* -name '*.ts' -mmin -10 | wc -l) case […]

格式和过滤文件到Csv表

我有一个包含许多日志的文件: Ps:这个问题是从这里以前的问题中得到的启发。 但略有改善。 at 10:00 carl 1 STR0 STR1 STR2 STR3 <STR4 STR5> [STR6 STR7] STR8: academy/course1:oftheory:SMTGHO:nothing: academy/course1:ofapplicaton:SMTGHP:onehour: at 10:00 carl 2 STR0 STR1 STR2 STR3 <STR4 STR78> [STR6 STR111] STR8: academy/course2:oftheory:SMTGHM:math: academy/course2:ofapplicaton:SMTGHN:twohour: at 10:00 david 1 STR0 STR1 STR2 STR3 <STR4 STR758> [STR6 STR155] STR8: academy/course3:oftheory:SMTGHK:geo: academy/course3:ofapplicaton:SMTGHL:halfhour: at 10:00 david 2 STR0 STR1 STR2 […]

如何从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数组。 这个看起来很熟悉,但是完全不能理解。

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))'

在文件中的grep和replacestring

我有一个关于我的磁盘iostat信息的文件在一行,但时间停留在上述行。 当我使用grep时,我可以收集这两行。 但是我想把时间放在同一行的磁盘信息中。 grep -E "sda|22-09" iostat.dat 22-09-2015 15:36:10 sda 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 0,00 22-09-2015 15:36:12 sda 0,00 2,00 0,50 17,00 0,00 0,07 8,91 0,13 7,20 0,00 7,41 5,94 10,40 22-09-2015 15:36:14 sda 0,00 10,50 0,00 3,00 0,00 0,06 38,67 0,07 24,00 0,00 24,00 24,00 7,20 […]

Bash脚本variables作用域问题

username="hello" password="3333" function login { # 1 – Username # 2 – Password match=0 cat LoginsMaintMenu.txt | while read line; do x=`echo $line | awk '{print $1}'` y=`echo $line | awk '{print $2}'` if [ "${x}" == "${1}" ] && [ "${y}" == "${2}" ]; then echo "match" match=1 echo $match break fi done echo […]

如何通过unix中的数据来validation组的数量

我有一个logging列表如下 资源: a,yes a,yes b,No c,N/A c,N/A c,N/A d,xyz d,abc d,abc 输出: a, Yes 2 b, No 1 c, N/A 3 d, xyz 1 d, abc 2 c, N/A "File is not correct" 这里的“是”和“否”是可以接受的单词,如果其他的单词数大于单个$ 1值的“是”或“否”字数,那么我们发出一个类似“文件不好” 我已经尝试了下面的脚本 awk -F, '{a[$1]++;}END{for (i in a)print i, a[i];}' filetest.txt