Используя находку и aspell вместе

Я пытаюсь проверить правописание весь *.md файлы в моем текущем каталоге, но следующих сбоях команды:

>> find . -maxdepth 1 -name "*.md" | xargs -I {} aspell check {}
xargs: aspell: exited with status 255; aborting

Я предполагаю, что это вызвано тем, что aspell требует stdin взаимодействовать с пользователем и так или иначе xargs не обеспечивает его. Я нашел взлом в Твиттере,

find . -maxdepth 1 -name "*.md" | xargs -n 1 xterm -e aspell check

но это открывает новый xterm каждый раз. Как я могу заставить свою исходную команду работать, как будто я должен был индивидуально работать aspell на результатах моей команды находки?

1
25.01.2015, 19:23
1 ответ

Согласен, использование xargsс findизбыточно, но если ввод исходит от чего-то еще, и у вас есть для использования xargs, просто используйте-o:

grep -rl 'draft: false' | xargs -o -n1 aspell check --sug-mode=slow

man xargsэто говорит:

-o Reopen stdin as /dev/tty in the child process before executing the command. This is useful if you want xargs to run an interactive application.

0
30.06.2020, 15:44

Теги

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