У меня огромный текстовый файл с 200 000 строк предложений (пример формата строки: имя_файла.wav | несколько расшифровок блабла).
Я бы хотел передать каждую строку параллельно сценарию python. У меня есть сценарий python, который принимает предложения в качестве входных данных, телефонизирует их и сохраняет их в файл.
Я пробовал что-то подобное, используя параллель gnu:
cat test.txt | parallel python singlePhonemize.py
, который выбрасывает EOF при чтении строки. Мне нужно иметь возможность использовать параллель для этого, и он должен быть в состоянии обойти 'слишком длинный список аргументов' 1008 *
Вот мой сценарий python:
import subprocess
metadataLine=input()
metadataLine=metadataLine.split('|')
file_name=metadataLine[0][:-4]
raw_transcript=metadataLine[1]
command='echo \"{}\" | phonemize -l en-us'.format(raw_transcript)
festival_phonemized_transcript=subprocess.check_output(command , shell=True).decode();
new_file_name=file_name+'.txt'
new_file_path='/folder/'+new_file_name
with open(new_file_path,'w') as file:
file.write(festival_phonemized_transcript)