sessmaint - data management for the dirstack and oldjobs session management commands


    sessmaint [options] <session1> ... <sessionN>


sessmaint is a general management interface for the session management commands provided by the dirstack and oldjobs scripts. Those commands store session information in a sessions directory. sessmaint provides a set of maintenance operations to handle those files.

The sessions directory is in ~/.sessions. It contains a list of "standard" sessions that the user habitually uses. This list will vary from user to user. This file is in ~/.sessions/sessions.

The other files in the sessions directory may be looked at in two ways -- jobs files and directory files, or active sessions and saved sessions.

Jobs files store a list of jobs the user is expecting to have available at the re-start of a particular named session. (For example, after logging out and then logging in again.) The jobs files have the j- prefix. This file can be created by redirecting the output of the jobs command into the jobs file. Jobs files are used by oldjobs.

Directory files are a list of directories to be added to a directory stack. This is the directory stack from the named session when it was last exitted, with the assumption that the pushd and popd commands will be followed by a fresh stack save. Directory files are used by dirstack.

Saved sessions are the jobs and directories files for a particular named session with a particular process id. These files have the .save suffix. They are not used by anything but sessmaint. They may be used to restore old sessions or for historical reference.

sessmaint provides the following operations:


Warning: Be careful with session names. It'd be best to stick with distinct session names, and avoid being clever. Simple names have been used very successfully (e.g., "dev", "docs", "24", "middle48").

Session names containing spaces and non-alphanumerics may work, but they haven't been tested much at all. It is hoped that such names will be tested and supported at some point, but those definitely fall into the RSN category. Use those names at your own risk.


sessmaint takes the following options:


Wayne Morrison,


Copyright 2015 Wayne Morrison

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


dirstack(1), oldjobs(1), session-tests(1)