Я использую GnuWin32
в Windows 10
Я пытаюсь запустить следующую sed
однострочную оболочку с использованием оболочки Gnu Bash:
sed -f <(sed -E 's_(.+)\t(.+)_s/\1/\2/g_' C:/dictionary.txt) C:/content.txt
file substitute sed
оператор преобразует словарные записи в выражения sed.main sed
использует их для замены содержимого.
Это описано в Как получить доступ к словарю и заменить слова в файле?
dictionary.txt
выглядит так:
aluminium<tab>aluminum
analyse<tab>analyze
white spirit<tab>mineral spirits
stag night<tab>bachelor party
savoury<tab>savory
potato crisp<tab>potato chip
mashed potato<tab>mashed potatoes
content.txt
выглядит так:
The container of white spirit was made of aluminium.
We will use an aromatic method to analyse properties of white spirit.
No one drank white spirit at stag night.
Many people think that a potato crisp is savoury, but some would rather eat mashed potato.
...
more sentences
При запуске GnuWin32 / sed в GnuBash-shell под windows 10 я получаю следующее сообщение об ошибке: syntax error near unexpected token <(s
Как переформулировать скрипт для запуска под GnuWin32 / sed под windows 10?
благодаря https://stackoverflow.com/users/2836621/mark-setchell иhttps://stackoverflow.com/users/5403468/tiw решение работает при использовании cygwin64