Как открыть несколько файлов от вывода 'находки'?

Существует setrlimit () функция, которая позволяет настраивать пределы процесса в C. Запишите программу C для вызова setrlimit затем к должностному лицу командой, Вы хотите быть ограниченными. setrlimit не может изменить пределы других процессов.

К счастью кто-то уже записал что-то подобное. Это может быть загружено с freshmeat. У меня был беглый взгляд на исходный код, и это, кажется, прекрасно. Используйте rlimit по своему собственному усмотрению. Обратите внимание, что rlimit также не может изменить пределы других процессов.

Править: Gilles предложил хороший взлом с gdb: Присоедините к процессу с gdb, затем выполняют вызов процесса setrlimit. Это, возможно, решило бы проблему для ограничения уже рабочего процесса.

10
14.12.2012, 17:15
3 ответа

Действовать на несколько файлов сразу с find, использовать + вместо \;:

find . -name '*.foo' -exec gedit {} +

С zsh, или с ударом ≥4, если Вы помещаете shopt -s globstar в Вашем ~/.bashrc, можно использовать **/ рекурсивно вызывать в подкаталоги:

gedit **/*.foo

Zsh также имеет много спецификаторов шарика, которые могут заменить большую часть использования find.

14
27.01.2020, 20:01
  • 1
    , кто-то мог предложить, как выполнить его на Mac OS X? –  andilabs 01.11.2013, 03:57
  • 2
    @andi решен один. Но если кто-то предложит что-то короче или принуждение SublimeText открыться на отдельных вкладках, а не окнах, то это будет много apriciated. –  andilabs 01.11.2013, 04:06
  • 3
    @andi Это - проблема с SublimeText, необходимо спросить это как отдельный поток. –  Gilles 'SO- stop being evil' 01.11.2013, 04:47
  • 4
    так или иначе, я думаю, что это о точном формате удара, потому что, если я работаю, например, open -a SublimeText admin.py forms.py это открывается в одном окне двумя вкладками. –  andilabs 01.11.2013, 04:53

Я думаю, что в этом случае Вы могли использовать

find ./ -name \*.foo | xargs gedit
0
27.01.2020, 20:01
  • 1
    Это не будет работать, если имя файла будет содержать специальные символы (пробел или \'"), потому что xargs требует, чтобы его вход был заключен в кавычки способом это find не производит. Любое использование find … -print0 | xargs -0 …, или используйте более простое find … -exec … {} +. –  Gilles 'SO- stop being evil' 28.11.2010, 17:34
  • 2
    Кроме того, хотя это не применяется в этом случае, -print0 | xargs -0 имеет проблему, что stdin был проглочен и больше не присоединен к терминалу. Проблема, при попытке использовать редактора текстового режима. –  derobert 14.12.2012, 18:59

На ударе Mac OS X можно выполнить что-то как:

for file in $(find . -name "*.py"); do open -a SublimeText $file; done. 

Один недостаток состоит в том, что это открывается в новом окне Сублимата вместо того, чтобы использовать новую вкладку.

2
27.01.2020, 20:01

Теги

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