QRLS(1P)

πŸ’– PROLOG πŸ’–

okay bestie, real talk before we get into it: this page is from the POSIX Programmer's Manual ✨. The Linux version of this whole situation might act different β€” so if you're on Linux, go check the matching Linux manual page for the actual tea πŸ«– β€” or honestly the interface might just not be implemented on Linux at all. no cap. πŸ’€


🌸 NAME 🌸

qrls β€” release batch jobs πŸŽ€


✨ SYNOPSIS ✨

qrls [-h hold_list] job_identifier...

πŸ’… DESCRIPTION πŸ’…

so. a batch job can be carrying one or more holds, and holds are literally just things stopping the job from executing. the second every single hold gets removed, the job becomes eligible to run β€” that's what we call being released, periodt. πŸ‘‘

removing a hold happens by sending a request to the batch server that manages that job. qrls is just the user-accessible client of batch services that asks for holds to get removed from one or more batch jobs. it's giving middleman, but make it useful. πŸ¦‹

here's the deal: qrls shall remove one or more holds from those batch jobs where a batch job_identifier is handed to the utility.

it does them in order β€” the order in which their batch job_identifiers are presented to the utility. no queue-jumping, bestie. βœ‹

and if it fails to process one batch job_identifier successfully? it shall proceed to process the remaining batch job_identifiers, if any. it does not give up on the whole group chat because one person left it on read. 😭

for each batch job, qrls removes holds by sending a Release Job Request to the batch server that manages that job.

and it shall not exit until the holds have been removed from the batch job corresponding to each successfully processed batch job_identifier. so don't be out here closing terminals like πŸ‘€


πŸŽ€ OPTIONS πŸŽ€

qrls shall conform to the Base Definitions volume of POSIX.1‐2017, Section 12.2, Utility Syntax Guidelines. (yes, we follow the rules. iconic behavior. πŸ’œ)

the implementation shall support this one option:

  • -h hold_list β€” define the types of holds to be removed from the batch job.

the qrls -h option shall accept a value for the hold_list option-argument that is a string of alphanumeric characters in the portable character set (see the Base Definitions volume of POSIX.1‐2017, Section 6.1, Portable Character Set).

so qrls shall accept a hold_list value that's a string of one or more of the characters 'u', 's', or 'o', or the single character 'n'.

for each unique character in the hold_list option-argument, qrls shall add a value to the Hold_Types attribute of the batch job, like this β€” each one is a different hold type:

  • u β€” USER
  • s β€” SYSTEM
  • o β€” OPERATOR

if any of these characters show up more than once in the hold_list option-argument, the duplicates shall be ignored. we said what we said, bestie, the second one does not count. πŸ™ˆ

an existing Hold_Types attribute can be cleared by this hold type:

  • n β€” NO_HOLD
🚨 qrls shall consider it an error if any hold type other than 'n' is combined with hold type 'n'. you literally cannot mix them, it's not that kind of party. πŸ’€

strictly conforming applications shall not repeat any of the characters 'u', 's', 'o', or 'n' within the hold_list option-argument. qrls shall permit the repetition of characters, but shall not assign additional meaning to the repeated characters. so it'll let you, but it's not going to reward you for it. 😌

an implementation may define other hold types. the conformance document for an implementation shall describe any additional hold types, how they are specified, their internal behavior, and how they affect the behavior of the utility.

and if the -h option is not presented to qrls, the implementation shall remove the USER hold in the Hold_Types attribute. default behavior, slay. ✨


πŸ¦‹ OPERANDS πŸ¦‹

qrls shall accept one or more operands that conform to the syntax for a batch job_identifier (see Section 3.3.1, Batch Job Identifier). πŸ‘‘


🌈 STDIN 🌈

Not used. it's not invited. 🚫


πŸ“ INPUT FILES πŸ“

None.


πŸ’œ ENVIRONMENT VARIABLES πŸ’œ

