QTASK(5)

πŸ’– QTASK(5) β€” the qtask file format, bestie edition πŸ’–

okay so this is the manual page for qtask, aka the file format of the qtask file, living in the Grid Engine File Formats corner of the man pages. buckle up, it's short and it's slay ✨


🌸 NAME 🌸

qtask β€” file format of the qtask file. that's it, that's the name, no notes πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so a qtask file is literally the vibe list that says which commands get submitted to Grid Engine for remote execution by qtcsh(1). that's the whole job. πŸ’–

and lowkey it's flexible too: the qtask file optionally may contain qrsh(1) command-line parameters. those parameters get passed straight to the qrsh(1) command that qtcsh is using to submit the commands. so you're not just saying what runs, you're whispering how 🫢

there are two flavors of qtask file, and yes you can have both:

  • a cluster global qtask file that defines cluster wide defaults 🌈
  • a user specific qtask file that eventually overrides and enhances those definitions ✨

the cluster global file lives at <sge_root>/<cell/common/qtask, while the user specific file can be found at ~/.qtask. πŸ‘‘

and here's the admin power move: an exclamation mark preceding command definitions in the cluster global file can be used by the administrator to deny overriding of such commands by users. so if your sysadmin put a ! on it, it's not yours to change, periodt πŸ’€


✨ FORMAT ✨

the overall format of the qtask file is that of a tabulated list. cute and structured, we love her πŸŽ€

  • each line starting with a '#' character is a comment line β€” say whatever you want, it's giving diary entry πŸ“
  • each non-comment line defines a command to be started remotely

a definition starts with the command name, and that name must match exactly the name as typed in a qtcsh(1) command-line. no fuzzy matching, no vibes-based matching, exact only bestie 😭

Pathnames are not allowed in qtask files. so absolute or relative pathnames in qtcsh(1) command-lines always lead to local execution, even if the command itself is the same as defined in the qtask file. yes literally even then. it's giving "so close yet so far" πŸ™ˆ

the command name can be followed by an arbitrary number of qrsh(1) option arguments, which are passed on to qrsh(1) by qtcsh(1). go off, add as many as you need πŸ”₯

and one more time for the people in the back: an exclamation mark prefixing the command in the cluster global qtask file prevents overriding by the user supplied qtask file. no cap. ⭐


🧚 EXAMPLES 🧚

the following qtask file

firefox -l a=sol-sparc64 -v DISPLAY=myhost:0
grep -l h=filesurfer
verilog -l veri_lic=1

designates the applications firefox, grep and verilog for interactive remote execution through Grid Engine. πŸš€

so like, breaking it down because ikyk it's a lot:

  • Firefox is requested to run only on Solaris64 architectures with the DISPLAY environment variable set to 'myhost:0'
  • grep only runs on the host named 'filesurfer'
  • verilog requests availability of a verilog license in order to get executed remotely

three lines, three whole personalities, all of them ate πŸ’…πŸŒΈ


πŸ‘‘ SEE ALSO πŸ‘‘

sge_intro(1), qtcsh(1), qrsh(1).


see sge_intro(1) for a full statement of rights and permissions. πŸ“œ


okay that's the whole page, you're officially educated bestie πŸŽ“βœ¨ this was SGE 8.1.3pre, dated $Date: 2005-03-30 14:31:37 $, from the QTASK(5) manual. go forth and qtask responsibly, mwah πŸ’–πŸ¦‹πŸŽ€