CLI tools ========= There are many utilities available on PSMN clusters. Bash ---- Compute jobs launched on clusters are most often initialized by user-written shell scripts. Beyond that, many common operations can be simplified and automated using shell scripts. For an introduction to shell scripting, you can refer to: * `Bash Programming - Introduction HOWTO [en] `_ * `Introduction à la programmation en Bash [fr] `_ * `The Art of Command Line [en, fr, ...] `_ ShellCheck ---------- For all shell scripts, use ``shellcheck`` linter command to find syntax errors, and sometimes bugs. It can also be used online : ``_ Detox ----- From detox man page: The detox utility renames files to make them easier to work with. It removes spaces and other such annoyances. It'll also translate or cleanup Latin-1 (ISO 8859-1) characters encoded in 8-bit ASCII, Unicode characters encoded in UTF-8, and CGI escaped characters **in filenames**. iconv ----- Help converting files from one encoding to another. Screen & Tmux ------------- `screen `_ and `tmux `_ are terminal multiplexers. They replace the ``nohup`` command, **which is banned on PSMN**. They are installed on all PSMN clusters. You can use either one, or both, depending on your preferences. We provide a `reference card (pdf) <../_static/refcard-tmux-screen.pdf>`_, and you can read the `Tao of tmux `_ Some configuration files are also available at ``/applis/PSMN/debian11/skeletons/`` (``.screenrc``, ``.tmux.conf``) Reptyr ------ `reptyr `_ is used to re-attach a process, which has been started from another terminal, **from the same user, on the same host**, to the active terminal. ``reptyr`` is installed on all PSMN clusters.