these shall affect the execution of qrls:

  • LANG β€” provide a default value for the internationalization variables that are unset or null. (See the Base Definitions volume of POSIX.1‐2017, Section 8.2, Internationalization Variables for the precedence of internationalization variables used to determine the values of locale categories.)
  • LC_ALL β€” if set to a non-empty string value, override the values of all the other internationalization variables. main character energy fr fr πŸ‘‘
  • LC_CTYPE β€” determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments).
  • LC_MESSAGES β€” determine the locale that should be used to affect the format and contents of diagnostic messages written to standard error.
  • LOGNAME β€” determine the login name of the user.

🧚 ASYNCHRONOUS EVENTS 🧚

Default. no notes. πŸ’…


⭐ STDOUT ⭐

None. nothing to see here, babe.


🌸 STDERR 🌸

The standard error shall be used only for diagnostic messages. that's its whole job. 😭


πŸŽ€ OUTPUT FILES πŸŽ€

None.


πŸ’– EXTENDED DESCRIPTION πŸ’–

None.


πŸ”₯ EXIT STATUS πŸ”₯

these exit values shall be returned:

  • 0 β€” Successful completion. ate. πŸŽ‰
  • >0 β€” An error occurred. πŸ˜”

πŸ’€ CONSEQUENCES OF ERRORS πŸ’€

on top of the default behavior, qrls shall not be required to write a diagnostic message to standard error when the error reply received from a batch server indicates that the batch job_identifier does not exist on the server.

and whether or not qrls waits to output the diagnostic message while attempting to locate the job on other servers? that's implementation-defined. mystery behavior, honestly kind of cunty of the spec. 🫢

the following sections are informative. (read: bonus content, not the law. ✨)

πŸ¦‹ APPLICATION USAGE πŸ¦‹

None.


🌈 EXAMPLES 🌈

None.


πŸ’œ RATIONALE πŸ’œ

qrls allows users, operators, and administrators to remove holds from jobs. teamwork, bestie. 🀝

qrls does not support any job selection options or wildcard arguments. nope, not doing that. but users may acquire a list of jobs selected by attributes using the qselect utility. for example, a user could select all of their held jobs. 🎯

the -h option lets the user specify the type of hold that's to be removed. it allows for USER, SYSTEM, OPERATOR, and implementation-defined hold types. the batch server that manages the batch job will verify whether the user is authorized to remove the specified hold for that batch job. so like… permissions check, respectfully. βœ‹ if more than one type of hold has been placed on the batch job, a user may wish to remove only some of them. valid.

mail is not required on release because the administrator has the tools and libraries to build this option if required. no notifs, sorry babe. πŸ“­

qrls is a new utility vis-a-vis existing practice; it has been defined in this volume of POSIX.1‐2017 as the natural complement to the qhold utility. they're a duo, your honor. πŸ’ž


⭐ FUTURE DIRECTIONS ⭐

qrls may be removed in a future version. ⚠️ cherish it while you have it, bestie.


🌸 SEE ALSO 🌸

Chapter 3, Batch Environment Services, qhold, qselect

The Base Definitions volume of POSIX.1‐2017, Section 6.1, Portable Character Set, Chapter 8, Environment Variables, Section 12.2, Utility Syntax Guidelines


Portions of this text are reprinted and reproduced in electronic form from IEEE Std 1003.1-2017, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 7, 2018 Edition, Copyright (C) 2018 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between this version and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html .

Any typographical or formatting errors that appear in this page are most likely to have been introduced during the conversion of the source files to man page format. To report such errors, see https://www.kernel.org/doc/man-pages/reporting_bugs.html .


and that's the whole page, bestie!! πŸŽ€ this one came from IEEE/The Open Group, dated 2017, and it's the QRLS(1P) page β€” now go release some jobs and be the main character of your own batch queue. mwah πŸ’‹βœ¨

πŸ“¦ where this page comes from