- This event has passed.
Essential Command Line Tools in the HPC Environment
On macOS, Linux, or Windows with Cygwin, or other POSIX-compliant environments, a number of versatile, time-tested command-line open-source tools with text-based user interface (TUI) are available to support performing common tasks that arise in advanced computation or data analysis. Unlike their graphical user interface (GUI) counterparts, which appear to be prevalent in today’s computing environments, these command-line tools can achieve (almost) infinite flexibility, efficiency, and reproducibility if used properly. For example, when connecting with a remote server (e.g. a computing cluster), using the text-based tool is lightweight and fast without the overhead of launching the X11/graphical server on the local computer. Using text-based tools is not as hard (or mysterious) as it may sound once the basics are understood. Once using TUI becomes muscle memory, one can focus on the subject of interest/research (e.g. editing a script/program or writing a manuscript) instead of operating the complex GUI. In this class, we will explain and demonstrate a number of such text-based command-line tools by examples and use cases. We will also discuss useful tips for configuring (customizing) these tools. All of these tools can be easily installed on a personal computer, a remote (or “cloud”) server, or one’s supercomputer account without superuser privilege. Their use is identical across the platforms, and they are expected to exist for many years to come. Specifically, we will explore the following topics:
- text editors: demo of useful features
- text files: a closer look
- ssh (secure shell): beyond a login tool
- git (version control): understanding the jargons
- tmux (terminal multiplexer): robust persistent console
- shell and shell script basics: important tips
- examples of line-oriented data processing
- examples of command-line utilities
Due to time constraints, each topic is not expected to be an exhaustive discussion of the underlying tools.
If you have any further questions regarding the workshop, please contact instructor Shao-Ching Huang.