Command Line Tools __________________ .. attention:: Be aware that the linked manual pages usually point to the linux man page, in some cases the parameters and flags slightly differ on other \*nix system. Unix "One o One" ================ .. list-table:: Basic Unix Commands :header-rows: 1 :widths: 15 50 25 10 * - Command - Description - Category - Guide(s) * - `rm `_ - Remove files or directories - File Operations - * - `mv `_ - Move (rename) files - File Operations - * - `ls `_ - List directory contents - File Operations - * - `cp `_ - Copy files and directories - File Operations - * - `tar `_ - Archiving utility - File Operations - * - `rmdir `_ - Remove empty directories - Directory Operations - * - `mkdir `_ - Make directories - Directory Operations - * - `cd `_ - Change the current working directory - Directory Operations - * - `pwd `_ - Print name of current/working directory - Directory Operations - * - `df `_ - Report file system disk space usage - File System - * - `du `_ - Estimate file space usage - File System - * - `mount `_ - Mount a filesystem - File System - * - `umount `_ - Unmount file systems - File System - * - `cat `_ - Concatenate files and print on the standard output - Text - * - `cut `_ - Remove sections from each line of files - Text - * - `head `_ - Output the first part of files - Text - * - `tail `_ - Output the last part of files - Text - * - `grep `_ - Print lines matching a pattern - Text - * - `less `_ - Page through text one screen at a time - Text - * - `echo `_ - Display a line of text - Text - * - `chmod `_ - Change file mode bits - Access Rights - * - `chown `_ - Change file owner/group - Access Rights - * - `chgrp `_ - change group ownership - Access Rights - * - `ps `_ - Report a snapshot of the current processes - Process Management - * - `top `_ - Display processes - Process Management - * - `kill `_ - Send a signal to a process / Kill a process - Process Management - * - `man `_ - Format and display the one-line manual pages - Help - * - `apropos `_ - Search the manual page names and descriptions - Help - Unix "Advanced" =============== .. list-table:: Advanced Unix Commands :header-rows: 1 :widths: 15 50 25 10 * - Command - Description - Category - Guide(s) * - `file `_ - Determine file type - - * - `find `_ - Search for files in a directory hierarchy - - * - `zip `_ - Package and compress (archive) files - - * - `unzip `_ - List, test and extract compressed files in a ZIP archive - - * - `gzip `_ - Compress or expand files - - * - `umask `_ - Get or set the file mode creation mask - Access Rights - * - `diff `_ - Compare files line by line - Text - * - `wc `_ - Print newline, word, and byte counts for each file - Text - * - `sort `_ - Sort lines of text files - Text - * - `sed `_ - Stream editor for filtering and transforming text - Text - * - `date `_ - Print or set the system date and time - - * - `who `_ - Show who is logged on - - * - `dd `_ - Convert and copy a file - - * - `id `_ - Print real and effective user and group IDs - - * - `uname `_ - Print system information - - * - `at `_ - Queue, examine or delete jobs for later execution - - * - `shutdown `_ - Bring the system down - - * - `nice `_ - Run a program with modified scheduling priority - Process Management - * - `spell `_ - - Text - * - `ldd `_ - Print shared library dependencies - - * - `seq `_ - Print a sequence of numbers - - * - `sleep `_ - Delay for a specified amount of time - - * - `read `_ - Read a single line from stdin or file - - * - `tr `_ - Translate or delete characters - Text - * - `tee `_ - Read from standard input and write to standard output and files - - * - `uniq `_ - Report or omit repeated lines - Text - * - `ifconfig `_ - Configure a network interface - Networking - * - `ip `_ - Show/Manipulate routing, devices, policy and tunnels - Networking - * - `netstat `_ - Print network connections, routing tables, etc. - Networking - * - `ping `_ - Send ICMP echo request to network host - Networking - * - `telnet `_ - User interface to the TELNET protocol - Networking - * - `ftp `_ - Internet file transfer program - Networking, File-Transfer - * - `nslookup `_ - Query Internet name servers interactively - Networking, Lookup - * - `finger `_ - User information lookup program - Networking, Lookup - * - `history `_ - - - * - `w `_ - Show who is logged on and what they are doing - System Info - * - `watch `_ - Execute a program periodically - - * - `whoami `_ - Print effective userid - System Info - My Personal Toolbox =================== Shell(s) -------- .. list-table:: :header-rows: 1 :widths: 25 75 * - Shell - Description * - `zsh `_ - The Z shell * - `ipython `_ - An enhanced interactive python shell * - `nushell `_ - Development ----------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `LLDB `_ - - Debugger - * - `GDB `_ - Allows you to see whats going on `inside` another program - Debugger - * - `Binutils `_ - A collection of binary tools - Binaries - :ref:`link ` * - `LLVM Tools `_ - - Binaries - :ref:`link ` * - `binwalk `_ - Various development tools - Binaries - * - `xxd `_ - Make a hexdump or the reverse - Binaries - * - `xxd-rs `_ - An xxd clone written in rust - Binaries - * - `hexyl `_ - Simple hex viewer for the terminal - Binaries - * - `SRecord `_ - Collection of tools for manipulating EPROM load files - Binaries - * - `otool `_ - Object file displaying tool - Binaries - * - `elfedit `_ - Update the ELF header of ELF files - Binaries - * - `elfdump `_ - Display information about ELF file - Binaries - * - `rustup `_ - Installer for systems programming language rust - Rust, Toolchain, Compiler - * - `cargo `_ - Build and dependency tool for the rust programming language - Rust, Build-Tool - * - `rustc `_ - The rust compiler - Rust, Compiler - * - `clang `_ - Clang C, C++, and Objective-C compiler - C/C++, Compiler - * - `gcc `_ - GNU project C and C++ compiler - C/C++, Compiler - * - `make `_ - GNU make utility to maintain groups of programs - Build-Tool - * - `git `_ - the stupid content tracker - SCM, Git - * - `gh `_ - Github CLI - SCM, Git - * - `vim `_ - Vi IMproved, a programmer's text editor - Editor - * - `neovim `_ - Edit text - Editor - * - `miniterm `_ - A console application that provides a small terminal application - Connectivity, Serial - Connectivity ------------ .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `socat `_ - Multipurpose relay (SOcket CAT) - Serial, TCP/IP, Networking - * - `arpping `_ - - Networking - * - `tshark `_ - - Tracing, TCP/IP, Networking - * - `ssh `_ - - SSH, Networking - * - `mosh `_ - - SSH, Networking - * - `scp `_ - - File-Transfer, SSH, Networking - * - `rsync `_ - - File-Transfer, SSH, Networking - * - `curl `_ - - File-Transfer, multi protocol - * - `wget `_ - - File-Transfer, multi protocol - * - `iftop `_ - - Monitoring, Networking - * - `ffsend `_ - - File-Transfer, multi protocol - * - `w3m `_ - - Browser - * - `lynx `_ - - Browser - * - `can-utils `_ - - CAN - * - `can-scripts `_ - - CAN - * - `lsusb `_ - - USB, System Information - Documentation & Writing ------------------------ .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `graphiz `_ - - Visualization - * - `gnuplot `_ - - Plot, Image - * - `sphinx `_ - - - * - `plantuml `_ - - UML - * - `pandoc `_ - - Format Converter - * - `termimad `_ - - Markdown, Renderer - Email ----- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `isync `_ - - - * - `neomutt `_ - - - * - `notmuch `_ - - - Encryption / Passwords ---------------------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `gpg `_ - - - * - `pass `_ - - - Proccesses / Monitoring ----------------------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `lsof `_ - - - * - `strace `_ - - - * - `ytop `_ - - - * - `htop `_ - - - Standard Unix Tools Alternatives -------------------------------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `ripgrep `_ - - - * - `bat `_ - - - * - `fd `_ - - - * - `exa `_ - - - * - `broot `_ - - - * - `tmux `_ - - - * - python -m zipfile - - - * - python -m tarfile - - - Encoding/Decoding ------------------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - python -m base64 - - - Formatting ---------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - python -m json.tool - - - File Manager ------------ .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `mc `_ - - - * - `nnn `_ - - - * - `ranger `_ - - - Contacts -------- TBD Calendar -------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `khal `_ - - - Task(s) / Todo -------------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `Taskworrior `_ - - - * - `ledger `_ - - - Finance ------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `ledger `_ - - - Documents --------- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - `papis `_ - - - Misc ---- .. list-table:: :widths: 15 50 25 10 :header-rows: 1 * - Tool - Description - Category - Guide(s) * - urlscan - - - * - urlopen - - - * - imgmagick - - - * - youtube-dl - - -