\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{pastrami (pastrami)} \pdfinfo{ /Title (onestop-nerd-shop.pdf) /Creator (Cheatography) /Author (pastrami (pastrami)) /Subject (OneStop(Nerd)Shop Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{4F3170} \definecolor{LightBackground}{HTML}{F4F2F6} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{OneStop(Nerd)Shop Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{pastrami (pastrami)} via \textcolor{DarkBackground}{\uline{cheatography.com/140937/cs/31147/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}pastrami (pastrami) \\ \uline{cheatography.com/pastrami} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Published 17th March, 2022.\\ Updated 17th March, 2022.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{2} \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Javascript}} \tn % Row 0 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = \textless{}value\textgreater{} & Declare variable \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} let \textless{}name\textgreater{} = prompt("\textless{}text"\textgreater{}) & Prompt user for input \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} + & Concat or add \tn % Row Count 4 (+ 1) % Row 3 \SetRowColor{white} if (\textless{}condition\textgreater{})\{\textless{}if true\textgreater{}\} else \{\textless{}if false\textgreater{}\} & Conditional \tn % Row Count 7 (+ 3) % Row 4 \SetRowColor{LightBackground} \textless{}condition\textgreater{} ? \textless{}if true\textgreater{} : \textless{}if false\textgreater{} & Conditional shorthand \tn % Row Count 9 (+ 2) % Row 5 \SetRowColor{white} \textless{}variable\textgreater{}.trim() & Trim whitespace \tn % Row Count 10 (+ 1) % Row 6 \SetRowColor{LightBackground} let \textless{}objname\textgreater{} = \{\textless{}name\textgreater{} : \textless{}value\textgreater{}, \textless{}name\textgreater{} : \textless{}value\textgreater{}\} & Create object with attributes \tn % Row Count 13 (+ 3) % Row 7 \SetRowColor{white} || & Logical or \tn % Row Count 14 (+ 1) % Row 8 \SetRowColor{LightBackground} \textless{}variable\textgreater{}.replace("\textless{}toreplace\textgreater{}","\textless{}replacewith\textgreater{}") & Replace in string \tn % Row Count 17 (+ 3) % Row 9 \SetRowColor{white} \&\& & Logical and \tn % Row Count 18 (+ 1) % Row 10 \SetRowColor{LightBackground} \textless{}variable\textgreater{}.toUpperCase() & To uppercase \tn % Row Count 20 (+ 2) % Row 11 \SetRowColor{white} let \textless{}name\textgreater{} = {[}\textless{}var1\textgreater{},\textless{}var2\textgreater{}{]} & Create list / Array \tn % Row Count 22 (+ 2) % Row 12 \SetRowColor{LightBackground} listName{[}\textless{}index\textgreater{}{]} & Access value in index position of array \tn % Row Count 24 (+ 2) % Row 13 \SetRowColor{white} "\textless{}string\textgreater{} \$(variable)" & Literals, add value to string. Can concat too with `+` \tn % Row Count 27 (+ 3) % Row 14 \SetRowColor{LightBackground} listName{[}\textless{}index\textgreater{}{]} = \textless{}value\textgreater{} & Update value in index position of array \tn % Row Count 29 (+ 2) % Row 15 \SetRowColor{white} Math.round(\textless{}value\textgreater{}) & Round number \tn % Row Count 30 (+ 1) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Javascript (cont)}} \tn % Row 16 \SetRowColor{LightBackground} Math.floor(\textless{}number\textgreater{}) & Round down \tn % Row Count 1 (+ 1) % Row 17 \SetRowColor{white} Math.ceil(\textless{}number\textgreater{}) & Round up \tn % Row Count 2 (+ 1) % Row 18 \SetRowColor{LightBackground} Math.min(\textless{}num1\textgreater{},\textless{}num2\textgreater{}) & Lowest value provided \tn % Row Count 4 (+ 2) % Row 19 \SetRowColor{white} Math.max(\textless{}num1\textgreater{},\textless{}num2\textgreater{}) & Highest value provided \tn % Row Count 6 (+ 2) % Row 20 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = Date() & Current time \tn % Row Count 7 (+ 1) % Row 21 \SetRowColor{white} \textless{}name\textgreater{}.getMinutes() & Return value. Works for hours, date, day, month, year as well \tn % Row Count 11 (+ 4) % Row 22 \SetRowColor{LightBackground} Date.parse("") & Create date \tn % Row Count 12 (+ 1) % Row 23 \SetRowColor{white} while (condition) \{\textless{}stuff to do\textgreater{}\} & Loop while condition is true \tn % Row Count 14 (+ 2) % Row 24 \SetRowColor{LightBackground} \textless{}name\textgreater{}.forEach(function(\textless{}name\textgreater{}) \{\textless{}stuff to do\} & Do once for each item in list \tn % Row Count 17 (+ 3) % Row 25 \SetRowColor{white} do \{\textless{}stuff to do\textgreater{}\} while(\textless{}condition\textgreater{}) & Do while condition is true \tn % Row Count 19 (+ 2) % Row 26 \SetRowColor{LightBackground} for (\textless{}initial\textgreater{},\textless{}condition\textgreater{},\textless{}increament\textgreater{}) \{stuff to do\} & For loop while condition is true. Increamenet runs after each loop. \tn % Row Count 23 (+ 4) % Row 27 \SetRowColor{white} function \textless{}name\textgreater{}(\textless{}things to bring in\textgreater{}) \{\textless{}thing to do\textgreater{}\} & Create a callable function \tn % Row Count 26 (+ 3) % Row 28 \SetRowColor{LightBackground} function \textless{}name\textgreater{}(\textless{}variable\textgreater{} = \textless{}default\textgreater{}) \{ \} & Provide a default value to variable if one isn't provided \tn % Row Count 29 (+ 3) % Row 29 \SetRowColor{white} function \textless{}name\textgreater{}() \{\textless{}thing to do\textgreater{} return \textless{}thing to give back\textgreater{}\} & Returns value \tn % Row Count 33 (+ 4) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Javascript (cont)}} \tn % Row 30 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = new \textless{}objName\textgreater{}() & Create object instance \tn % Row Count 2 (+ 2) % Row 31 \SetRowColor{white} \textless{}objName\textgreater{}.\textless{}variable\textgreater{} & Call variable value inside object. New variables can be used to create new prop \tn % Row Count 6 (+ 4) % Row 32 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = {[} \{\textless{}objVar\textgreater{}:\textless{}objVal\textgreater{}\},\{\textless{}objVar\textgreater{}:\textless{}objVal\textgreater{}\}{]} & Array of objects \tn % Row Count 9 (+ 3) % Row 33 \SetRowColor{white} for(let \textless{}var\textgreater{} in \textless{}obj\textgreater{}) \{\textless{}thing to do\textgreater{}\} & Enumerate through object properties \tn % Row Count 11 (+ 2) % Row 34 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = \seqsplit{document.querySelector(\#"text")} & Applies to the below, returns element / name on page matching selector \tn % Row Count 15 (+ 4) % Row 35 \SetRowColor{white} \textless{}name\textgreater{}.addEventListener("\textless{}listenerType\textgreater{}",\textless{}function\textgreater{}()) & Execute function when `\textless{}text\textgreater{}` is selected. Type can be click, mouseenter, mouseleave, mousedown, mouseup, mousemove, keydown, keyup \tn % Row Count 22 (+ 7) % Row 36 \SetRowColor{LightBackground} let \textless{}name\textgreater{} = \seqsplit{document.querySelectorAll(\#"text")} & Returns all elements / name on page matching selector \tn % Row Count 25 (+ 3) % Row 37 \SetRowColor{white} \textless{}form\textgreater{} \textless{}input type ="\textless{}type\textgreater{}" id="\textless{}name\textgreater{}" /\textgreater{} \textless{}/form\textgreater{} \textless{}script\textgreater{} \textless{}function to do\textgreater{} \textless{}/script\textgreater{} & Create a form with function \tn % Row Count 30 (+ 5) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Javascript (cont)}} \tn % Row 38 \SetRowColor{LightBackground} export \textless{}item\textgreater{} & Export for use elsewhere \tn % Row Count 2 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Python}} \tn % Row 0 \SetRowColor{LightBackground} ** & Exponent \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \% & Modulus (Remainder) \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} // & Integer Division \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} / & Division \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} * & Multiplication, can replace strings \tn % Row Count 6 (+ 2) % Row 5 \SetRowColor{white} - & Subtraction \tn % Row Count 7 (+ 1) % Row 6 \SetRowColor{LightBackground} + & Addition, can concatenate strings \tn % Row Count 9 (+ 2) % Row 7 \SetRowColor{white} \textless{}name\textgreater{} = \textless{}value\textgreater{} & Declare variable \tn % Row Count 10 (+ 1) % Row 8 \SetRowColor{LightBackground} \_\textless{}name\textgreater{} = \textless{}value\textgreater{} & "Unuseful" variable \tn % Row Count 11 (+ 1) % Row 9 \SetRowColor{white} \# & Comment \tn % Row Count 12 (+ 1) % Row 10 \SetRowColor{LightBackground} """\textless{}text\textgreater{}""" & Docstring / multi line comment \tn % Row Count 14 (+ 2) % Row 11 \SetRowColor{white} print(\textless{}value\textgreater{}) & Prints value to console \tn % Row Count 16 (+ 2) % Row 12 \SetRowColor{LightBackground} \textless{}name\textgreater{} = input() & Assign input from user to variable \tn % Row Count 18 (+ 2) % Row 13 \SetRowColor{white} len(\textless{}value\textgreater{}) & Determines length \tn % Row Count 19 (+ 1) % Row 14 \SetRowColor{LightBackground} str(\textless{}value\textgreater{}) & Converts to string \tn % Row Count 20 (+ 1) % Row 15 \SetRowColor{white} int(\textless{}value\textgreater{}) & Converts to int \tn % Row Count 21 (+ 1) % Row 16 \SetRowColor{LightBackground} float(\textless{}value\textgreater{}) & Convert to float \tn % Row Count 22 (+ 1) % Row 17 \SetRowColor{white} == & Equal to \tn % Row Count 23 (+ 1) % Row 18 \SetRowColor{LightBackground} != & Not equal to \tn % Row Count 24 (+ 1) % Row 19 \SetRowColor{white} \textless{}, \textgreater{}, \textless{}=, \textgreater{}= & Less than, greater than \tn % Row Count 26 (+ 2) % Row 20 \SetRowColor{LightBackground} \textless{}value\textgreater{} is \textless{}boolean\textgreater{} & Implicint boolean evaluation \tn % Row Count 28 (+ 2) % Row 21 \SetRowColor{white} (\textless{}condition\textgreater{}) and/or (\textless{}condition\textgreater{}) & Mix boolean and comparison \tn % Row Count 30 (+ 2) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Python (cont)}} \tn % Row 22 \SetRowColor{LightBackground} if \textless{}condition\textgreater{}: \textless{}thing to do\textgreater{} elif \textless{}condition\textgreater{}: \textless{}thing to do\textgreater{} else: \textless{}thing to do\textgreater{} & Runs if, if true. Tries elif if not. Runs else if none are true. \tn % Row Count 5 (+ 5) % Row 23 \SetRowColor{white} while \textless{}condition\textgreater{}: \textless{}thing to do\textgreater{} & Does while the condition is true \tn % Row Count 7 (+ 2) % Row 24 \SetRowColor{LightBackground} while\textless{}condition\textgreater{}: \textless{}thing to do\textgreater{} break & Stops when break is reached \tn % Row Count 9 (+ 2) % Row 25 \SetRowColor{white} while \textless{}condition\textgreater{}: \textless{}thing to do\textgreater{} continue & Jumps to start of loop when continue is reached \tn % Row Count 12 (+ 3) % Row 26 \SetRowColor{LightBackground} for \textless{}thing\textgreater{} in \textless{}list\textgreater{}: \textless{}do this\textgreater{} & Do for each item in list \tn % Row Count 14 (+ 2) % Row 27 \SetRowColor{white} for \textless{}thing\textgreater{} in range(\textless{}number\textgreater{}) & Do number of times in range. Range can take a (\textless{}start\textgreater{},\textless{}stop\textgreater{},\textless{}interation increase\textgreater{}). Negative counts down. \tn % Row Count 20 (+ 6) % Row 28 \SetRowColor{LightBackground} for \textless{}thing\textgreater{} in \textless{}list\textgreater{}: \textless{}thing to do\textgreater{} break else: \textless{}thing to do\textgreater{} & When break is reached, else will run \tn % Row Count 24 (+ 4) % Row 29 \SetRowColor{white} import \textless{}module name\textgreater{}, \textless{}modulename\textgreater{} & Imports modules \tn % Row Count 26 (+ 2) % Row 30 \SetRowColor{LightBackground} from \textless{}module name\textgreater{} import \textless{}item\textgreater{} & Imports specific section of module \tn % Row Count 28 (+ 2) % Row 31 \SetRowColor{white} sys.exit() & Ends program \tn % Row Count 29 (+ 1) % Row 32 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{def \textless{}name\textgreater{}(\textless{}stuff\textgreater{},\textless{}to\textgreater{},\textless{}bring\textgreater{}) : \textless{}stuff to do\textgreater{}} \tn % Row Count 30 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.8 cm} p{0.8 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{SQL}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{} \tn % Row Count 0 (+ 0) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Coming soon} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.6 cm} x{4.4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Shell}} \tn % Row 0 \SetRowColor{LightBackground} cd & Navigation, \textasciitilde{} for home, .. for up \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} mkdir & Creates directory \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} rm & Removes file (-rf for all/dir) \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} ls & List contents, -R for sub dir's, -l for permissions \tn % Row Count 8 (+ 3) % Row 4 \SetRowColor{LightBackground} pwd & Show current path \tn % Row Count 9 (+ 1) % Row 5 \SetRowColor{white} cat & Create file \tn % Row Count 10 (+ 1) % Row 6 \SetRowColor{LightBackground} mv & Renames dir \tn % Row Count 11 (+ 1) % Row 7 \SetRowColor{white} sudo & Superuser/root command \tn % Row Count 12 (+ 1) % Row 8 \SetRowColor{LightBackground} history & Command history \tn % Row Count 13 (+ 1) % Row 9 \SetRowColor{white} pr & File edit, -x for columns, -h header, -n line numbers \tn % Row Count 16 (+ 3) % Row 10 \SetRowColor{LightBackground} Chown \textless{}user\textgreater{} & r(ead), w(rite), (e)x(ecute), -= for none. \textless{}user\textgreater{}:\textless{}group\textgreater{} filename for dir \tn % Row Count 20 (+ 4) % Row 11 \SetRowColor{white} adduser & Create user \tn % Row Count 21 (+ 1) % Row 12 \SetRowColor{LightBackground} passwd -l & Change password \tn % Row Count 22 (+ 1) % Row 13 \SetRowColor{white} usermod -a -G \textless{}group\textgreater{} \textless{}name\textgreater{} & Add user to group \tn % Row Count 24 (+ 2) % Row 14 \SetRowColor{LightBackground} deluser \textless{}name\textgreater{} \textless{}group\textgreater{} & Remove from group \tn % Row Count 26 (+ 2) % Row 15 \SetRowColor{white} userdel & Remove user \tn % Row Count 27 (+ 1) % Row 16 \SetRowColor{LightBackground} finger & Shows logged in users \tn % Row Count 28 (+ 1) % Row 17 \SetRowColor{white} ssh -p \textless{}port\textgreater{} \textless{}user\textgreater{}@\textless{}ip\textgreater{} & SSH into ip at port \tn % Row Count 30 (+ 2) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{3.6 cm} x{4.4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Shell (cont)}} \tn % Row 18 \SetRowColor{LightBackground} fg & Run stopped process in foreground \tn % Row Count 2 (+ 2) % Row 19 \SetRowColor{white} bg & Send process to background \tn % Row Count 4 (+ 2) % Row 20 \SetRowColor{LightBackground} top & Shows active processes \tn % Row Count 5 (+ 1) % Row 21 \SetRowColor{white} ps & Shows process running for user \tn % Row Count 7 (+ 2) % Row 22 \SetRowColor{LightBackground} kill PID & Kill process \tn % Row Count 8 (+ 1) % Row 23 \SetRowColor{white} df & Shows hard disk space \tn % Row Count 9 (+ 1) % Row 24 \SetRowColor{LightBackground} free & Shows RAM \tn % Row Count 10 (+ 1) % Row 25 \SetRowColor{white} nano & Editor \tn % Row Count 11 (+ 1) % Row 26 \SetRowColor{LightBackground} curl & Download from URL \tn % Row Count 12 (+ 1) % Row 27 \SetRowColor{white} tar -C \textless{}path\textgreater{} & Unzip to path \tn % Row Count 13 (+ 1) % Row 28 \SetRowColor{LightBackground} find \textless{}path\textgreater{} -name \textless{}name\textgreater{} & Find file in path, can use wildcard * \tn % Row Count 15 (+ 2) % Row 29 \SetRowColor{white} systemctl status & Check service status \tn % Row Count 16 (+ 1) % Row 30 \SetRowColor{LightBackground} systemctl stop & Stop service \tn % Row Count 17 (+ 1) % Row 31 \SetRowColor{white} systemctl start & Start service \tn % Row Count 18 (+ 1) % Row 32 \SetRowColor{LightBackground} systemctl restart & Restart service \tn % Row Count 19 (+ 1) % Row 33 \SetRowColor{white} service -{}-status-all & Show all service statuses \tn % Row Count 21 (+ 2) % Row 34 \SetRowColor{LightBackground} scp \textless{}source\textgreater{} \textless{}destination\textgreater{}:\textless{}path\textgreater{} & Move files through ssh \tn % Row Count 23 (+ 2) % Row 35 \SetRowColor{white} mv \textless{}source\textgreater{} \textless{}destination\textgreater{} & Move file \tn % Row Count 25 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.16 cm} x{5.84 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Screen}} \tn % Row 0 \SetRowColor{LightBackground} ctrl-a & Use screen shortcut \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} -S \textless{}name\textgreater{} & Create and name sessions \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} c & Create window \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} " & List windows \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} 0-9 & Switch to window \# \tn % Row Count 5 (+ 1) % Row 5 \SetRowColor{white} A & Rename window \tn % Row Count 6 (+ 1) % Row 6 \SetRowColor{LightBackground} S & split horizontally \tn % Row Count 7 (+ 1) % Row 7 \SetRowColor{white} | & Split vertically \tn % Row Count 8 (+ 1) % Row 8 \SetRowColor{LightBackground} \textless{}tab\textgreater{} & Switch focus \tn % Row Count 9 (+ 1) % Row 9 \SetRowColor{white} ? & List commands \tn % Row Count 10 (+ 1) % Row 10 \SetRowColor{LightBackground} -list & List screens \tn % Row Count 11 (+ 1) % Row 11 \SetRowColor{white} -r & Resume screen \tn % Row Count 12 (+ 1) % Row 12 \SetRowColor{LightBackground} ctrl-a & Toggle screens \tn % Row Count 13 (+ 1) % Row 13 \SetRowColor{white} Q & close all but current \tn % Row Count 14 (+ 1) % Row 14 \SetRowColor{LightBackground} X & Close current \tn % Row Count 15 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.76 cm} x{4.24 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Multipass}} \tn % Row 0 \SetRowColor{LightBackground} launch -{}-name \textless{}name\textgreater{} & Creates and starts new instance \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} exec \textless{}instance\textgreater{} -{}- \textless{}command\textgreater{} & Sends command \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} list & List instances \tn % Row Count 5 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{Stop} \tn % Row Count 6 (+ 1) % Row 4 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Start} \tn % Row Count 7 (+ 1) % Row 5 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{Delete} \tn % Row Count 8 (+ 1) % Row 6 \SetRowColor{LightBackground} shell \textless{}instance\textgreater{} & Enter instance \tn % Row Count 9 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Extras}} \tn % Row 0 \SetRowColor{LightBackground} openvpn \textless{}file\_location\textgreater{} & start ovpn session \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} SecList & Common used everything - \{\{link="https://github.com/danielmiessler/SecLists"\}\}found here\{\{/link\}\} \tn % Row Count 7 (+ 5) % Row 2 \SetRowColor{LightBackground} admin'\# & Example of injection, ends with `'` then starts a comment with \#. Sometimes any pw can work after \tn % Row Count 12 (+ 5) % Row 3 \SetRowColor{white} \{\{link="https://www.wappalyzer.com/apps"\}\}Wappalyzer\{\{/link\}\} & Site tech scanner \tn % Row Count 16 (+ 4) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{admin:admin \newline guest:guest \newline user:user \newline root:root \newline administrator:password} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.8 cm} x{7.2 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{nmap}} \tn % Row 0 \SetRowColor{LightBackground} -sV & Probe ports for service/version \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} -sC & Scans with default set of scripts ({\bf{INTRUSIVE}}) \tn % Row Count 3 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4.24 cm} x{3.76 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{gobuster}} \tn % Row 0 \SetRowColor{LightBackground} Requires \{\{link="https://go.dev/doc/install"\}\}Go\{\{/link\}\} & go get \&\& go build \&\& go install \tn % Row Count 3 (+ 3) % Row 1 \SetRowColor{white} dir & Specify web directory enumeration \tn % Row Count 5 (+ 2) % Row 2 \SetRowColor{LightBackground} -{}-url & Target \tn % Row Count 6 (+ 1) % Row 3 \SetRowColor{white} -{}-wordlist & Wordlist to use \tn % Row Count 7 (+ 1) % Row 4 \SetRowColor{LightBackground} -x & Search for specific file extensions \tn % Row Count 9 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{\seqsplit{https://github.com/OJ/gobuster.git}} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.16 cm} x{5.84 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{ftp}} \tn % Row 0 \SetRowColor{LightBackground} anonymous & Username sometimes works \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} get & Downloads file \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} bye & Exits \tn % Row Count 3 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4.24 cm} x{3.76 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{impacket}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{python3 mssqlclient.py \textless{}destination\textgreater{}/\textless{}user\textgreater{}@\textless{}ip\textgreater{} -windows-auth} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{mssqlclient.py} \tn % Row Count 3 (+ 1) % Row 2 \SetRowColor{LightBackground} SELECT \seqsplit{is\_srvrolemember('sysadmin');} & Checks curernt privledge \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} EXEC xp\_cmdshell 'net user'; & Check if command shell is active \tn % Row Count 7 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Found \{\{link="https://github.com/SecureAuthCorp/impacket"\}\}here\{\{/link\}\}. \newline Python classes for working with network protocols} \tn \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{1.52 cm} x{6.48 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{wifite}} \tn % Row 0 \SetRowColor{LightBackground} -{}-dict & Specify dictionary for use \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} -{}-kill & Kill conflicting processes \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{WPS Pixie-Dust attack} \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{WPS PIN attack} \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{PMKID capture} \tn % Row Count 5 (+ 1) % Row 5 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{WPA Handshake capture} \tn % Row Count 6 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{p{0.96 cm} x{7.04 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{mySQL}} \tn % Row 0 \SetRowColor{LightBackground} -u & Specify user \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} -h & Connect to host \tn % Row Count 2 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.44 cm} x{4.56 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{smbclient}} \tn % Row 0 \SetRowColor{LightBackground} -L & List directories \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \textbackslash{}\textbackslash{}\textbackslash{}\textbackslash{}\textbackslash{}\textless{}ip\textgreater{}\textbackslash{}\textbackslash{}\textless{}folder\textgreater{} & smb to folder \tn % Row Count 3 (+ 2) % Row 2 \SetRowColor{LightBackground} Empty pw & Can work for guest access \tn % Row Count 5 (+ 2) % Row 3 \SetRowColor{white} get & Downloads content of dir \tn % Row Count 7 (+ 2) % Row 4 \SetRowColor{LightBackground} exit & Closes \tn % Row Count 8 (+ 1) % Row 5 \SetRowColor{white} -N & No password \tn % Row Count 9 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{2.64 cm} x{5.36 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{telnet}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Sometimes passwords can be blank} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Common usernames & root, administrator, admin, root \tn % Row Count 3 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}