Reader small image

You're reading from  Beaglebone Media Center

Product typeBook
Published inJan 2015
Reading LevelIntermediate
Publisher
ISBN-139781784399993
Edition1st Edition
Languages
Right arrow
Author (1)
David Lewin
David Lewin
author image
David Lewin

David Lewin was introduced early to electronics and computers by TRS-80, Atari, and Commodore 64; he has never quit since then. He spends his free time watching out for technology for the next generation of embedded systems when he is not exploring philosophy. David is a passionate and creative embedded developer who spent 20 years working for automotive companies such as Renault, Peugeot, and Faurecia, as well as for satellites with Thales Alenia Space. He currently works in Sophia Antipolis, the French Riviera Silicon Valley, designing industrial embedded systems.
Read more about David Lewin

Right arrow

Ease your life with the command line


At the beginning, the command line can be confusing. Even though the instructions in the chapters of this book have been written for you to install in the easiest way, there's no reason to spend more time than necessary with this command line. Therefore, it's always helpful to have some tools and customizations on your system. In the long run, you will see that you will not be able to do without them.

Package management

Throughout the chapters in this book, the Linux distribution package tools are never mentioned. Indeed, you will always have commands as follows:

install apackage

This intentional abstraction helps you focus on installation itself and is short, to keep you away from syntax errors. Most importantly, with this you can set up your commands toolbox in such a way that whenever you would want to change to a different distribution, you will still use install package. Here is how you can do this:

Go and edit your bashrc in the following directory:

~/.bashrc

Here, define some aliases for debian:

  • alias install="sudo apt-get install"

  • alias update="sudo apt-get update"

  • alias search="sudo apt-cache search"

After saving and quitting the editor, you can apply your configuration using the following command:

debian@beaglebone:~$ source ~/.bashrc

As easy as it can be, you will then just rely on these commands most of the time to handle your system. In the case, when you use a different package system, you'll just have to modify accordingly, such as with Fedora:

  • alias install="yum install"

  • alias update="yum update"

  • alias search="yum list"

Get to know what you did previously

Let's keep on personalizing the bashrc file, but this time with the goal being to look backward for commands that you have already performed.

The aim of this trick is to avoid retyping the same command multiple times. Moreover, sometimes it's useful to analyze in which order you have executed different commands, one after the other. This is often the root cause of errors. This is where histogrep will make your life easier:

function histogrep{
history | grep $1
}

Source the file as in the previous topic, and try to search, a command you entered previously:

debian@beaglebone:~$ histogrep Mediadrop

Different ways to find your files

When you don't remember where a specific file is located, you can rely on some Linux tools. In this specific case, let's say that we want to retrieve the deployment.ini location; thus we can use two different commands:

To find your files, run the following command:

(mediacore_env)debian@beaglebone:~$ find / -name production.ini –type f 2>/dev/null

The various parameters involved are as follows:

  • / : We want to look into the root partition. Obviously, if you install MediaDrop to another partition, set it accordingly.

  • –type f (optional): This optimizes the search, as we want to find only files but not directories.

  • 2>/dev/null (optional): This is to remove annoying and most of the time useless Permission denied messages.

While being really powerful, the find command requires some options, which you have to know, to use it well. The locate command is a quick and an easy way to find your file. You will have to install it, as this command is not installed, by default. You will retrieve it from the mlocate package.

To request an update of the index of all your files, use the following command:

debian@beaglebone:~$ sudo updatedb

Now you can search for any file with the following command:

debian@beaglebone:~$ Locate production.ini

You have the result(s) instantly, faster than with the find command.

What is perturbing with locate is that you might not find a file that can exist anyway. This situation happens when the searched-for file had been created after the indexation of the locate database.

Each command has its own pros and cons; find is really handy and powerful but requires a lot of options that you need to know; on the other hand, locate is easy, and simple but requires being updated regularly.

lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
Beaglebone Media Center
Published in: Jan 2015Publisher: ISBN-13: 9781784399993

Author (1)

author image
David Lewin

David Lewin was introduced early to electronics and computers by TRS-80, Atari, and Commodore 64; he has never quit since then. He spends his free time watching out for technology for the next generation of embedded systems when he is not exploring philosophy. David is a passionate and creative embedded developer who spent 20 years working for automotive companies such as Renault, Peugeot, and Faurecia, as well as for satellites with Thales Alenia Space. He currently works in Sophia Antipolis, the French Riviera Silicon Valley, designing industrial embedded systems.
Read more about David Lewin