๐Ÿ˜Š๐Ÿ˜Šๅงddvrd(โ•ฏโœงโˆ‡โœง)โ•ฏ ๆ–ฐใ—ใ„ใƒ’ใƒƒใƒ—ใจใ‚ฆใ‚จใ‚นใƒˆใฎ่„‚่‚ชใ‚ซใƒใƒผ๐ŸŽถ ์‹ ํƒ€์ด์œ„์œ„์•ˆ ์Šคํƒ€์ผํ™”?? GreyFile

?? GreyFile โ€” Mystic File Browser

Current path: usr/bin/



?? Go up: /usr

?? Viewing: pflags

#! /usr/bin/python
# -*- python -*-
# -*- coding: utf-8 -*-
#   print process flags
#   Copyright (C) 2015 Red Hat Inc.
#   Arnaldo Carvalho de Melo <acme@redhat.com>
#
#   This application is free software; you can redistribute it and/or
#   modify it under the terms of the GNU General Public License
#   as published by the Free Software Foundation; version 2.
#
#   This application is distributed in the hope that it will be useful,
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#   General Public License for more details.

import procfs, re, fnmatch, sys
import argparse

ps = None

def thread_mapper(s):
	global ps

	try:
		return [ int(s), ]
	except:
		pass
	try:
		return ps.find_by_regex(re.compile(fnmatch.translate(s)))
	except:
		return ps.find_by_name(s)

def main(argv):

	global ps
	ps = procfs.pidstats()

	parser = argparse.ArgumentParser(description='Print process flags')
	parser.add_argument('pid', nargs='*', help='a list of pids or names')
	args = parser.parse_args()

	if (len(argv) > 1):
		pids = args.pid
		pids = reduce(lambda i, j: i + j, list(map(thread_mapper, pids)))
	else:
		pids = ps.processes.keys()

	pids.sort()
	len_comms = [len(ps[pid]["stat"]["comm"]) for pid in pids if pid in ps]
	if len_comms:
		max_comm_len = max(len_comms)
	del(len_comms)

	for pid in pids:
		if pid not in ps:
			continue
		flags = ps[pid].stat.process_flags()
		# Remove flags that were superseeded
		if "PF_THREAD_BOUND" in flags and "PF_NO_SETAFFINITY" in flags:
			flags.remove("PF_THREAD_BOUND")
		if "PF_FLUSHER" in flags and "PF_NPROC_EXCEEDED" in flags:
			flags.remove("PF_FLUSHER")
		if "PF_SWAPOFF" in flags and "PF_MEMALLOC_NOIO" in flags:
			flags.remove("PF_SWAPOFF")
		if "PF_FREEZER_NOSIG" in flags and "PF_SUSPEND_TASK" in flags:
			flags.remove("PF_FREEZER_NOSIG")
		comm = ps[pid].stat["comm"]
		flags.sort()
		sflags = reduce(lambda i, j: "%s|%s" % (i, j), map(lambda a: a[3:],flags))
		print "%6d %*s %s" %(pid, max_comm_len, comm, sflags)

if __name__ == '__main__':
	main(sys.argv)


??

??

404 - Epoxy Empourium
Welcome to Epoxy Empourium
Product Suggestions

Oops! Page Not Found.

Sorry but we are unable to find the page that you are looking for.

Back to Home
Error image