В оболочке нет понятия declaring
функции. Таким образом, вы не можете иметь предварительную декларацию.
Как следствие, вам нужно, чтобы реализация функции была прочитана оболочкой, прежде чем ее можно будет вызвать.
Команда find
работает нормально, нужно только исключить all.jp.txt
из списка искомых файлов или перенаправить вывод в другой каталог, т.е. не .
или один из его подкаталогов -. В противном случае strings
также работает на all.jp.txt
и растет и растет.
find. -type f ! -path./all.jp.txt -exec strings -e S {} \; > all.jp.txt
или
find. -type f -exec strings -e S {} \; > /some/other/dir/all.jp.txt