Рейтинг:0

find -f приводит к неизвестному предикату в Ubuntu, но работает в macOS

флаг uz

Я пытаюсь установить переменную среды с помощью следующего скрипта. find -f ./node_modules/@marcom/*/src/scss -type d -d 0 | тр $'\n' :

Этот точный сценарий отлично работает в macOS, однако, когда я нажимаю на удаленный сервер с Ubuntu и пытаюсь запустить тот же сценарий, я получаю результат:

найти: неизвестный предикат '-f'

Я не знал, что find работает по-разному в разных вариантах ОС, любые указатели здесь будут очень признательны. Заранее спасибо.

sudodus avatar
флаг jp
Если у вас есть работающая система MacOS, проверьте в `man find`, что означает `-f`, и сообщите нам. Тогда мы можем сказать вам соответствующее выражение в Linux. В противном случае вам придется ждать кого-то, кто знает «найти» как в MacOS, так и в Linux.
флаг uz
-f указывает файловую иерархию для поиска.
sudodus avatar
флаг jp
Спасибо! Тогда вы можете просто удалить его. Первый параметр (если есть) должен быть файловой иерархией для поиска, поэтому, возможно, `find /node_modules/@marcom/*/src/scss -type d -d 0 | tr $'\n' :` будет делать то, что вы хотите. Но я думаю, что вы также должны проверить значение `-d` в MacOS (я не думаю, что это значение '-depth' в Linux).

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.