Прочтите файл и скопируйте каждое слово в соответствующий файл - PullRequest
0 голосов
/ 05 мая 2020

Я прочитал файл со словами, и мне нужно создать каталог, содержащий 26 файлов словарей, следующим образом: первый файл содержит в алфавитном порядке, по одному в строке, все слова в текстовом файле, начинающиеся с буквы A ;, второй на букву В; et c ...

apple, banana, almond, ...

words.txt

almond
apple

a.txt

banana

b.txt

код, который я пишу:

#!/bin/bash

chars=( {a..z} )

for i in chars
do 
    grep '^$i' words.txt > new.txt
    sort new.txt > $i.txt
done

, но я ничего не делаю. Не знаю почему.

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Вы можете попробовать что-то вроде этого. Обратите внимание: если вам нужен «курсор» для перехода от a к z, вы можете создать его прямо в for l oop, вам не нужно сначала его настраивать.

#!/bin/bash

for i in {a..z}
do 
  grep -o "\b$i\w*" words.txt | sort > $i.txt
done
0 голосов
/ 05 мая 2020

Вы хотите l oop поверх содержимого массива. Используйте

for i in ${chars[@]};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...