||Bash is the programming language used by the Linux terminal. When you use a command like
mkdir newfolder you are writing in bash.
Knowing a little bash means you can accomplish simple and complex tasks way more efficiently. For example, creating three new python files with the GUI
needs a lot of clicks, while in bash is simply
touch file1.py file2.py file3.py - those filenames can be anything you want. More complex tasks are achievable the more you know, for example replacing all spaces with underscores in
all the filenames in a folder can be achieved with
rename 's/[\r\n]//g' *
||A text-based data format commonly used, due to its simplicity. CSV stands for 'Comma Separated Values' and is literally rows of data, split into columns by a separator (such as a comma, hence the name, but other characters can be used such as a semicolon), and rows by entering a new line.
As example, here is a shop inventory list in csv format:
item, price, quantity
apple, £0.50, 20
cola, £0.65, 48
morning rolls, £0.30, 64
savlon cream, £2.49, 10
Because a CSV file is essentially a grid, it is commonly opened and used in spreadsheet software such as Excel, but text editors work with it just fine.
||In Linux terminology, a distro is a 'distribution' of Linux. That is, because anyone can freely use free and open source software, many people have created different linux experiences.
There are many distros, and many are based on others. Some are slight tweaks to others, some are completely different, but all are based on the linux kernel.
Some major distros you may have heard of include Ubuntu (Canonical), Fedora (Red Hat), Debian, and Arch.
||Flags are additional signals you can add to commands given in the terminal, and which are preceded by dash (
-). For example,
ls lists the files in the current directory, while
ls -l spits out the files in nice rows with additional information. Each command should have a
man page, where you can learn about the command and which should include the list of valid flags and what they do. To find the flags for the
ls command, enter
man ls and scroll down. You should see that for
l it says 'use a long listing format'. Easy peasy!
|Linux / Linux kernel
||A module is basically a pre-written python file. You can install other people's, create your own,
or use the ones that come already bundled with python (called the "standard library"). Modules are
introduced to a program with the line
import [modulename]. For example, to import a module
from the standard library containing useful mathematical functions, you'd enter
in your python script or REPL session.
||Pip stands for 'Pip installs programs'. It is the program which python uses to install
modules to your computer. For example, to install a program named
arrow (a handy module for working with time), enter
pip install arrow in your terminal.
You may not have permission to install software on your machine.
To remedy this, on linux use
pip install --user arrow to install it as your current user (rather than the root user). If that still doesn't work, install as the root user with
sudo pip install arrow followed by your password, which executes this as the superuser (admin) account.
Finally, you may also. Note that pip is not the only way to install python modules, but it is the easiest.
||A REPL, or "Read-Eval-Print Loop" is basically an interactive session of a programming language, like Python, where each line is
executed by your computer when it is entered, rather than by writing a script and then running it. By default python comes with IDLE
(or IDLE3 for python3) which opens in REPL mode by default, or you can start a REPL by entering |
python3 in the terminal,
or if your default python is already python3, simply by entering
python. The REPL will tell you which version of python
it is running when it opens up. It will then show you the
>>> prompt, and wait for you to enter python code.
||The root user on a Linux computer is the admin account will full privileges to install software etc. You can run any command in
the terminal as the root user by preceding it with
sudo upon which you will be prompted for the root password.
||The terminal is an application which you can enter text commands to your computer (by default, using bash).
This is where you can enter commands like
mkdir newfolder. Using the terminal may seem a little daunting at first, but it is actually very simple, and extremely powerful.
There is a bit of a myth that Linux is tricky for beginners because it relies on the terminal too much - actually, while the terminal may be a more efficient tool for a lot of tasks,
you can get on just a well using the 'graphical user interface' like you are used to in Windows or Mac (which also have terminals). The Mac terminal also uses bash, but the windows 'Command Line' terminal doesn't.
If you are using Windows 10, I recommend installing a 'Windows Subsystem for Linux' which lets you install a Linux bash terminal and follow the same commands as Windows or Mac.
||A lightweight application for writing text, which actually saves the text in a plain format that other applications can easily read.
This is to be contrasted with Word Processors like Microsoft Word which saves text in a special 'mark up' format which also contains formatting, color, and other information. If you try to open a Microsoft Word document in a text editor, you'll just see a jumble of nonsense.
||A word processor like Microsoft Word or Libreoffice Writer doesn't just save the text you enter, but formatting instructions, images, tables, and all the rest. For that reason, if you open a word processor in a text editor, you see gobbledigook: