OTFSHRINK(1)

🌸 otfshrink 🌸 (section 1 of the manual)

okay bestie, you know how OTF traces can be like a group chat with 400 unread messages and you only care about, like, three people? otfshrink is the app that lets you ✨leave only the ones you want✨ and makes you a brand new trace. periodt.


🌈 NAME 🌈

otfshrink β€” create a new OTF trace that only includes specified processes πŸ’…


πŸŽ€ DESCRIPTION πŸŽ€

otfshrink makes a new OTF trace that only includes the processes you tell it to. that's it, that's the whole vibe. you point it at an input file, you tell it who's staying, and it hands you back a smaller, cuter trace πŸ¦‹

here's the syntax, and bestie, -i <file> is not optional, she's the main character:

otfshrink [options] -i <file>

🧸 options 🧸

  • -h, --help β€” shows you this help message. like a little "wyd" but for flags 🫢
  • -V β€” shows the OTF version. version-checking is self-care.
  • -i <file> β€” the input file name. this is your source trace, the one you're about to slim down.
  • -o <name> β€” namestub of the output file. the default is out, so if you don't say anything she's naming it out and moving on πŸ’€
  • -l "<list>" β€” a list of processes in quotes to enable, i.e. keep in the copy. you can be fancy with it:
'-l "1,2 4-8 3",10 12-20'

yes the quotes are doing a lot of work here. give them the respect they deserve πŸ™ˆ

  • -v β€” inverts the setting from -l, i.e. deactivate/exclude the listed processes. same energy, opposite direction πŸ”₯
  • -m "<list>" β€” maps all the listed processes onto one single representative and removes all the remaining ones ✨ the first process in the list is the representative. and listen β€” this one must not be mixed with -l and -v. she's exclusive, not in a mean way, just in a "pick a lane" way πŸ’œ
  • -f <file> β€” reads multiple -m lists from the given file, one list/group per line. empty lines are allowed, we're not monsters πŸ“
  • -s <mode> β€” simulation mode, aka window shopping πŸ›οΈ displays all the selected processes and no files are created. display modes: (l)ist, (r)ange, or (t)able, and it defaults to range.
  • -p <file> β€” displays all processes with name and id input file without ".otf" 🧚
oh and heads up bestie: multiple instances of -l, -m, and -f may be used. stack them, layer them, go off πŸ‘‘

and that's the whole page, no notes, go make a smaller trace, you ate πŸ’–

this cuteness was brought to you by otfshrink 1.12.5, dated February 2026, and it lives in the OTFSHRINK(1) manual. mwah 😘

πŸ“¦ where this page comes from