我希望得到命令的结果" top -c -b -n 1 "通过java, Runtime.getRuntime()。exec(命令) , 但进程列表的COMMAND列被压缩为" / usr / lib / x +"! 如何直接在linux终端上执行完整结果命令?
答案 0 :(得分:1)
top
man page提到了一个-w COLS
选项来指定它尝试格式化输出的列数:
$ top -c -b -n 1 -w 1000 | head -n10
top - 05:01:40 up 19 days, 13:29, 1 user, load average: 1.62, 1.49, 1.43
Tasks: 287 total, 2 running, 285 sleeping, 0 stopped, 0 zombie
%Cpu(s): 7.5 us, 3.1 sy, 0.0 ni, 89.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 32771952 total, 742552 free, 9000236 used, 23029164 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 23029384 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4227 qemu 20 0 10.628g 5.797g 4688 S 112.5 18.5 34262:17 /usr/libexec/qemu-kvm -name test-vm -S -machine pc-i440fx-rhel7.0.0,accel=kvm,usb=off -cpu Nehalem -m 6144 -realtime mlock=off -smp 3,sockets=3,cores=1,threads=1 -uuid A5A5DC7B-3F35-40F9-B799-954D5411A219 -nographic -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/test-vm.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc,driftfix=slew -global kvm-p+
84 root 25 5 0 0 0 R 68.8 0.0 13144:24 [ksmd]
2834 andrew 20 0 130180 1888 1284 R 6.2 0.0 0:00.02 top -c -b -n 1 -w 1000
...
现在它在大约500个字符后被切断了,但希望这对你正在做的事情已经足够了。