Я использую 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.
Один способ использовать 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
Можно сделать это в awk:
awk 'NR==1{split($0,a,/[^ \t]/)}{sub(/^[ \t]*/,a[1]);print}' file.in
С sed:
sed -e '1{h;s/[^[:blank:]].*//;x;b' -e '}' -e 'G;s/[[:blank:]]*\(.*\)\n\(.*\)/\2\1/'