Правильный способ перенести блок строк в пользовательском тексте в энергии

sudo tcpdump -Z использование initgroups (3), setgid (2) и setuid (2) для отбрасывания полномочий пользователя root его собственного процесса.

# code taken from: 
# http://www.opensource.apple.com/source/tcpdump/tcpdump-32/tcpdump/tcpdump.c

/* Drop root privileges and chroot if necessary */
static void
droproot(const char *username, const char *chroot_dir)
{
...
            if (initgroups(pw->pw_name, pw->pw_gid) != 0 ||
               setgid(pw->pw_gid) != 0 || setuid(pw->pw_uid) != 0) {
                    fprintf(stderr, "tcpdump: Couldn't change to '%.32s' uid=%lu gid=%lu: %s\n",
                        username, 
                        (unsigned long)pw->pw_uid,
                        (unsigned long)pw->pw_gid,
                        pcap_strerror(errno));
                    exit(1);
            }
...
}
3
02.08.2011, 10:57
2 ответа

Возможно, ценность для взгляда к этому плагину энергии http://www.vim.org/scripts/script.php?script_id=1697

2
27.01.2020, 21:20

У меня есть следующий набор отображения до, быстро отключают блок использования кода C++ #if 0...#endif

:vmap 0 V'<O#if 0<Esc>'>o#endif<Esc>

То, что это делает, настраивается отображение, которое только работает, в то время как режим Visual включен (vmap), который отключает визуальный режим (V), переходит к началу последнего визуального выбора ('<), вводит новую строку выше его (O), входит "#if, 0" текстов затем выходят из режима редактирования (<Esc>), затем идет в конец последнего визуального выбора ('>), добавляет строка ниже (o) и вводит "#endif" текст.

Вы могли сделать что-то подобное путем замены запуска и закончить текст, например.

:vmap 0 V'<O{% comment %}<Esc>'>o{% endcomment }<Esc>

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

2
27.01.2020, 21:20
  • 1
    Это работает! Спасибо за простое чистое решение. –  Gregory Petukhov 04.08.2011, 09:19
  • 2
    я попытался использовать Ваше решение для символьного визуального режима и перестал работать. Если я использую v и выбираю некоторые символы и нажимаю EscEsc и нажимаю' <or',> (в обоих случаях) я вхожу в первый непробел строки, где я выбрал некоторые символы. –  Gregory Petukhov 04.08.2011, 10:42
  • 3
    Да, я предполагаю, что это не работает на символьный визуальный режим, это после всего основанная на строке операция. –   04.08.2011, 11:31

Теги

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