/ / shell skriptový program pre počet riadkov - linux, shell, codeigniter

shell program pre počet liniek - linux, shell, codeigniter

Napíšte shell shell, aby ste spočítali početriadky, znaky, slová v súbore (bez použitia príkazov). Odstráňte tiež zo súboru slovo „Linux“, kdekoľvek sa objaví, a výsledky uložte do nového súboru.

odpovede:

1 pre odpoveď č. 1

Toto je najbližšie, čo by som mohol získať bez použitia balíčkov tretích strán ...

#!/bin/bash

count=0
while read -r line
do
count=$((count + 1))
done < "$filename"
echo "Number of lines: $count"

0 pre odpoveď č. 2
  • Sachin Bharadwaj dal scenár, ktorý počíta riadky.
  • Teraz, aby sme spočítali slová, môžeme použiť set rozdeliť riadok na $# pozičné parametre.
  • Na počítanie znakov môžeme použiť dĺžku parametra: ${#line}.
  • Nakoniec, na vymazanie každého „Linuxu“ môžeme použiť substitúciu vzoru: ${line//Linux}.

(Porov Rozšírenie parametrov Shell.)

Všetky spoločne:

while read -r line
do
((++count))
set -- $line
((wordcount+=$#))
((charcount+=${#line}+1))   # +1 for the "n"
echo "${line//Linux}"
done < "$filename" >anewfile
echo "Number of lines: $count"
echo "Number of words: $wordcount"
echo "Number of chars: $charcount"