Отступ как первая строка

Я использую Debian, сжимают. Я вижу определение в заголовках, соответствующих моему текущему ядру, в /usr/src/linux-headers-2.6.32-5-common-vserver/include/linux/sched.h. Определение запускается с

struct task_struct {
        volatile long state;    /* -1 unrunnable, 0 runnable, >0 stopped */
        void *stack;
        atomic_t usage;
        unsigned int flags;     /* per process flags, defined below */
        unsigned int ptrace;

        int lock_depth;         /* BKL lock depth */

HTH.

2
14.12.2012, 01:08
3 ответа

Один способ использовать perl:

perl -pe 'if ($. == 1) { m/^(\s*)/; $space = $1 || q{}; next } s/^\s*/$space/' infile

Это уступает:

    x=1+2+3+4+
    5+6+7+8
    +9+10+12
5
27.01.2020, 21:49

Можно сделать это в awk:

awk 'NR==1{split($0,a,/[^ \t]/)}{sub(/^[ \t]*/,a[1]);print}' file.in
5
27.01.2020, 21:49

С sed:

sed -e '1{h;s/[^[:blank:]].*//;x;b' -e '}' -e 'G;s/[[:blank:]]*\(.*\)\n\(.*\)/\2\1/'
2
27.01.2020, 21:49

Теги

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