Подсчет символов в двух определенных строках во всех файлах и печать суммы с соответствующим именем файла

В MacOS, когда SSH от машины A к машине B и использование vim на машине B, я добавляю это в свой.vimrc на машине B:

nmap yr :call system("ssh $machineA_IP pbcopy", @*)<CR>

Таким образом, в обычном режиме содержимое регистра *, если vim@machine _B копируется в локальный буфер обмена компьютера A, при условии, что вы правильно настроили Vim с помощью +clipboard и регистра *

0
07.07.2020, 14:49
1 ответ

Питон

#!/usr/bin/python
import re
import sys
co=0
k=open(sys.argv[1],'r')
t=re.compile(r'var\^|lab\^')
for i in k:
    m=re.sub(t,"",i)
    co=co+len(m.strip())
print "{0}: Total Characters in (Var and Lab) are {1}".format(sys.argv[1],co)



$ python test.py abc.txt 
abc.txt: Total Characters in (Var and Lab) are 15


$ python test.py def.txt
def.txt: Total Characters in (Var and Lab) are 19

Awk-метод

    #!/bin/bash
    awk -F "var|lab" 'BEGIN{sum=0}{gsub(/\^/,"",$2)}{sum=sum+length($2)}END{print FILENAME ": Total Characters in (Var and Lab) are "sum}' $1


 sh test.sh abc.txt 
abc.txt: Total Characters in (Var and Lab) are 15


sh tes.sh def.txt 
def.txt: Total Characters in (Var and Lab) are 19
0
18.03.2021, 23:21

Теги

Похожие вопросы