0% found this document useful (0 votes)
7 views81 pages

(Ebook) Mastering Linux Shell Scripting Second Edition by Mokhtar Ebrahim, Andrew Mallett ISBN 9781788990554, 1788990552

The document provides information about the ebook 'Mastering Linux Shell Scripting, Second Edition' by Mokhtar Ebrahim and Andrew Mallett, including its ISBN, download links, and details about the authors. It highlights the book's content, which covers various aspects of Linux shell scripting, and offers additional resources and related ebooks. The book is published by Packt Publishing and is available in PDF format.

Uploaded by

cachogearnkd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views81 pages

(Ebook) Mastering Linux Shell Scripting Second Edition by Mokhtar Ebrahim, Andrew Mallett ISBN 9781788990554, 1788990552

The document provides information about the ebook 'Mastering Linux Shell Scripting, Second Edition' by Mokhtar Ebrahim and Andrew Mallett, including its ISBN, download links, and details about the authors. It highlights the book's content, which covers various aspects of Linux shell scripting, and offers additional resources and related ebooks. The book is published by Packt Publishing and is available in PDF format.

Uploaded by

cachogearnkd
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 81

Visit https://ebooknice.

com to download the full version and


explore more ebooks

(Ebook) Mastering Linux Shell Scripting Second


Edition by Mokhtar Ebrahim, Andrew Mallett ISBN
9781788990554, 1788990552

_____ Click the link below to download _____


https://ebooknice.com/product/mastering-linux-shell-
scripting-second-edition-38624096

Explore and download more ebooks at ebooknice.com


Here are some recommended products that might interest you.
You can download now and explore!

(Ebook) Mastering Linux Shell Scripting, Second Edition by Mokhtar


Ebrahim, Andrew Mallett ISBN 9781788990554, 1788990552

https://ebooknice.com/product/mastering-linux-shell-scripting-second-
edition-42970140

ebooknice.com

(Ebook) Mastering Linux Shell Scripting, Second Edition by Mokhtar


Ebrahim, Andrew Mallett ISBN 9781788990554, 1788990552

https://ebooknice.com/product/mastering-linux-shell-scripting-second-
edition-42970142

ebooknice.com

(Ebook) Mastering Linux Shell Scripting: a practical guide to Linux


command-line, Bash scripting, and Shell programming by Ebrahim,
Mokhtar;Mallett, Andrew ISBN 9781788990158, 9781788990554, 1788990153,
1788990552
https://ebooknice.com/product/mastering-linux-shell-scripting-a-
practical-guide-to-linux-command-line-bash-scripting-and-shell-
programming-11381866
ebooknice.com

(Ebook) Mastering Linux shell scripting a practical guide to Linux


command- line, Bash scripting, and Shell programming by Mokhtar
Ebrahim; Andrew Mallett ISBN 9781788990158, 1788990153

https://ebooknice.com/product/mastering-linux-shell-scripting-a-
practical-guide-to-linux-command-line-bash-scripting-and-shell-
programming-11145962
ebooknice.com
(Ebook) Linux Shell Scripting Cookbook, Second Edition by Shantanu
Tushar, Sarath Lakshman ISBN 9781782162742, 1782162747

https://ebooknice.com/product/linux-shell-scripting-cookbook-second-
edition-4450624

ebooknice.com

(Ebook) Mastering Unix Shell Scripting: Bash, Bourne, and Korn Shell
Scripting for Programmers, System Administrators, and UNIX Gurus,
Second Edition by Randal K. Michael ISBN 9780470183014, 0470183012

https://ebooknice.com/product/mastering-unix-shell-scripting-bash-
bourne-and-korn-shell-scripting-for-programmers-system-administrators-
and-unix-gurus-second-edition-2245602
ebooknice.com

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason; Viles, James


ISBN 9781459699816, 9781743365571, 9781925268492, 1459699815,
1743365578, 1925268497

https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) Pro Bash Programming, Second Edition: Scripting the GNU/Linux


Shell by Johnson, Chris, Varma, Jayant ISBN 9781484201213, 1484201213

https://ebooknice.com/product/pro-bash-programming-second-edition-
scripting-the-gnu-linux-shell-23133968

ebooknice.com

(Ebook) Linux Shell Scripting Cookbook 2nd Edition by Shantanu Tushar;


Sarath Lakshman ISBN 9781782162742, 1782162747

https://ebooknice.com/product/linux-shell-scripting-cookbook-2nd-
edition-42283536

ebooknice.com
Mastering Linux Shell Scripting Second Edition Mokhtar
Ebrahim Digital Instant Download
Author(s): Mokhtar Ebrahim, Andrew Mallett
ISBN(s): 9781788990554, 1788990552
Edition: 2
File Details: PDF, 13.64 MB
Year: 2018
Language: english
Mastering Linux Shell Scripting
Second Edition

"QSBDUJDBMHVJEFUP-JOVYDPNNBOEMJOF#BTITDSJQUJOHBOE
4IFMMQSPHSBNNJOH

Mokhtar Ebrahim
Andrew Mallett

BIRMINGHAM - MUMBAI
Mastering Linux Shell Scripting
Second Edition
Copyright a 2018 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form
or by any means, without the prior written permission of the publisher, except in the case of brief quotations
embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented.
However, the information contained in this book is sold without warranty, either express or implied. Neither the
authors, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to
have been caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products
mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy
of this information.

Commissioning Editor: Vijin Boricha


Acquisition Editor: Rohit Rajkumar
Content Development Editor: Ron Mathew
Technical Editor: Prachi Sawant
Copy Editor: Safis Editing
Project Coordinator: Judie Jose
Proofreader: Safis Editing
Indexer: Mariammal Chettiyar
Graphics: Tom Scaria
Production Coordinator: Aparna Bhagat

First published: December 2015


Second edition: April 2018

Production reference: 1180418

Published by Packt Publishing Ltd.


Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.

ISBN 978-1-78899-055-4

XXXQBDLUQVCDPN
NBQUJP

Mapt is an online digital library that gives you full access to over 5,000 books and videos, as
well as industry leading tools to help you plan your personal development and advance
your career. For more information, please visit our website.

Why subscribe?
Spend less time learning and more time coding with practical eBooks and Videos
from over 4,000 industry professionals

Improve your learning with Skill Plans built especially for you

Get a free eBook or video every month

Mapt is fully searchable

Copy and paste, print, and bookmark content

PacktPub.com
Did you know that Packt offers eBook versions of every book published, with PDF and
ePub files available? You can upgrade to the eBook version at XXX1BDLU1VCDPN and as a
print book customer, you are entitled to a discount on the eBook copy. Get in touch with us
at TFSWJDF!QBDLUQVCDPN for more details.

At XXX1BDLU1VCDPN, you can also read a collection of free technical articles, sign up for a
range of free newsletters, and receive exclusive discounts and offers on Packt books and
eBooks.
Contributors

About the authors


Mokhtar Ebrahim started working as a Linux system administrator in 2010. He is
responsible for maintaining, securing, and troubleshooting Linux servers for multiple
clients around the world. He loves writing shell and Python scripts to automate his work.
He writes technical articles on the Like Geeks website about Linux, Python, web
development, and server administration. He is a father to a beautiful girl and a husband to
a faithful wife.

I would like to thank my wife for helping me with all her efforts to finish this book. Thank
you, Doaa, for being a part of that. Also, I would like to thank everyone at Packt for
working with me to make sure the book is released. Last but not least, I'd like to thank
Brian Fox, the author of the bash shell, for creating such an awesome piece of software;
without it, such a book would not exist.

Andrew Mallett is the owner of The Urban Penguin, and he is a comprehensive provider of
professional Linux software development, training, and services. Having always been a
command-line fan, he feels that so much time can be saved through knowing command-line
shortcuts and scripting. TheUrbanPenguin YouTube channel, maintained by Andrew, has
well over 800 videos to support this, and he has authored four other Packt titles.
About the reviewer
Sebastiaan Tammer is a Linux enthusiast from The Netherlands. After attaining his BSc in
Information Sciences, he graduated with MSc in Business Informatics, both from Utrecht
University. His professional career started in Java development before he pivoted into
Linux.

He has worked on number of technologies, such as Puppet, Chef, Docker, and Kubernetes.
He spends a lot of time in and around his terminal of choice: bash. Whether it is creating
complex scripting solutions or just automating simple tasks, there is hardly anything he
hasn't done with bash!

I would like to thank my girlfriend, Sanne, for all the help and support she has given me
throughout the years. She has had to endure the late nights studying, me fixing stuff
(which I had inevitably broken only hours earlier), and my endless storytelling about all
those exciting new technologies. Thanks for the enormous amount of patience and love, I
could not have done it without you!

Packt is searching for authors like you


If you're interested in becoming an author for Packt, please visit BVUIPSTQBDLUQVCDPN and
apply today. We have worked with thousands of developers and tech professionals, just
like you, to help them share their insight with the global tech community. You can make a
general application, apply for a specific hot topic that we are recruiting an author for, or
submit your own idea.
Table of Contents
Preface 1
Chapter 1: The What and Why of Scripting with Bash 6
Technical requirements 7
Types of Linux shells 7
What is bash scripting? 8
The bash command hierarchy 9
Command type 9
Command PATH 10
Preparing text editors for scripting 11
Configuring vim 12
Configuring nano 12
Configuring gedit 12
Creating and executing scripts 14
Hello World! 15
Executing the script 15
Checking the exit status 16
Ensuring a unique name 17
Hello Dolly! 17
Running the script with arguments 18
The importance of correct quotes 19
Printing the script name 21
Declaring variables 22
User-defined variables 22
Environment variables 23
Variable scope 24
Command substitution 25
Debugging your scripts 26
Summary 33
Questions 34
Further reading 34
Chapter 2: Creating Interactive Scripts 35
Technical requirements 35
Using echo with options 36
Basic script using read 37
Script comments 38
Enhancing scripts with read prompts 38
Limiting the number of entered characters 39
Table of Contents

Controlling the visibility of the entered text 40


Passing options 40
Passing parameters with options 42
Read options values 44
Try to be standard 45
Enhancing learning with simple scripts 46
Backing-up with scripts 46
Connecting to a server 48
Version 1 – ping 48
Version 2 – SSH 48
Version 3 – MySQL/MariaDB 49
Reading files 50
Summary 51
Questions 51
Further reading 52
Chapter 3: Conditions Attached 53
Technical requirements 54
Simple decision paths using command-line lists 54
Verifying user input with lists 56
Using the test shell built-in 56
Testing strings 57
Testing integers 58
Testing file types 59
Creating conditional statements using if 60
Extending if with else 61
Test command with the if command 62
Checking strings 62
Checking files and directories 65
Checking numbers 65
Combining tests 66
More conditions with elif 67
Creating the backup2.sh using elif 67
Using case statements 69
Recipe – building a frontend with grep 71
Summary 72
Questions 73
Further reading 74
Chapter 4: Creating Code Snippets 75
Technical requirements 75
Abbreviations 76
Using code snippets 77
Bringing color to the Terminal 78

[ ii ]
Table of Contents

Creating snippets using VS Code 80


Summary 85
Questions 85
Further reading 86
Chapter 5: Alternative Syntax 87
Technical requirement 87
Recapping the test command 88
Testing files 88
Adding logic 88
Square brackets as not seen before 88
Providing parameter defaults 90
Variables 90
Special parameters 90
Setting defaults 91
When in doubt – quote! 93
Advanced tests using [[ 95
White space 95
Other advanced features 96
Pattern matching 96
Regular expressions 96
Regular expression script 97
Arithmetic operations using (( 98
Simple math 98
Parameter manipulation 98
Standard arithmetic tests 99
Summary 100
Questions 100
Further reading 101
Chapter 6: Iterating with Loops 102
Technical requirement 103
for loops 103
Advanced for loops 106
The IFS 107
Counting directories and files 108
C-style for loops 109
Nested loops 110
Redirecting loop output 111
Controlling the loop 111
while loops and until loops 113
Reading input from files 114
Creating operator menus 116
Summary 119

[ iii ]
Table of Contents

Questions 119
Further reading 120
Chapter 7: Creating Building Blocks with Functions 121
Technical requirements 121
Introducing functions 122
Passing parameters to functions 125
Passing arrays 128
Variable scope 129
Returning values from functions 130
Recursive functions 132
Using functions in menus 133
Summary 135
Questions 135
Further reading 136
Chapter 8: Introducing the Stream Editor 137
Technical requirements 138
Using grep to display text 138
Displaying received data on an interface 138
Displaying user account data 139
Listing the number of CPUs in a system 140
Parsing CSV files 143
The CSV file 143
Isolating catalog entries 145
Understanding the basics of sed 146
The substitute command 147
Global replacement 148
Limiting substitution 150
Editing the file 150
Other sed commands 151
The delete command 151
The insert and append commands 152
The change command 153
The transform command 153
Multiple sed commands 154
Summary 154
Questions 155
Further reading 156
Chapter 9: Automating Apache Virtual Hosts 157
Technical requirements 158
Apache name-based Virtual Hosts 158
Creating the virtual host template 159
First steps 160

[ iv ]
Table of Contents

Isolating lines 160


sed script files 162
Automating virtual host creation 164
Prompting for data during site creation 166
Summary 169
Questions 170
Further reading 170
Chapter 10: AWK Fundamentals 171
Technical requirements 171
The history behind AWK 172
Displaying and filtering content from files 173
AWK variables 176
User-defined variables 178
Conditional statements 180
The if command 180
while loops 181
for loops 182
Formatting output 183
Further filtering to display users by UID 185
AWK control files 186
Built-in functions 187
Summary 187
Questions 188
Further reading 189
Chapter 11: Regular Expressions 190
Technical requirements 190
Regular expression engines 191
Defining BRE patterns 192
Anchor characters 193
The dot character 195
The character class 195
Ranges of characters 197
Special character classes 198
The asterisk 199
Defining ERE patterns 201
The question mark 201
The plus sign 203
Curly braces 204
The pipe character 206
Expression grouping 207
Using grep 208
Summary 209

[v]
Table of Contents

Questions 210
Further reading 210
Chapter 12: Summarizing Logs with AWK 211
Technical requirements 211
The HTTPD log file format 212
Displaying data from web logs 213
Selecting entries by date 213
Summarizing 404 errors 215
Summarizing HTTP access codes 215
Resources hits 217
Identify image hotlinking 218
Displaying the highest ranking IP address 219
Displaying the browser data 220
Working with email logs 221
Summary 221
Questions 222
Further reading 222
Chapter 13: A Better lastlog with AWK 223
Technical requirements 223
Using AWK ranges to exclude data 224
The lastlog command 224
Horizontally filtering rows with AWK 225
Counting matched rows 225
Conditions based on the number of fields 226
Manipulating the AWK record separator to report on XML data 228
Apache Virtual Hosts 228
XML catalog 229
Summary 231
Questions 232
Further reading 232
Chapter 14: Using Python as a Bash Scripting Alternative 233
Technical requirements 233
What is Python? 234
Saying Hello World the Python way 236
Pythonic arguments 236
Supplying arguments 237
Counting arguments 237
Significant whitespace 239
Reading user input 240
Using Python to write to files 241
String manipulation 242

[ vi ]
Table of Contents

Summary 243
Questions 244
Further reading 244
Assessments 245
Other Books You May Enjoy 252
Index 255

[ vii ]
Preface
First, you'll learn about Linux shells and why we chose the bash shell. Then, you'll learn
how to write a simple bash script and how to edit your bash script using Linux editors.

Following this, you will learn how to define a variable and the visibility of a variable. After
this, you will learn how to store command execution output into a variable, which is called
command substitution. Also, you will learn how to debug your code using bash options
and Visual Studio Code. You will learn how to make your bash script interactive to the user
by accepting input from the user using the read command. Then, you will learn how to read
options and its values if the user passed them to the script. Following this, you will learn
how to write conditional statements such as if statements and how to use case statements.
After this, you will learn how to create code snippets using vim and Visual Studio Code.
For repetitive tasks, you will see how to write for loops, how to iterate over simple values,
and how to iterate over directory content. Also, you will learn how to write nested loops.
Along with this, you will write while and until loops. Then, we will move on to functions,
the reusable chunks of code. You will learn how to write functions and how to use them.
After this, you will be introduced to one of the best tools in Linux, which is Stream Editor.
As we are still talking about text processing, we will introduce AWK, one of the best text
processing tools in Linux that you will ever see.

After this, you will learn how to empower your text processing skills by writing better
regular expressions. Finally, you will be introduced to Python as an alternative to bash
scripting.

Who this book is for


This book targets system administrators and developers who would like to write a better
shell script to automate their work. Some programming experience is preferable. If you
don't have any background in shell scripting, no problem, the book will discuss everything
from the beginning.
Preface

What this book covers


$IBQUFS, The What and Why of Scripting with Bash, will introduce Linux shells, how to
write your first shell script, how to prepare your editor, how to debug your shell script, and
some basic bash programming, such as declaring variables, variable scope, and command
substitution.

$IBQUFS, Creating Interactive Scripts, covers how to read input from the user using SFBE
command, how to pass options to your script, how to control the visibility of the entered
text, and how to limit the number of entered characters.

$IBQUFS, Conditions Attached, will introduce the JG statement, the DBTF statement, and
other testing command such as FMTF and FMJG.

$IBQUFS, Creating Code Snippets, covers creating and using code snippets using editors,
such as vim and Visual Studio Code.

$IBQUFS, Alternative Syntax, will discuss advanced testing using << and how to perform
arithmetic operations.

$IBQUFS, Iterating with Loops, will teach you how to use GPS loops, XIJMF loops, and
VOUJM loops to iterate over simple values and complex values.

$IBQUFS, Creating Building Blocks with Functions, will introduce functions and explains
how to create a function, list builtin functions, pass parameters to functions, and writing
recursive functions.

$IBQUFS, Introducing the Stream Editor, will introduce the basics of sed tool to manipulate
files, such as adding, replacing deleting, and transforming text.

$IBQUFS, Automating Apache Virtual Hosts, contains a practical example of sed and
explains how to create virtual hosts automatically using sed.

$IBQUFS, AWK Fundamentals, will discuss AWK and how to filter file content using it.
Also, we will discuss some AWK programming basics.

$IBQUFS, Regular Expressions, covers regular expressions, their engines, and how to use
them with sed and AWK to empower your script.

$IBQUFS, Summarizing Logs with AWK, will show how to process the IUUQEDPOG
Apache log file using AWK and extract useful well-formatted data.

[2]
Preface

$IBQUFS, A Better lastlog with AWK, will show you how to use AWK to output beautiful
reports using the lastlog command by filtering and processing the lastlog output.

$IBQUFS, Using Python as a Bash Scripting Alternative, will discuss Python programming
language basics and explains how to write some Python scripts as a bash script alternative.

To get the most out of this book


I assume that you have a little programming background. Even if you don't have a
programming background, the book will start from the beginning.

You should know some Linux basics such as the basic commands such as MT, DE, and
XIJDI.

Download the example code files


You can download the example code files for this book from your account at
XXXQBDLUQVCDPN. If you purchased this book elsewhere, you can visit
XXXQBDLUQVCDPNTVQQPSU and register to have the files emailed directly to you.

You can download the code files by following these steps:

1. Log in or register at XXXQBDLUQVCDPN.


2. Select the SUPPORT tab.
3. Click on Code Downloads & Errata.
4. Enter the name of the book in the Search box and follow the onscreen
instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the
latest version of:

WinRAR/7-Zip for Windows


Zipeg/iZip/UnRarX for Mac
7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at IUUQTHJUIVCDPN
1BDLU1VCMJTIJOH.BTUFSJOH-JOVY4IFMM4DSJQUJOH4FDPOE&EJUJPO. In case there's an
update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available
at IUUQTHJUIVCDPN1BDLU1VCMJTIJOH. Check them out!

[3]
Preface

Download the color images


We also provide a PDF file that has color images of the screenshots/diagrams used in this
book. You can download it from IUUQTXXXQBDLUQVCDPNTJUFTEFGBVMUGJMFT
EPXOMPBET.BTUFSJOH-JOVY4IFMM4DSJQUJOH4FDPOE&EJUJPO@$PMPS*NBHFTQEG.

Conventions used
There are a number of text conventions used throughout this book.

$PEF*O5FYU: Indicates code words in text, database table names, folder names, filenames,
file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an
example: "Edit your script so that it reads like the following complete code block
for )0.&CJOIFMMPTI"

A block of code is set as follows:


JG<GJMF@DPNQSFTTJPO->UIFO
UBS@PQUUBS@M
FMJG<GJMF@DPNQSFTTJPO.>UIFO
UBS@PQUUBS@N
FMTF
UBS@PQUUBS@I
GJ

Any command-line input or output is written as follows:


$ type ls
ls is aliased to 'ls --color=auto'

Bold: Indicates a new term, an important word, or words that you see onscreen. For
example, words in menus or dialog boxes appear in the text like this. Here is an example:
"Another very useful feature is found on the Preferences | Plugins tab"

Warnings or important notes appear like this.

Tips and tricks appear like this.

[4]
Preface

Get in touch
Feedback from our readers is always welcome.

General feedback: Email GFFECBDL!QBDLUQVCDPN and mention the book title in the
subject of your message. If you have questions about any aspect of this book, please email
us at RVFTUJPOT!QBDLUQVCDPN.

Errata: Although we have taken every care to ensure the accuracy of our content, mistakes
do happen. If you have found a mistake in this book, we would be grateful if you would
report this to us. Please visit XXXQBDLUQVCDPNTVCNJUFSSBUB, selecting your book,
clicking on the Errata Submission Form link, and entering the details.

Piracy: If you come across any illegal copies of our works in any form on the Internet, we
would be grateful if you would provide us with the location address or website name.
Please contact us at DPQZSJHIU!QBDLUQVCDPN with a link to the material.

If you are interested in becoming an author: If there is a topic that you have expertise in
and you are interested in either writing or contributing to a book, please visit
BVUIPSTQBDLUQVCDPN.

Reviews
Please leave a review. Once you have read and used this book, why not leave a review on
the site that you purchased it from? Potential readers can then see and use your unbiased
opinion to make purchase decisions, we at Packt can understand what you think about our
products, and our authors can see your feedback on their book. Thank you!

For more information about Packt, please visit QBDLUQVCDPN.

[5]
1
The What and Why of Scripting
with Bash
Welcome to the what and why of bash scripting. In this chapter, you will discover the types
of shells in Linux and why we chose bash. You will learn what bash is, how to write your
first bash script, and how to run it. Also, you will see how to configure Linux editors, such
as vim and nano, in order to type your code.

Like in any other scripting language, variables are the basic blocks of coding. You will learn
how to declare variables such as integers, strings, and arrays. Furthermore, you will learn
how to export these variables and extend their scope outside the running process.

Finally, you will see how to visually debug your code using Visual Studio Code.

We will cover the following topics in this chapter:

Types of Linux shells


What is bash scripting?
The bash command hierarchy
Preparing text editors for scripting
Creating and executing scripts
Declaring variables
Variable scope
Command substitution
Debugging your scripts
The What and Why of Scripting with Bash Chapter 1

Technical requirements
You'll need a running Linux box. It doesn't matter which distribution you use, since all
Linux distributions are shipped nowadays with the bash shell.

Download and install Visual Studio Code, which is free from Microsoft. You can download
it from here: IUUQTDPEFWJTVBMTUVEJPDPN.

You can use VS Code as an editor instead of vim and nano; it's up to you.

We prefer to use VS Code because it has a lot of features such as code completion,
debugging, and many more besides.

Install CBTIEC, which is a required package for the bash debug plugin. If you are using a
Red Hat-based distribution, you can install it like this:
$ sudo yum install bashdb

If you are using a Debian-based distribution, you can install it like this:
$ sudo apt-get install bashdb

Install the plugin for VS Code, called bash debug, from


IUUQTNBSLFUQMBDFWJTVBMTUVEJPDPNJUFNTJUFN/BNFSPHBMNJDCBTIEFCVH. This
plugin will be used to debug bash scripts.

The source code for this chapter can be downloaded here:


IUUQTHJUIVCDPN1BDLU1VCMJTIJOH.BTUFSJOH-JOVY4IFMM4DSJQUJOH4FDPOE
&EJUJPOUSFFNBTUFS$IBQUFS

Types of Linux shells


As you know, Linux consists of some major parts, such as the kernel, the shell, and the GUI
interface (Gnome, KDE, and so on).

The shell translates your commands and sends them to the system. Most Linux
distributions are shipped with many shells.

[7]
The What and Why of Scripting with Bash Chapter 1

Every shell has its own features, and some of them are very popular among developers
today. These are some of the popular ones:

Sh shell: This is called the Bourne shell, this was developed at AT&T labs in the
70s by a guy named Stephen Bourne. This shell offers many features.
Bash shell: Also called the Bourne again shell, this is very popular and
compatible with sh shell scripts, so you can run your sh scripts without changing
them. We are going to use this shell in this book.
Ksh shell: Also called the Korn shell, this is compatible with sh and bash. Ksh
offers some enhancements over the Bourne shell.
Csh and tcsh: Linux was built using the C language and that drove developers at
Berkeley University to develop a C-style shell in which the syntax is similar to the
C language. Tcsh adds some minor enhancements to csh.

Now we know the types of shells and we know that we are going to use bash, so what is
bash scripting?

What is bash scripting?


The basic idea of bash scripting is to execute multiple commands to automate a specific job.

As you might know, you can run multiple commands from the shell by separating them
with semi colons ():
ls ; pwd

The previous line is a mini bash script.

The first command runs, followed by the result of the second command.

Every keyword you type in bash scripting is actually a Linux binary (program), even the JG
statement, or FMTF or XIJMF loops. All are Linux executables.

You can say that the shell is the glue that binds these commands together.

[8]
The What and Why of Scripting with Bash Chapter 1

The bash command hierarchy


When working on the bash shell and when you are sitting comfortably at your prompt
eagerly waiting to type a command, you will most likely feel that it is a simple matter of
typing and hitting the Enter key. You should know better than to think this, as things are
never quite as simple as we imagine.

Command type
For example, if we type and enter MT to list files, it is reasonable to think that we were
running the command. It is possible, but we often will be running an alias. Aliases exist in
memory as a shortcut to commands or commands with options; these aliases are used
before we even check for the file. Bash's built-in UZQF command can come to our aid here.
The UZQF command will display the type of command for a given word entered at the
command line. The types of command are listed as follows:

Alias
Function
Shell built-in
Keyword
File

This list is also representative of the order in which they are searched. As we can see, it is
not until the very end where we search for the executable file MT.

The following command demonstrates the simple use type:


$ type ls
ls is aliased to 'ls --color=auto'

We can extend this further to display all the matches for the given command:
$ type -a ls
ls is aliased to 'ls --color=auto'
ls is /bin/ls

[9]
The What and Why of Scripting with Bash Chapter 1

If we need to just type in the output, we can use the U option. This is useful when we need
to test the command type from within a script and only need the type to be returned. This
excludes any superfluous information, and thus makes it easier for us humans to read.
Consider the following command and output:
$ type -t ls
alias

The output is clear and simple, and is just what a computer or script requires.

The built-in UZQF can also be used to identify shell keywords such as JG, and DBTF. The
following command shows UZQF being used against multiple arguments and types:
$ type ls quote pwd do id

The output of the command is shown in the following screenshot:

You can also see that the function definition is printed when we stumble across a function
when using UZQF.

Command PATH
Linux will check for executables in the 1"5) environment only when the full or relative
path to the program is supplied. In general, the current directory is not searched unless it is
in the 1"5). It is possible to include our current directory within the 1"5) by adding the
directory to the 1"5) variable. This is shown in the following command example:
$ export PATH=$PATH:.

[ 10 ]
The What and Why of Scripting with Bash Chapter 1

This appends the current directory to the value of the 1"5) variable; each item in the 1"5)
is separated using a colon. Now your 1"5) has been updated to include the current
working directory and, each time you change directories, the scripts can be executed easily.
In general, organizing scripts into a structured directory hierarchy is probably a great idea.
Consider creating a subdirectory called CJO within your home directory and add the scripts
into that folder. Adding )0.&CJO to your 1"5) variable will enable you to find the
scripts by name and without the file path.

The following command-line list will only create the directory, if it does not already exist:
$ test -d $HOME/bin || mkdir $HOME/bin

Although the preceding command-line list is not strictly necessary, it does show that
scripting in bash is not limited to the actual script, and we can use conditional statements
and other syntax directly at the command line. From our viewpoint, we know that the
preceding command will work whether you have the CJO directory or not. The use of the
)0.& variable ensures that the command will work without considering your current
filesystem context.

As we work through the book, we will add scripts into the )0.&CJO directory so that
they can be executed regardless of our working directory.

Preparing text editors for scripting


Throughout the book, we will be working on Linux Mint, and this will include the creation
and editing of the scripts. You, of course, can choose the way you wish to edit your scripts
and may prefer to make use of a graphical editor, so we will show some settings in gedit.
We will make one excursion into a Red Hat system to show screenshots of gedit in this
chapter.

Also, we will use Visual Studio Code as a modern GUI editor to edit and debug our scripts.

To help make the command-line editor easier to use, we can enable options and we can
persist with these options through hidden configuration files. Gedit and other GUI editors,
and their menus, will provide similar functionality.

[ 11 ]
The What and Why of Scripting with Bash Chapter 1

Configuring vim
Editing the command line is often a must and is part of a developer's everyday life. Setting
up common options that make life easier in the editor give us the reliability and consistency
we need, a little like scripting itself. We will set some useful options in the vi or vim editor
file, )0.&WJNSD.

The options we set are detailed in the following list:

TFUTIPXNPEF: Ensures we see when we are in insert mode


TFUOPIMTFBSDI: Does not highlight the words that we have searched for
TFUBVUPJOEFOU: We indent our code often; this allows us to return to the last
indent level rather than the start of a new line on each line break
TFUUBCTUPQ: Sets a tab to be four spaces
TFUFYQBOEUBC: Converts tabs to spaces, which is useful when the file moves to
other systems
TZOUBYPO: Note that this does not use the TFU command and is used to turn on
syntax highlighting

When these options are set, the )0.&WJNSD file should look similar to this:
TFUTIPXNPEF
TFUOPIMTFBSDI
TFUBVUPJOEFOU
TFUUBCTUPQ
TFUFYQBOEUBC
TZOUBYPO

Configuring nano
The nano text editor is increasing in importance and it is the default editor in many systems.
Personally, I don't like the navigation or the lack of navigation features that it has. It can be
customized in the same way as vim. This time, we will edit the )0.&OBOPSD file. Your
edited file should look something like the following:
TFUBVUPJOEFOU
TFUUBCTJ[F
JODMVEFVTSTIBSFOBOPTIOBOPSD

The last line enables syntax highlighting for shell scripts.

[ 12 ]
The What and Why of Scripting with Bash Chapter 1

Configuring gedit
Graphical editors, such as gedit, can be configured using the preferences menu, and are
pretty straightforward.

Enabling tab spacing to be set to 4 spaces and expanding tabs to spaces can be done using
the Preferences | Editor tab, as shown in the following screenshot:

You can download the example code files from your account at
IUUQXXXQBDLUQVCDPN for all the Packt Publishing books you have
purchased. If you purchased this book elsewhere, you can visit
IUUQXXXQBDLUQVCDPNTVQQPSU and register to have the files e-mailed
directly to you.

[ 13 ]
The What and Why of Scripting with Bash Chapter 1

Another very useful feature is found on the Preferences | Plugins tab. Here, we can enable
the Snippets plugin, which can be used to insert code samples. This is shown in the
following screenshot:

For the rest of the book, we will be working on the command line and in vim; feel free to
use the editor that you work with best. We have now laid the foundations to create good
scripts, and, although whitespace, tabs, and spaces in bash scripts are not significant, a well-
laid-out file with consistent spacing is easy to read. When we look at Python later in the
book, you will realize that in some languages, the whitespace is significant to the language
and it is better to adopt good habits early on.

Creating and executing scripts


With our editors primed and ready, we can now move quickly to creating and executing
our scripts. If you are reading this book with some prior experience, we will warn you that
we are going to start with the basics, but we will also include looking at positional
parameters; feel free to move on at your own pace.

[ 14 ]
The What and Why of Scripting with Bash Chapter 1

Hello World!
As you know, it is almost obligatory to begin with a )FMMP8PSME script and we will not
disappoint as far as this is concerned. We will begin by creating a new
script, )0.&CJOIFMMPTI. The contents of the file should read as in the following
screenshot:

We hope that you haven't struggled with this too much; it is just three lines, after all. We
encourage you to run through the examples as you read to really help you instill the
information with good hands-on practice.

CJOCBTI: Normally, this is always the first line of the script and is known as
the shebang. The shebang starts with a comment, but the system still uses this
line. A comment in a shell script has the  symbol. The shebang instructs the
interpreter of the system to execute the script. We use bash for shell scripts, and
we may use PHP or Perl for other scripts, as required. If we do not add this line,
then the commands will be run within the current shell; it may cause issues if we
run another shell.
FDIP)FMMP8PSME: The FDIP command will be picked up in a built-in shell
and can be used to write a standard output, 45%065; this defaults to the screen.
The information to print is enclosed in double quotes; there will be more on
quotes later.
FYJU: The FYJU command is a built-in shell, and is used to leave or exit the
script. The FYJU code is supplied as an integer argument. A value of anything
other than  will indicate some type of error in the script's execution.

Executing the script


With the script saved in our 1"5) environment, it still will not execute as a standalone
script. We will have to assign and execute permissions for the file, as needed. For a simple
test, we can run the file directly with bash. The following command shows you how to do
this:
$ bash $HOME/bin/hello1.sh

[ 15 ]
The What and Why of Scripting with Bash Chapter 1

We should be rewarded with the )FMMP8PSME text being displayed on our screens. This is
not a long-term solution, as we need to have the script in the )0.&CJO directory,
specifically, to make running the script easy from any location without typing the full path.
We need to add in the execute permissions as shown in the following code:
$ chmod +x $HOME/bin/hello1.sh

We should now be able to run the script simply, as shown in the following screenshot:

Checking the exit status


This script is simple, but we still need to know how to make use of the exit codes from
scripts and other applications. The command-line list that we generated earlier, while
creating the )0.&CJO directory, is a good example of how we can use the exit code:
$ command1 || command 2

In the preceding example, DPNNBOE is executed only if DPNNBOE fails in some way. To be
specific, DPNNBOE will run if DPNNBOE exits with a status code other than .

Similarly, in the following extract, we will only execute DPNNBOE if DPNNBOE succeeds
and issues an exit code of :
$ command1 && command2

To read the exit code from our script explicitly, we can view the  variable, as shown in the
following example:
$ hello1.sh
$ echo $?

The expected output is , as this is what we have added to the last line of the file and there
is precious little else that can go wrong to cause the failure to reach that line.

[ 16 ]
The What and Why of Scripting with Bash Chapter 1

Ensuring a unique name


We can now create and execute a simple script, but we need to consider the name a little. In
this case, IFMMPTI will be good enough and is unlikely to clash with anything else on the
system. We should avoid using names that may clash with existing aliases, functions,
keywords, and building commands, as well as avoiding names of programs already in use.

Adding the TI suffix to the file does not guarantee the name will be unique, but, in Linux,
where we do not use file extensions, the suffix is part of the filename. This helps you to
provide a unique identity to your script. Additionally, the suffix is used by the editor to
help you identify the file for syntax highlighting. If you recall, we specifically added the
syntax highlighting file TIOBOPSD to the nano text editor. Each of these files is specific to a
suffix and subsequent language.

Referring back to the command hierarchy within this chapter, we can use a UZQF to
determine the location and type of file IFMMPTI:
$ type hello1.sh #To determine the type and path
$ type -a hello1.sh #To print all commands found if the name is NOT unique
$ type -t hello1.sh ~To print the simple type of the command

These commands and output can be seen in the following screenshot:

Hello Dolly!
It is possible that we might need a little more substance in the script than a simple fixed
message. Static message content does have its place, but we can make this script much more
useful by building in some flexibility.

In this chapter, we will look at the positional parameters or arguments that we can supply
to the script and in the next chapter, we will see how we can make the script interactive and
also prompt the user for input at runtime.

[ 17 ]
The What and Why of Scripting with Bash Chapter 1

Running the script with arguments


We can run the script with arguments; after all, it's a free world and Linux promotes your
freedom to do what you want to do with the code. However, if the script does not make use
of the arguments, then they will be silently ignored. The following command shows the
script running with a single argument:
$ hello1.sh fred

The script will still run and will not produce an error. The output will not change either and
will print )FMMP8PSME:

Argument
Description
Identifier
 The name of the script itself, which is often used in usage statements.
 A positional argument, which is the first argument passed to the script.
Where two or more digits are needed to represent the argument
\^ position. Brace brackets are used to delimit the variable name from any
other content. Single value digits are expected.
The argument count is especially useful when we need to set the amount

of arguments needed for correct script execution.
 Refers to all arguments.

For the script to make use of the argument, we can change its content a little. Let's first copy
the script, add in the execute permissions, and then edit the new IFMMPTI:
$ cp $HOME/bin/hello1.sh $HOME/bin/hello2.sh
$ chmod +x $HOME/bin/hello2.sh

We need to edit the IFMMPTI file to make use of the argument as it is passed at the
command line. The following screenshot shows the simplest use of command-line
arguments, now allowing us to have a custom message:

[ 18 ]
The What and Why of Scripting with Bash Chapter 1

Run the script now; we can provide an argument as shown in the following:
$ hello2.sh fred

The output should now say )FMMPGSFE. If we do not provide an argument, then the
variable will be empty and will just print )FMMP. You can refer to the following screenshot
to see the execution argument and output:

If we adjust the script to use  , all the arguments will print. We will see )FMMP and then a
list of all the supplied arguments. Edit the script and replace the FDIP line as follows:
echo "Hello $*"

This will execute the script with the following arguments:


$ hello2.sh fred wilma betty barney

And this will result in the output shown in the following screenshot:

If we want to print )FMMPOBNF , with each name on a separate line, we will need to wait
a little until we cover looping structures. A GPS loop is a good way to achieve this.

The importance of correct quotes


So far, we have used a simple double-quoting mechanism to encase the strings that we want
to use with echo.

In the first script, it does not matter if we use single or double quotes. FDIP)FMMP
8PSME will be exactly the same as FDIP )FMMP8PSME .

[ 19 ]
The What and Why of Scripting with Bash Chapter 1

However, this is not the case in the second script, so it is very important to understand the
quoting mechanisms available in bash.

As we have seen, using double quotes in FDIP)FMMP will result in )FMMPGSFE or


whatever the supplied value is. Whereas, if we use single quotes in FDIP )FMMP , the
printed output on the screen will be )FMMP; that is, we see the variable name and not its
value.

The idea of the quotes is to protect special characters, such as a space between the two
words; both quotes protect the space from being misinterpreted. The space is normally read
as a default field, separated by the shell. In other words, all characters are read by the shell
as literals with no special meaning. This has the knock-on effect of the  symbol printing its
literal format rather than allowing bash to expand its value. The bash shell is prevented
from expanding the variable's value as it is protected by the single quotes.

This is where the double quote comes to our rescue. The double quote will protect all the
characters except the , allowing bash to expand the stored value.

If we ever need to use a literal  within the quoted string, along with variables that need to
be expanded, we can use double quotes, but escape the desired  with the backslash (=). For
example, FDIP64&3FBSOT= would print as 'SFEFBSOT if the current user
were Fred.

Try the following examples at the command line using all quoting mechanisms. Feel free to
up your hourly rate as required:
$ echo "$USER earns $4"
$ echo '$USER earns $4'
$ echo "$USER earns \$4"

The output is shown in the following screenshot:

[ 20 ]
The What and Why of Scripting with Bash Chapter 1

Printing the script name


The  variable represents the script name, and this is often used in usage statements. As
we are not yet looking at conditional statements, we will get the script name printed above
the displayed name.

Edit your script so that it reads like the following complete code block for
)0.&CJOIFMMPTI:

CJOCBTI
FDIP:PVBSFVTJOH
FDIP)FMMP 
FYJU

The output from the command is shown in the following screenshot:

If we prefer not to print the path and only want the name of the script to show, we can use
the CBTFOBNF command, which extracts the name from the path. Adjust the script so that
the second line now reads as follows:
echo "You are using $(basename $0)"

The   syntax is used to evaluate the output of the inner command. We first run
CBTFOBNF and feed the result into an unnamed variable represented by the .

The new output will appear as seen in the following screenshot:

It is possible to achieve the same results using back quotes; this is less easy to read, but we
have mentioned this as you might need to understand and modify the scripts that have
been written by others. The alternative to the   syntax is shown in the following
example:
echo "You are using 'basename $0'"

[ 21 ]
The What and Why of Scripting with Bash Chapter 1

Please note that the characters used are back quotes and NOT single quotes. On UK and US
keyboards, these are found in the top-left corner next to the number 1 key.

Declaring variables
Just like in any programming language, you can declare variables in bash scripts. So, what
are these variables and what are the benefits of using them?

Well, a variable is like a placeholder where you store some value for later use in your code.

There are two kinds of variables you can declare in your script:

User-defined variables
Environment variables

User-defined variables
To declare a variable, just type the name you want and set its value using the equals sign
().

Check out this example:


CJOCBTI
OBNF.PLIUBS
BHF
UPUBM
FDIPOBNFQSJOUT.PLIUBS
FDIPBHFQSJOUT
FDIPUPUBMQSJOUT

As you can see, to print the variable's value, you should use the dollar sign () before it.

Note that there are no spaces between the variable name and the equals sign, or between
the equals sign and the value.

If you forget and type a space in between, the shell will treat the variable as if it were a
command, and, since there is no such command, it will show an error.

[ 22 ]
The What and Why of Scripting with Bash Chapter 1

All of the following examples are incorrect declarations:


%PO UEFDMBSFWBSJBCMFTMJLFUIJT
OBNF.PLIUBS
BHF
UPUBM

Another useful type of user-defined variable is the array. An array can hold multiple
values. So, if you have tens of values you want to use, you should use arrays instead of
filling your script with variables.

To declare an array, just enclose its elements between brackets, like this:
CJOCBTI
NZBSS POFUXPUISFFGPVSGJWF

To access a specific array element, you can specify its index like this:
CJOCBTI
NZBSS POFUXPUISFFGPVSGJWF
FDIP\NZBSS<>^QSJOUTUXPXIJDIJTUIFTFDPOEFMFNFOU

The index is zero based.

To print the array elements, you can use an asterisk, like this:
CJOCBTI
NZBSS POFUXPUISFFGPVSGJWF
FDIP\NZBSS< >^

To remove a specific element from the array, you can use the VOTFU command:
CJOCBTI
NZBSS POFUXPUISFFGPVSGJWF
VOTFUNZBSS<>5IJTXJMMSFNPWFUIFTFDPOEFMFNFOU
VOTFUNZBSS5IJTXJMMSFNPWFBMMFMFNFOUT

Environment variables
So far, we have used variables that we didn't define, such as #"4)@7&34*0/, )0.&,
1"5), and 64&3. You might wonder, as we didn't declare these variables, where did they
come from?

[ 23 ]
The What and Why of Scripting with Bash Chapter 1

These variables are defined by the shell for your use and they are called environment
variables.

There are many environment variables. If you want to list them, you can use the QSJOUFOW
command.

Also, you can print a specific environment variable by specifying it to the QSJOUFOW
command:
$ printenv HOME

We can use any of these variables in our bash scripts.

Note that all environment variables are written in capital letters, so you can declare your
variables as lower case to make it easy to differentiate your variables from environment
variables. This is not required, but is preferable.

Variable scope
Once you have declared your variable, it will be available for use in your entire bash script
without any problems.

Let's assume this scenario: you have divided your code into two files and you will execute
one of them from inside the other, like this:
5IFGJSTUTDSJQU
CJOCBTI
OBNF.PLIUBS
TDSJQUTI5IJTXJMMSVOUIFTFDPOETDSJQU

The second script looks like this:


5IFTDSJQUTITDSJQU
CJOCBTI
FDIPOBNF

Suppose that you want to use the OBNF variable in the second script. If you try to print it,
nothing will show up; this is because a variable's scope is only limited to the process that
creates it.

To use the OBNF variable, you can export it using the FYQPSU command.

[ 24 ]
The What and Why of Scripting with Bash Chapter 1

So, our code will be like this:


5IFGJSTUTDSJQU
CJOCBTI
OBNF.PLIUBS
FYQPSUOBNF5IFWBSJBCMFXJMMCFBDDFTTJCMFUPPUIFSQSPDFTTFT
TDSJQUTI

Now if you run the first script, it will print the name that came from the first script file.

Keep in mind that the second process or TDSJQUTI only makes a copy of the variable and
never touches the original one.

To prove this, try to change that variable from the second script and try to access that
variable value from the first script:
5IFGJSTUTDSJQU
CJOCBTI
OBNF.PLIUBS
FYQPSUOBNF
TDSJQUTI
FDIPOBNF

The second script will be like this:


5IFGJSTUTDSJQU
CJOCBTI
OBNF"OPUIFSOBNF
FDIPOBNF

If you run the first script, it will print the modified OBNF from the second script and then it
will print the original OBNF from the first script. So, the original variable remains as it is.

Command substitution
So far, we have seen how to declare variables. These variables can hold integers, strings,
arrays, or floats, as we have seen, but this is not everything.

A command substitution means storing the output of a command execution in a variable.

[ 25 ]
The What and Why of Scripting with Bash Chapter 1

As you might know, the QXE command prints the current working directory. So, we will see
how to store its value in a variable.

There are two ways to perform a command substitution:

Using the backtick character ( )


Using the dollar sign format, like this: 

Using the first method, we just surround the command between two backticks:
CJOCBTI
DVS@EJS QXE
FDIPDVS@EJS

And the second way is written as follows:


CJOCBTI
DVS@EJS QXE
FDIPDVS@EJS

The output coming from commands can be further processed and actions can be made
based on that output.

Debugging your scripts


With the scripts as simple as we have seen so far, there is little that can go wrong or need
debugging. As the script grows and decision paths are included with conditional
statements, we may need to use some level of debugging to analyze the scripts' progress
better.

Bash provides two options for us, W and Y.

If we want to look at the verbose output from our script and the detailed information about
the way the script is evaluated line by line, we can use the W option. This can be within the
shebang, but it is often easier to run the script directly with bash:
$ bash -v $HOME/bin/hello2.sh fred

[ 26 ]
The What and Why of Scripting with Bash Chapter 1

This is especially useful in this example as we can see how each element of the embedded
CBTFOBNF command is processed. The first step is removing the quotes and then the
parentheses. Take a look at the following output:

The Y option, which displays the commands as they are executed, is more commonly used.
It's useful to know the decision branch that has been chosen by the script. The following
shows this in action:
$ bash -x $HOME/bin/hello2.sh fred

We again see that the CBTFOBNF is evaluated first, but we do not see the more detailed steps
involved in running that command. The screenshot that follows captures the command and
output:

[ 27 ]
The What and Why of Scripting with Bash Chapter 1

The previous method might be hard for beginners or people who have a programming
background in which they debugged their code visually.

Another modern way of debugging shell scripts is by using Visual Studio Code.

There is a plugin called bash debug that enables you to debug bash scripts visually, as is
the case for any other programming language.

You can step into, step over, add watches, and do all the other usual debugging stuff you
know.

After installing the plugin, from the File menu, open your TIFMMTDSJQUT folder. Then
you can configure the debugging process by pressing Ctrl + Shift + P and typing the
following:
%FCVHPQFOMBVODIKTPO

This will open an empty file; type in the following configurations:


\
WFSTJPO
DPOGJHVSBUJPOT<
\
OBNF1BDLU#BTI%FCVH
UZQFCBTIEC
SFRVFTUMBVODI
TDSJQU1BUI\DPNNBOE4FMFDU4DSJQU/BNF^
DPNNBOE-JOF"SHVNFOUT
MJOVY\
CBTI1BUICBTI
^
PTY\
CBTI1BUICBTI
^
^
>
^

[ 28 ]
The What and Why of Scripting with Bash Chapter 1

This will create a debug configuration named 1BDLU#BTI%FCVH:

[ 29 ]
The What and Why of Scripting with Bash Chapter 1

Now insert a breakpoint and press F5, or start debugging from the Debug menu; it will
show you the list of TI files:

[ 30 ]
The What and Why of Scripting with Bash Chapter 1

Select the one you want to debug, and set a breakpoint on any line to test it, as shown in the
following screenshot:

[ 31 ]
The What and Why of Scripting with Bash Chapter 1

You can add watches to watch variables' values while stepping over your lines of code:

Note that your script MUST start with the bash shebang, CJOCBTI.

Now you can enjoy the visual method of debugging. Happy coding!

[ 32 ]
Discovering Diverse Content Through
Random Scribd Documents
Följden är också den att jag, icke nöjd med att blott skaffa biljetten,
äfven hört mig om och med mycken svårighet lyckats förskaffa
honom en säker följeslagare, på det han ej måtte få för tråkigt under
den långa resan ... ja, icke nog dermed, jag har äfven förskaffat mig
polis-prefekten monsieur Rambuteau’s egenhändiga order.“
“Här äro mina två sous för likören“, sade Hvita Björnen, kastande
de tvänne sou-styckena på silfverdisken.
“Men ni har ju icke tagit någon likör“, underrättade madame
Moreau, “och jag har glömt att hälla i den.“
Hvita Björnen tycktes icke hafva hört hvad hon sade, ty han tog
ett steg närmare dörren.
Men stads-sergeanten tog äfven ett steg, så att han befann sig
emellan Hvita Björnen och samma dörr.
“Ni vill hindra mig att gå?“ frågade Simon med ett försmädligt
leende.
“Ni hörde då icke, att jag har polis-prefektens egenhändiga order“,
påminde Carlion, i det han tog fram ett papper, som han höll framför
Hvita Björnens ögon.
“Monsieur Carlion!“ yttrade denne; “ni måste vara god och maka
åt er något, ty annars ...“
“Ty annars?“
“Går jag tvärs öfver er, och det är icke bra, ty jag har skor med
dubbla bottnar“, tillkännagaf Hvita Björnen.
“Men ni går väl icke öfver polis-prefektens order, förmodar jag?“
“Jag går öfver sjelfva Tuilerierna, om de ligga mig i vägen“,
förklarade Hvita Björnen.
“Ni är för tung och ovig till saltomortaler, monsieur Simon ... Ni
hoppar icke ens öfver sex man med påskrufvade bajonetter.“
Dervid tog stads-sergeanten ett nytt steg baklänges mot dörren.
Hvita Björnen följde honom icke, ty han hörde vapengny och
upptäckte i den öppnade dörren flere män i municipal-gardets
lysande uniform.
“Ni har gjort er mycket besvär, monsieur Carlion“, anmärkte Hvita
Björnen.
“Det är visst icke något besvär, monsieur Simon“, svarade stads-
sergeanten med en bugning; “ni är för öfrigt icke den förste
betydande person, som lemnat Paris med eskort.“
“Men ni har glömt att jag år 1830 ensam fälde till marken mer än
två dussin af Carl X:s schweizer-garde och hvilka alla voro halfva
hufvudet längre än era gardister“, erinrade Hvita Björnen.
“Hvem kunde glömma det?“ yttrade monsieur Carlion; “men på
den tiden var ni en oförståndig och hetlefrad yngling, då ni deremot
nu är en äldre och sansad man.“
“Det är således med våld man ämnar föra mig från Paris?“ frågade
Hvita Björnen.
“Med våld? bevare oss Gud derifrån!“
“Utan ransakning och dom släpa mig till Alger?“
“Hur kan ni tro oss om något sådant?“
“Men om jag vägrar att följa er? ... om jag protesterar mot detta
angrepp på den personliga friheten?“
“I fall det är ett angrepp mot den personliga friheten, så är det
klart att ni måste protestera.“
“Nåväl, jag protesterar.“
“Det måste ske skriftligen.“
“Godt! jag gör det skriftligen.“
“Det är i sin behöriga ordning, men protesten måste dateras
Alger.“
“Monsieur Carlion!“ röt Hvita Björnen till, antagande en hotfull
ställning.
“Klockan är redan half nio och ni vet att half tio afgår bantåget.“
“Det kommer en gång att utkräfvas en blodig vedergällning för
detta godtyckliga förtryck.“
“Det är icke omöjligt, men detta kan icke uppskjuta en så
angelägen resa.“
“Ni går att fullända en af de svartaste intriger, som någonsin blifvit
spunnen.“
“Hvad är en färd till Alger emot en resa in i lejonets gap?“
“Ha, monsieur Carlion!“
Hvita Björnens blickar irrade sökande kring rummet och stannade
slutligen på silfverdisken, i hvilken jemväl hans breda händer fattade.
Men om också hans begge armar med all säkerhet kunnat lyfta
denna silfverskifva och begagna den som vapen, i trots af de 15,000
francs som den kostade, så var den likväl “till förekommande af all
säkerhet“ fastnitad vid sjelfva disken, hvilken jemväl i sin ordning var
med grofva jernskrufvar fästad vid golfvet. Hvita Björnen drog
tillbaka sina händer, ty Simon var ingen Simson.
Madame Moreau, som med synbar ängslan följt Hvita Björnens
blickar och rörelser, lade sina runda armar öfver silfverdisken, för att
beskydda den, liksom hade hon verkligen fruktat för en ny Simson.
“Gör er icke olycklig, monsieur Simon“, bad hon; “det är kanske
icke så farligt som ni föreställer er ... men ett fruktlöst motstånd
vore både vansinnigt och olycksbringande för evigt.“
“Madelone! Madelone!“ mumlade Hvita Björnen med knutna
handen mot pannan.
“Är det detta som oroar er, stackars Simon“, yttrade madame
Moreau med det mest deltagande uttryck; “var då lugn, ty så länge
jag lefver, skall ingen vissnad krans ligga på Madelone’s graf.“
En blick af tacksamhet från Hvita Björnens ögon belönade
madame Moreau för hennes tröstrika löfte. Derefter vände han sig
mot stads-sergeanten och municipal-gardisterne, hvilkas bajonetter
hotande glittrade mot hans bröst.
“Jag följer er“, ropade han, “derför att jag vill det ... derför att jag
behöfver denna nya olaglighet, för att få er merit-förteckning full ...
Fören mig öfver hafvets vågor ända till yttersta gränsen af Afrikas
öknar! ... Jag skall gräfva mig genom de sednare och klyfva de förra:
jag skall återkomma ... Men ve då, ve er alla! ve, ve!“
Efter dessa ord öfverlemnade han sig med högburet hufvud åt
vakten och försvann med den.
Sålunda fick Hvita Björnen äfven sitt ide.
Trettonde kapitlet.
Queue’n.

Men hvarför kom icke Armand Cambon, såsom aftaldt var, klockan
sex till Bicêtre? hvarför bröt han sitt till Hvita Björnen gifna högtidliga
löfte? hvarför glömde han någonting så vigtigt som Madelone’s
grafvård?
Armand Cambon kunde icke komma till Bicêtre klockan sex. Han
kunde icke komma sju, icke heller half åtta, ja troligtvis icke ens på
hela aftonen, ty han stod i queue på rue Lepelletier utanför
l’Académie Royale (numera Nationale) de Musique.
Denna queue, flere timmar gammal, tycktes förlora sig i
oändligheten. Krökande sig i flere bugter, var den ännu orörlig som
en mättad orm; men den var långt ifrån att vara mättad, ty den
började vid biljettluckan, och denna var ännu icke öppnad. Dess
orörlighet var en följd af ordningens vana, denna blott bevakad af en
enda stads-sergeant, som icke ens behöfde öppna munnen, för att
hålla lugnet vid makt.
I Stockholm har man, oss veterligt, endast vid tvänne tillfällen sökt
bilda queue. Det första var då högstsalig konung Carl XIV Johans lik
visades; men då gick det så oregerligt och lifsfarligt till, att en viss
grefve, känd för sina naiva infall, fann sig föranlåten yttra: “Det är
aldrig värdt att bereda stockholmsborne något nöje“. Det andra
tillfället var, när Jenny Lind för några år sedan för första gången
efter en hemkomst till fäderneslandet skulle uppträda såsom
“Regementets Dotter“; men då, ehuru queue’n bildades midt framför
en högvakt samt från början till slut bevakades af polisbetjenter,
uppkom en sådan oordning, att nästan hvarje deruti stående person
fick sina kläder sönderrifna och ganska många blefvo så illa skadade
att de sanslöse måste bäras från platsen. Endast i Stockholm kunde
det gå an för ett par handfasta vindragare eller jernbärare, att,
sedan de sjelfve hela natten sofvit i god ro, om morgonen inställa sig
för att bryta queue’n och intaga första ledet framför de många
hundra, som stått der hela natten. Men det blir väl bättre med tiden.
Efter ett halft sekels förlopp kunna nog våra barnbarn bilda queue
lika bra som alla andra, och det vore åtminstone något.
Den queue, om hvilken vi nu tala, har, såsom äfven nämndes,
stått der flere timmar, ja långt före den vanliga timmen för
middagsmåltiden, som är klockan fem; men man behöfver derför
icke hungra eller törsta. På begge sidor om queue’n röra sig en
mängd minuthandlare af gatan, serverande all slags kallmat, alla
sorters dryckesvaror, jemte snus, cigarrer och stoppade tobakspipor
med sina dertill hörande brinnande fidibussar, ja till och med sko-
och klädesplagg med mera, som tillhör ordentlig toalett. Man säger
att man naken kan inträda inom murarne af Palais National (f. d.
Royal) och inom en qvarts timme gå ut derifrån “comme il faut“, och
detta är visserligen sannt. Men man kan också, en fallen ängel lik,
störta ned från himmelen midt i en parisisk queue och efter några
minuters förlopp träda lika hygglig och snygg som annat folk in i den
granna teatersalongen, för att vid Fanny Cerritos dans eller Julia
Grisis sång drömma om sin förlorade himmel.
Men utom dessa köpmän af gatan, kringsvärmas man äfven af en
tallös mängd utbjudare af texten eller programmet till det
teaterstycke, som samma afton skall uppföras.
Armand Cambon, som stod bland de siste och följaktligen ganska
långt ifrån biljettluckan, kände sig nästan lomhörd af följande rop
från alla sidor.
“La pièce: le violon du diable, un franc! ... le programme de la
pièce: le violon du diable, trois sous ... voici le programme! ... tout le
contenu de la pièce, la pièce entière, un franc! ... voici le
programme!“
Cambon såg nästan alla sina grannar köpa antingen texten eller
programmet.
“Hvad är le violon du diable för en opera?“ frågade han den som
stod bredvid honom.
“Vet ni inte att det är en ballett?“ afgaf denne till svar med en
medlidsam blick på den okunnige.
“Nej, monsieur.“
“Ni vet då inte att denna ballett i afton gifves för första gången?“
“Nej.“
“Kanske icke heller att Fanny Cerrito skall uppträda deruti?“
“Nej.“
“Hm!“
Armand Cambon hade således, i stället för att hålla sitt löfte till sin
f. d. lärare, stält sig i queue utan att känna hvilken pjes skulle
uppföras och utan att hafva Fanny Cerrito att skylla på. Vår hjelte
var då en blind teatervurm.
“Skall vara alldeles utomordentlig, den der italienska dansösen“,
återtog grannen.
“Jaså“, svarade Armand, temligen liknöjdt.
“Skall vara till och med bättre än Maria Taglioni och Fanny Elsler.“
“Jaså.“
“Monsieur tycker inte särdeles om balletter, tror jag?“ yttrade
grannen något förvånad.
“Så der“, svarade Cambon med ett uttryck, som bevisade att
grannen trodde rätt.
“Monsieur är kanske mera road af musiken?“ frågade denne; “ni är
en stor beundrare af operan, monsieur?“
“Det kan jag just inte säga“, svarade Cambon mycket tankspridd.
“Hm!“ mumlade grannen, som fann det vara förspild möda att tala
med en sådan barbar.
Om Armand Cambon hvarken tyckte om operamusiken eller
balletten, hvad hade han då i queue’n utanför operahuset att göra?
Hvarför tog han upp platsen för en annan, som bättre än han
förmådde uppskatta dessa himmelens gåfvor, och detta vid ett
tillfälle, då han visste sig vara väntad och efterlängtad på Bicêtre?
“Det skulle emellertid lätt kunna hända att vi i afton gå miste om
biljetter“, yttrade grannen.
“Gå miste om biljetter!“ upprepade Armand häftigt; “ni tror då,
monsieur, att ...“
“Att innan vi hinna till biljettluckan, kunna möjligtvis alla biljetterna
vara sålda“, menade grannen.
“Hur då? ... hur kan ni tro det?“ ropade Cambon med en ifver, som
borde förändra grannens förra tanke om hans kärlek för opera-
musiken och balletten.
“Jo“, svarade grannen, “för det första hafva vi mera än hundra
personer framför oss i queue’n, hvilka naturligtvis skola köpa biljetter
innan vi hinna fram.“
“Än sedan?“
“För det andra har det hela förmiddagen varit stark efterfrågan på
biljetter ... det är möjligt att det blott finnes ett mindre antal qvar, i
fall det ens finnes någon ... fem äro alltid mer än fyra.“
En biljett till teatrarne i Paris kostar på förmiddagen 25 procent
mera än på eftermiddagen, då man, medföljande queue’n, köper i
biljettluckan. Detta gäller alltid de förnämsta teatrarne. En
parterrbiljett till operan t. ex. kostar före middagen fem francs, men
efteråt i queue’n endast fyra, hvarför det också händer att queue’n
icke får biljetter, isynnerhet när sådana pjeser gifvas, hvilka, såsom
det hos oss kallas, förorsaka “rusning“. Men hvad de mindre eller
folk-teatrarne beträffar, är det vissa rader eller loger, som aldrig få
säljas förut, på det att arbetsklassen, som icke har tillfälle att köpa
på förhand, icke förgäfves må ställa sig i queue. Att stå förgäfves i
queue är emellertid en stor obehaglighet, det kan ej bestridas; men
dock händer sådant, ty fransmannen är för stor hushållare för att på
förmiddagen betala en sak med fem francs, som han på
eftermiddagen kan få för fyra.
“Ni tror således att vi kunna bli utan biljetter?“ frågade Armand
nästan med hjertat i halsgropen.
“Jag säger att det inte är otroligt ... emellertid ångrar jag att jag ej
köpte på förmiddagen.“
Armand Cambon lemnade på ögonblicket sin plats, hvilken genast
intogs af en bland de två, som förut stått bakom honom. Det var nu
ändtligen förståndigt af vår hjelte. Han kan, ehuru i senaste laget,
ännu hinna till Bicêtre innan det stängs.
Men den unge mannen hastar ej till Bicêtre. Han springer endast
förbi queue’n och stannar vid dess första led.
Vill han smugla sig in der? Det vore fruktlöst bemödande. Han
skulle tillbakavisas och, om han föröfvade våld, tillbakakastas midt i
skötet på stads-sergeanten, och det är icke fader Abrahams sköte.
Icke en gång en prins skulle våga detta försök.
Men det finnes ett slags personer, som beständigt stå i queue,
utan att någonsin köpa biljetter. De bilda vanligtvis de första leden
och skryta ganska högljudt med sin lycka. Men när biljettluckan
öppnas, smyga de sig understundom förbi den, utan att, såsom nyss
antydt är, begagna sig af denna sin lycka. Hvarför ställa de sig då i
queue?
Är det för att förarga sin nästa? Ack nej, i Paris gör man sig
hvarken tid eller besvär att förarga sin nästa. Man lemnar denna
fullkomligt i fred. Det är visserligen sannt, att man icke röjer den
deltagande ömhet för sina medmenniskor, som man ofta finner hos
mera hjertliga folk; men så oroar man icke heller sin
kristendomsbroder eller -syster med sqvaller och förtal, hvilket lika
ofta är fallet bland de mera hjertliga folken.
Ifrågavarande personer äro endast affärsmän och bilda de första
leden för att mot en afgift, lämpad efter nyfikenheten, kunna bevaka
platsen åt hugade spekulanter. Den som vill betala dem hvad de
begära, får också deras plats. Är nyfikenheten för aftonen mindre, så
kostar naturligtvis platsen mindre; är det ingen nyfikenhet, finns det
icke heller någon som bjuder. Det är då en dålig affär, och man
smyger sig med bortvändt ansigte förbi biljettluckan. Men man
förlorar icke modet. Man ställer sig utanför porten till teaterhuset
och passar på, när någon pjes eller akt är slutad. Man läser i de
nedkommandes blickar, om pjesen är tråkig, om trängseln på
parterren är outhärdelig; man räknar pannans rynkor eller
svettdropparne, och summan blir att man bjuder några sous, men
allra helst ingenting för kontra-marken, den man sedan, i fall det blir
affär af, säljer åt en annan, med någon vinst naturligtvis. Misslyckas
äfven denna affär, så är det ännu sämre; men man hänger sig icke
för det. Man lägger sig att sofva, antingen man har eller icke har tak
öfver hufvudet, och drömmer om nya queuer och lyckligare
teaterportar, om mycket goda eller mycket dåliga teaterstycken, ty
man har fördel af beggedera. Det är endast medelmåttan man hatar.
Det var till en af desse affärsmän som Armand Cambon vände sig.
“Monsieur! tror ni att det finnes några biljetter qvar i luckan?“
frågade han.
“På hvilken plats, monsieur!“
“På parterren till exempel.“
“På parterren? ... det finns, monsieur.“
“Många?“
“Många? ... pardon, monsieur? hur kan ni säga många, när Fanny
Cerrito dansar! ... Finnes det ett dussin qvar, så må man skatta sig
lycklig, lyckligare än själen, när den lemnar sin skärseld.“
“Ni är emellertid säker på att det är ett dussin qvar?“
“Säker? ... hur kan man vara säker, när Fanny Cerrito dansar! ...
monsieur, hon dansar för första gången i le violon du diable ... le
violon du diable, monsieur! ... hvilken ballett, monsieur!“
“Men huru många är ni då säker på?“ frågade Armand otåligt.
“Jag vill ej våga mitt lillfinger på att det är ett dussin, men jag
vågar min hals, hela min hals, monsieur, att det åtminstone finnes
åtta qvar ... Ah, hvarför har ni inte i tid passat på, monsieur? ...
hvarför står ni inte i queue från morgonen till qvällen, när Fanny
Cerrito dansar? ... Hvad är Taglioni, monsieur! ... hvad är Elsler,
monsieur! ... ja, det kan inte finnas fler än åtta, monsieur.“
Affärsmannen, som stod i fjerde ledet, borde således blifva den
sjunde eller åttonde af de åtta utvalde.
“Jag vill köpa er plats“, förklarade Cambon.
“Ni vill ... jag undrar alls icke på det ... men jag svarar er såsom
jag nyss svarade den tjugonde, ty ni är den tjuguförste, som vill
köpa denna lyckliga plats ... Men hvad tänkte ni då på, som inte förr
...“
“Men hvad svarade ni den tjugonde?“ frågade Armand, stampande
fötterna af otålighet.
“Att jag sjelf en gång måste se denna ojemförliga talang, som sett
Europa vid sin fot, sett Amerika, monsieur! ... Kanske är det den
enda gången hon uppträder, åtminstone förklarade hon sjelf på
repetitionen i dag, ty jag har en bror som är maskinist, monsieur,
hon förklarade att hon först efter en månad tror sig kunna uppträda
för andra gången ... hon står en qvarts timme på ena tåspetsen,
utan att någon håller henne om lifvet, monsieur, och under det hon
står på denna tåspets, spelar hon viol, monsieur, och det är just le
violon du diable, monsieur ... hvilken sublim ballett! ... Le violon du
diable är en ängels tanke, monsieur! ... Splitter nya dekorationer,
målade af den store Desplechin ... hvilka skyar! hvilken himmel,
hvilken soluppgång! Soluppgången är af den store Thierry; man
kunde ge fem francs bara för himmelens skull, monsieur.“
“Ett bestämdt ord: vill ni sälja eller vill ni inte sälja?“ frågade
Cambon med tilltagande oro.
“Ni är en stor beundrare af Fanny Cerrito, och det hedrar er smak,
monsieur!“ komplimenterade affärsmannen; “ni skall applådera
henne med värma och kraft, ty ni är i era bästa år, och jag unnar
henne denna hyllning ... Jag vill ej beröfva henne den och skulle
derför kunna afstå min plats åt er.“
“Nå, priset?“
“Jag nämnde att jag har en bror, som är maskinist: jag skulle
kunna få se henne ändå, skulle kunna få se henne mellan kulisserna,
monsieur.“
“Priset, priset!“
“Tjugu francs ... mon dieu! nej, tretti francs, monsieur.“
“Här är en franc“, bjöd Armand, som af egen erfarenhet kände
svalget emellan begära och bjuda.
“Men betänk då“, yttrade affärsmannen, lika erfaren och
följaktligen icke stött, “betänk då, att när le violon du diable första
gången uppfördes i Milano, var det sådan trängsel vid ingången till
operahuset, att tjugu menniskor blefvo ihjälklämda ... tjugu
menniskor utom qvinnor och barn, monsieur!“
“En franc“, fortfor Cambon.
“Tio, får gå för tio“, jemkade affärsmannen, seende sig omkring
efter flere spekulanter; “ni vet då icke att Fanny Cerrito ...“
“Icke en sou öfver en franc“, förklarade Armand.
“Så tag den för fem då! ... Men jag glömde nämna, att Fanny
Cerritos man är den, som spelar viol ... en hustru, som dansar efter
sin mans viol, är det icke värdt fem francs det, monsieur?“
“Nu ändtligen öppnas biljettluckan“, förklarade en röst i första
ledet.
“Monsieur får icke trängas der! hvad har monsieur der att göra!“
ropade stads-sergeanten till Cambon; “maka er genast bort, s’il vous
plaît!“
“Två francs, det är mitt sista bud“, hviskade Armand i
affärsmannens öra och med andan i halsen.
“Får gå då“, svarade denne, lemnande Armand sin plats; “två
francs för en sådan dansös! ... jag går under, jag dör, men dör för
konsten ... Man skall afundas er, man skall beklaga mig, men
martyrens lott är skönare än lyckans ... Adieu, monsieur!“
Martyren aflägsnade sig med handen på hjertat och blicken på
två-francstycket. Armand var glad, liksom hade han gjort den bästa
affär i verlden. Förr än att gå miste om en biljett denna afton skulle
han hafva sålt sin sista blus, och likväl var han ingen beundrare af
balletten och musiken, ingen afgudadyrkare af Fanny Cerritos dans!
Fjortonde kapitlet.
Djefvulens fiol.

L’Académie Nationale f. d. Royale de Musique, som har sin


upprinnelse från det sextonde seklet, har icke alltid haft sin plats,
der den nu är, ty den första académie de musique, stiftad af Baïf, en
italiensk poet, i förening med en fransk kompositör Courville, erhöll
sina privilegier af Carl IX, och hade då sitt hem vid rue des Fosses-
S:t-Victor. Dessa tvänne män voro de första som i Frankrike förenade
poesien med musiken. År 1672 emottog den bekante Lulli ledningen
af bemälde akademi, som då någon tid stod i högt anseende.
Hofvets herrar och fruntimmer tvekade ej att der uppträda både i
sången och dansen. Men anseendet sjönk, när den store Ludvig XIV
fann för godt att begagna sånggudinnornas tempel för helt andra
ändamål än konstens. När han i nåder värdigades undandraga
någon oskyldig flicka hennes föräldrars välde och skydd, inskref
högstdensamme henne helt enkelt såsom medlem af akademien,
hvars tröskel mera än ett modersöga fuktat med vanmäktiga tårar.
Säg oss något, som icke Frankrikes konungar vanhelgat! Och
ändå, à propos djefvulens fiol, finnas de som förundra sig om man
släpar deras troner i gruset, om man jagar dem sjelfva utom
gränserna, om man lägger deras hufvud på ... Men det är för
olyckligt att man så ofta skall halka in på politiken, att man alltid, när
man trampar på republikens jord, äfven skall tro sig trampa på
kullstjelpta troner! Dock, det blir väl bättre, när man återkommit till
sin kalla förståndiga nord, der tronen ännu står upprätt och der den
icke stjelper så lätt, emedan många vackra minnen omhägna den,
emedan den icke alltid hemtat sin purpur ur dygdens rodnad och
oskuldens blod. Det har stått annat än guldsmidda laster vid dess
fot; der har sväfvat annat än folkens förbannelser öfver dess
himmel.
För att återkomma till vårt ämne, nämna vi att Lulli flyttade
bemälde akademi till Palais Royal, emellan hvilket och Tuilerierna
den, till följd af eldsvådor, ytterligare fördes och återfördes. Slutligen
trodde man sig vid rue Richelieu hafva funnit ett säkert hem för den
franska operan, då följande hemska tilldragelse jagade henne äfven
derifrån:
Natten emellan den 13 och 14 februari år 1820, medan hela Paris
öfverlemnade sig åt en brusande karnaval och opera-salongen
skakades af en glad publiks bifallsyttringar, smög der, djupt insvept i
sin kappa, en man, hvars namn var Louvel, exalterad republikan,
hvilken fått i sitt hufvud att han för framtiden borde försäkra sitt
fädernesland om republiken. Detta enligt orleanisternes utsago,
hvaremot både republikaner och bourboner påstå, att Louvel blott
var en stor beundrare af Orleanska huset, en beundran, som, efter
hvad vi alla veta, låter sig väl förenas med hatet mot den
Bourbonska grenen. Det var en djerf tanke, men den var äfven
afskyvärd, ty han trodde sig kunna verkliggöra den genom ett mord.
Hertigen af Berry, Ludvig XVIII:s brorson och Carl X:s son samt
franska kronans ende legitime arftagare, bevistade jemte sin gemål
operan samma afton. Han inträdde i hertigen af Orléans sedermera
Louis Philippe’s loge och smekte dennes barn. Sjelf hade han ännu
ingen son att smeka, och när sonen en dag kom till verlden, låg
fadershanden vissnad under marmorn i S:t-Denis. Hertiginnan, som
önskade lemna teatern före operans slut, åtföljdes till vagnen af sin
gemål. Hertiginnan for, och hertigen skulle återvända till sin loge, då
Louvel störtar fram, fattar uti prinsens venstra skuldra och ända till
fästet stöter sin dolk i hans bröst. Hertigen sjunker död till marken,
och Louvel flyr. Men under flykten springer han på en pastejbagare,
som helt lugn vandrar sin gata, bärande en bricka med bakelser.
Brickan kastas vid sammanstötningen ur pastejbagarens händer och
faller på gatan. Pastejbagaren sätter efter den flyende för att få
ersättning för sina förlorade bakelser, upphinner och hejdar honom.
Louvel, som har vida mer än bakelser på sitt samvete, söker slita sig
lös. En brottning uppstår, under hvilken den vakt, som söker
mördaren, anländer. Man kämpar icke så förtvifladt som Louvel för
att slippa betala någonting så obetydligt som några bakelser.
“Ah, det är säkert mördaren!“ ropar den skarpsynte polis-
sergeanten, läggande handen på Louvel, som på ögonblicket gripes
och bindes af vakten.
“Hvem är då mördad?“ frågar den förvånade pastejbagaren.
“Hertigen af Berry“, svara soldaterne.
“Hertigen af Berry!“ upprepar pastejbagaren med förskräckelse;
“hur skall det då gå med mina bakelser!“
De äro stora egoister, de der fransmännen.
Midt under den allmänna bestörtningen, sågo äfven de, som borde
känna den djupaste smärta, i attentatet ett medel att främja sitt
partis afsigter. Nya lagar utkommo ögonblickligen, som ytterligare
begränsade den personliga friheten och den periodiska pressen,
redan förut kringskurna af det mest godtyckliga förtryck, hvartill kom
en valreform, som inskränkte landets representanter snart sagdt till
en handfull hofmän. Hofvet tröstade sig således, medan folket som
vanligt fick betala fiolerna. Men, också à propos djefvulens fiol, det
blef ej folket som dansade, utan bourbonen Carl X sjelf år 1830,
liksom orleanisten Ludvig Filip 1848 vid ungefär samma musik.
Djefvulens fiol är ett farligt instrument att spela på. Den, som det
gör, får visserligen i början hela verlden att dansa, men slutar snart
med att dansa sjelf, och att dansen ej bär till himmelen är klart som
dagen. Se der ha vi nu politiken igen! Det är luftens fel ... men
komma vi då aldrig in i opera-salongen?
De franska sånggudinnorna måste efter hertigens mord lemna rue
Richelieu, förbannad af alla legitimister, och fly till det tempel, som
de nu bebo vid rue Lepelletier och hvilket invigdes den 19 Augusti
1821. Men de lära ej förlorat på bytet, och den som för första
gången träder inom l’Académie Nationale de Musique öfverraskas
ovilkorligen af den prakt, som, när vi undantaga Théâtre Italien,
likaledes i Paris, är den på en gång rikaste och smakfullaste vi
skådat inom någon teater.
Vår kongl. svenska teater är visserligen ganska vacker; men att,
såsom en svensk tidning för några månader sedan påstod, anse den
för “en af de vackraste i verlden“, är väl något för mycket tilltaget.
På sin höjd bör den kunna jemföras med Opéra-Comique eller
Théâtre-Français. L’Académie Nationale de Musique rymmer nära
2,000 åskådare och bruttoinkomsten för qvällen, när huset är fullt,
belöper sig till 10,000 francs, eller nära nog fem gånger så mycket
som brutton af ett utsåldt spektakel å kongl. svenska teatern. Af de
25 teatrar, som finnas endast inom barriererna och hvilka alla stå
under enskilda styrelser, är det endast fyra, eller l’Académie
Nationale de Musique, Théâtre Italien, Opéra-Comique och Théâtre-
Français, som hafva årliga anslag af staten; men icke desto mindre
bära sig alla mycket väl, och om det också under republikens första
år gick något klent för åtskilliga af dem, så är det deremot nu så
fördelaktigt, att kännare till och med påstå att tilloppet af
teaterbesökande aldrig under konungadömet varit så stort som
under nuvarande år. Nästan hvarje teater har sin vackra foyer, prydd
med utmärkte författares och kompositörers bröstbilder i gips eller
marmor. Stockholms kongl. teater har visserligen också sin foyer;
men allt sedan Gustaf III:s tid hafva de, som besöka teatern, saknat
den. Hvarför upplåtes aldrig ett enda af de många stora och prydliga
rummen till detta ändamål? Det är sannt, vi hafva inga
teaterförfattares och opera-kompositörers byster att pryda foyer’n
med; men det kunde nog vara angenämt ändå, att, liksom inom
teaterhusen i Paris, hafva ett rum, der åskådarne emellan akterna
kunde råkas och språka med hvarandra, i stället för att nu, såsom
fallet åtminstone är med våra stackars fruntimmer, i hela tre, ja fyra
timmar oupphörligen sitta inklämda inom trånga loger. Och ville man
nödvändigt hafva byster derinne, så kunde man ju, i brist på
författare och kompositörer, uppställa utmärkte skådespelares och
skådespelerskors. Lars Hjortsbergs gubbhufvud skulle taga sig väl ut
i gips. Emilie Högqvists byst vore heller icke att förakta. Det vore
något att börja med, skulle vi tro. I en framtid kunde man möjligtvis
få se i gips eller marmor, allt efter råd och lägenhet, Torslow, Almlöf,
Dahlqvist och Jolin i hans dubbla egenskap af dramaturg och
skådespelare, samt fruarna Eriksson, Torslow och Westerdahl; och
hvad sägs om Jenny Lind, den ryktbaraste af alla, och hvilken med
sin sällsynta talang äfven förenar den sällsynta lyckan att såsom
sådan allmänt vara erkänd, fastän hon lefver! Det blefve ju en
vacker samling, eller hur? Man kunde, för att ytterligare illustrera
den, uppställa den tredje Gustafs bild i fonden, med Kellgren på
högra sidan och Leopold på den venstra. Det borde bli en artig syn
nog för kommande svenska konstnärer och konstälskare. Man kunde
tro sig förflyttad tillbaka till det tidehvarf, då konungakronan göt sin
uppmuntrande glans öfver snillets och talangens lager. Dock, vi hade
så när glömt, att vår kongl. teater hyser inom sina murar icke mindre
än tre foyer’er, som alltid äro öppna och tillgängliga, nämligen herrar
Pohls och Davidssons konditorier samt den rymliga Operakällaren
med sina buteljer och bålar, i stället för byster och statyer. Der får
man den ärliga lilla supen och den stora till och med, för att ej tala
om lilla saltkötts-smörgåsen och det redliga ölglaset; men allt detta
får man ej i Paris, som endast bjuder beqvämare platser att sitta på
och ljusa rymliga korridorer.
Här vore kanske tillfälle att försöka någon liten kritik äfven öfver
det immateriella af operan och skådespelet; men som under
fortgången af denna berättelse ännu beqvämare tillfällen dertill torde
erbjuda sig, vilja vi blott i förbigående och på förhand nämna att vi
till alla delar förena oss med dem som påstå, att vår svenska teater
haft sina tidskiften, sina ryck, då både dess lyriska och dramatiska
scen fullt ut kunnat jemföras med, om ej öfverträffa, hvad vi i den
vägen sett och hört så väl i Frankrike som i Tyskland. Men att
balletten likväl alltid utgör ett stort undantag, är hvad vi nu skola
visa.

“Le violon du diable,


ballet fantastique en deux actes et six tableaux
de M. Saint-Léon,
musique de M. Pugni,
décorations de
MM. Despléchin et Thierry.“

Sådant var det program som Armand Cambon, efter sitt inträde i
salongen, köpte för tre sous af en bland de många text- och
program-försäljare, hvilka med ekorrens vighet hoppa på parterren
från ena bänk-karmen till den andra emellan och öfver åskådarnes
hufvud och skuldror, upprepande med de mest skärande nasal-ljud
rubrikerna på hvad de utbjuda. En främling har svårt att vänja sig
vid dessa öfversväfvande figurer, ständigt befarande att bli trampad
på hufvud eller axlar, hvilket likväl högst sällan lärer inträffa,
åtminstone på de bättre teatrarne, dit ingen dylik köpman gerna
släppes, som ej förut öfvat sig på de mindre s. k. folkteatrarne, der
det visserligen kan hända, att en sådan debutant trampar ned några
dussin chevelyrer, innan han hunnit erforderlig färdighet i konsten.
Men dessa chevelyrer tillhöra folk, som icke ens äro rädda om sjelfva
hufvudet, och hvilka för öfrigt hellre underkasta sig ifrågavarande
lilla olägenhet, än de gå miste om programmet för aftonens
spektakel.
Den franske arbetaren är en stor vän af teatern. Han hindras
knappast derifrån af emöten, som annars anses vara hans
hufvudnöje. Han skulle kunna från sin barrikad, så sönderrifven och
blödande som han är, springa ned i en teaterparterr för att, sedan
han några minuter uppfriskat sig med det hjertligaste skratt, störta
ut igen bland farorna och döden samt emottaga den dödande kulan,
ännu i minnet leende åt det infall han hörde från scenen.
Armand Cambon, i fullkomlig motsats till andra arbetare, tycktes
hafva köpt berörde program mera af tankspriddhet eller derför att
det skulle så vara, än af nyfikenhet att lära känna namnen på de uti
balletten uppträdande personerna, ty äfven sedan han bekommit
det, egnade han deråt icke den ringaste uppmärksamhet. Tvärtom
riktades hans blickar uteslutande uppåt första raden, liksom väntade
han att der finna någon bekant.
Men huru kunde väl han, den simple arbetaren, hafva någon
bekant på en plats, som kostade åtta francs? Detta var knappast
troligt, och likväl voro hans blickar på ständig upptäcktsresa,
börjande vid ena avantscenen och, efter att hafva gått hela raden
omkring, slutande vid den andra, hvarefter de åter började och
fortsatte samma färd, utan att ännu hafva fått någon bestämd punkt
att hvila på.
Men detta ströftåg gjordes icke blott en gång eller två: det gjordes
sex gånger och hade just börjat den sjunde, när första anslaget till
introduktionen för balletten gjordes af orkestern. Det var ett
kraftfullt anslag, tack vare pukorna och basunerna. Det förde med
oemotståndlig styrka allas blickar till ridån, allas, utom Cambons, ty
dessa, som nu tycktes hafva funnit hvad de så länge sökt, voro
oskiljaktigt fästade vid några personer, hvilka hade sina platser på
högra sidan af samma rad.
Dessa personer voro bankiren Géronnière, dennes brorsdotter
Adelaïde och hennes fästman hertig Rigobert de Beaudreuil, med
hvilka läsaren redan vid början af denna berättelse gjort en flyktig
bekantskap.
Ifrågavarande personers toalett var naturligtvis den mest utsökta
man kunde se. Den får också icke vara annorlunda, när man intager
en sådan plats inom l’Académie Nationale de Musique. Första radens
galleri är uppbygdt icke blott derför att man derifrån må kunna se
bra, utan äfven för att man der må kunna ses, begapas och
beundras antingen för skönhetens skull eller för toalettens. Det är en
sköldborg, så långt galleriet räcker, af de grannaste och dyrbaraste
solfjädrar, hvilka äro i beständig fläktande rörelse, antingen det är
varmt eller kallt i salongen. Solfjädrar hafva en helt annan kallelse än
den att befordra svalka, såsom de enfaldige föreställa sig. De skola
vara för ansigtet hvad ögonlocken äro för sjelfva ögat, tillslutande sig
emellanåt för att göra blicken desto mera blixtrande, fängslande och
oemotståndlig. Solfjädern aktar sig för att dölja en vacker mun eller
en fint bildad näsa, ty om den betäcker ett ansigte så att endast
ögonen och pannan synas, då kan man vara säker på, att munnen är
för stor eller näsan för trubbig. Derför kan man vara viss om, att en
loge-rad med solfjädrar endast bjuder på sköna partier.
Men solfjädrarne äro också telegrafer för kärleken. Dock hvem kan
läsa deras mystiska chiffer! Försökom likväl! Följom dessa glänsande
blickar, som, ilande midt öfver parterren, dröja vid ansigtet på en
ung elegant man, som, egande sin plats inom samma galleri, ehuru
på motsatt sida, i samma stund riktar dubbelkikaren på henne med
blickarne. Den unge mannen stryker med handen hårluggen djupt
ned öfver pannan. Att det betyder förtviflan, det veta vi alla, ty på
detta sätt förtviflar monsieur Fechter på Théâtre Historique och herr
Dahlqvist på kongl. svenska scenen. Men hvarifrån denna förtviflan?
Jo, damen med de glänsande blickarne fläktar med en hopvikt
solfjäder. En hopvikt solfjäder måste således betyda hopplöshet.
Hastigt ser man den unge mannen stryka hårluggen tillbaka till dess
förra plats, hvarför? Jo, den sköna har nu till hälften utvecklat den
granna solfjädern. En till hälften utvecklad solfjäder betyder således
hopp. Den unge mannen vidrör ånyo sina lockar, men stryker dem
alla uppåt hjessan så att pannan blir helt och hållet fri, helt och
hållet glänsande som en halfmåne, och hvarför? Jo, solfjädern, helt
och hållet utvecklad, skimrar nu af regnbågens alla färger, hvilket,
som man vet, betyder seger öfver ovädret och stormen, betyder
lycka och leende himmel. Ack, de solfjädrarne! huru hafva de
någonsin kunnat vara ur modet! Hvem, om ej de, har lärt oss bruket
och nyttan af den elektriska telegrafen?
Men icke är det Armand Cambon som gör dessa anmärkningar, ty
det är blott åt ett enda ställe i den stora lysande salongen han egnar
sin uppmärksamhet; han har blott ögon för den förtjusande
Adelaïde, der hon sitter emellan bankiren och hertigen. Skönheten
borde icke gerna kunna trifvas emellan rikedomen och börden,
emedan den förra är för hård och den sednare för stolt, och begge
äro lika ogenomträngliga. När Afrodite uppstiger, uppstiger hon ur
hafvet, emedan hafvet är fritt. Skyggande för bergens och klippornas
skuggor, vill hon endast omgifvas af lätta moln och blanka vågor, ty
de förra kunna genomglödgas af hennes kinders brand och de
sednare återspegla gudablicken.
Armand tyckte att bankirens arftagerska och hertigens brud
riktade sin kikare ned på parterren och företrädesvis på hans egen
obetydliga person. Borde han röja att han kände igen henne? borde
han helsa på den vackra och rika flickan? Nej, det är brist på takt,
om parterren helsar på första radens galleri. Det är icke “comme il
faut“, om en biljett, som endast kostar fyra francs, helsar på en
biljett som kostar åtta. Adelaïde, hon lika litet som någon annan,
visste ej att Armands biljett kostade till och med tio francs, emedan
fyra ströko i biljettluckan, två för fjerde ledet af queue’n och fyra för
hyran af den garderob, hvaruti arbetaren nu nödgades visa sig, enär
en blus icke passar för de förnämare teatrarnes parterrer.
Valspråket: “liberté, égalité, fraternité“ hade ännu icke ljudit öfver
landet, stod ännu icke måladt på de offentliga byggnaderna. Det ljöd
och målades år 1848. Då omfamnade också kasimirsrocken blusen,
liksom sidenrocken kysste bomullskoftan. Men Judas-kyssar hafva
ingen välsignelse. Nu står visserligen valspråket qvar på murarne.
Men den förnäme och den rike le deråt; arbetaren och den fattige le
också deråt. Man vet att om också ståndsprivilegierna kunna, såsom
äfven skett, falla för en revolution, så stupa fördomarne kanske icke
en gång för tio. De bita sig fast i sederna som rosten i stålet, hvilken
återkommer, hur mycket det sednare än poleras. I Frankrike har man
likväl kommit så långt, att, liksom valspråket kan sitta på muren,
utan att genomtränga den, så sitter också jemlikheten på ytan af
samhällslifvet, utan att ännu förmå genomglödga det. “Monsieur“ är
gemensamt för grefven och kolbäraren, liksom “mademoiselle“ för
prinsessan och grisetten. Artigheten i Frankrike är för dess fördomar
hvad plantan är för klippan. Ännu är hon blott dess prydnad, men låt
henne sitta någon tid, tilldess hon slagit alvarligt rot, och hon skall
en gång spränga den.
Armand kände mycket väl igen Adelaïde; men kände väl hon igen
honom? Han tyckte väl att ett vänligt leende spelade på hennes
vackra läppar, han trodde sig äfven förmärka, att hon hviskade något
till sina begge grannar, och att dessa derefter riktade sina
dubbelkikare ned emot honom; men han hann ej förvissa sig derom,
ty i detsamma uppgick ridån, hvarvid allas blickar flögo mot scenen,
ty nu börjas balletten.
Det är en liten sal i värdshuset Hvita Hästen man först skådar. En
mängd folk, tillhörande en liten by i Brétagne, är samlad derinne.
Man dricker vin, spelar kort och dansar naturligtvis. Menniskan roar
sig ungefär på samma sätt i söder som i nord. Oförmodadt störes
glädjen af ett våldsamt oväder, åska och regn, det förstås. Allmän
oro.
Men oron blir ännu större, när genom den hastigt uppryckta
värdshusdörren en främmande herre inträder, svart som en munk
och blek som döden. Vi skynda genast att presentera honom, ty det
är ingenting att hålla på. Det är ingen annan än djefvulen sjelf som
är ute på resor i det vackra Brétagne, men att han reser i så ruskigt
väder, det är icke hans fel, utan författarens till balletten, monsieur
Saint-Léon’s.
Monsieur Saint-Léon, Fanny Cerritos afundade make, finner det
dramatiska fordra, att hin onde uppträder så der högtidligt under
åska och på detta sätt kostymerad, ehuru man med skäl bör kunna
fråga, huru den kan se ut som en munk, hvilken alltid visar sig
såsom en ljusens ängel, eller huru den kan vara blek som döden,
hvilken sjelf är idel eld och lågor.
Monsieur Saint-Léon är en renhårig katolik och derför har han
gifvit hin onde ett temligen protestantiskt namn, nämligen Matheus
med titel af doktor, ehuru fan vete hvar han blifvit promoverad.
Doktor Matheus anhåller, under åtbörder och miner som alla förstå
eller, rättare sagdt, måste förstå, att det goda folket ville ge sig
tillfreds, emedan han för sin del icke finner sig besvärad af deras
glada tidsfördrif. Hvarför skulle han också ha någonting emot
dansen, vinet och korten? Tvärtom, skulle han ha något att anmärka
mot våra läsareprester, så vore det troligtvis för deras predikningar
mot bruket af dans, vin och kort.
Det enkla anspråkslösa landtfolket, ehuru det aldrig finner sig rätt
väl i förnämt sällskap, fortsätter icke desto mindre sina nöjen ända
till dess doktor Matheus, som ibland har sina underliga infall, tar sig
till att slå omkull vinbägarne och kasta kortlekarne på golfvet. Men
hvem hin kan också med dåligt vin och gamla spelkort! Vinhandlarne
och kortfabrikörerne skola väl också lefva. Doktor Matheus är kanske
blott en profryttare, utskickad i deras intresse.
Emellertid aflägsnar sig landtfolket med några sorgliga “pas“,
hvarefter doktor Matheus blir ensam med värdshusvärdinnan, som
fordrar betalning för det utslagna vinet och de förkastade korten. Hin
är ingen knuslare. Värdinnan blir nöjd och aflägsnar sig för att ställa
ett rum i ordning åt sin oväntade gäst, ett rum med utsigt både åt
gatan och gården. Hin onde slår sig ned på en stol framför brasan,
som naturligtvis är i hans smak. Han synes tankfull, kanske tänker
han på sin mor och sin varma rymliga våning, som han nu måste
försaka. Men hvad gör man icke för den arma mensklighetens skull?
Under tiden inkommer en annan resande, men hvilken visst icke
gör så mycket väsen af sig som den förre, ehuru han är följd af
betjent, bärande i ena handen en nattsäck och i den andra ett
fiolfodral. Den nyankomne är en helt ung man, till yrket fiolspelare.
Hans namn är Urbain. Att han är en rygtbar virtuos, det kan man se
på det dyrbara fiolfodralet och på den ståtlige betjenten. Men
Urbain, ehuru en ganska vacker karl, ser ut i synen som om han
antingen nyss blifvit uthvisslad från konsertsalen, eller fått en sticka i
venstra handens pekfinger, så oumbärligt för greppet på fiolen.
Doktor Matheus, den store menniskokännaren, ser att det står illa
till med den store konstnären, men som han sjelf icke ser det illa, så
lemnar han brasan, och nalkas den unge mannen. Det uppstår snart
ett lifligt samtal emellan de begge resande. Men tunga och läppar
hafva ingen del i denna konversation: den föres uteslutande med
grimaceringar, med händer och fötter. För att förstå hvarandra,
måste man antingen vara ballettmästare eller hexmästare. Lyckligtvis
är detta nu fallet, ty Urbain är ingen annan än monsieur Saint-Léon
sjelf, och hvem doktor Matheus är, det hafva vi redan haft äran
nämna.
Doktor Matheus utsträcker högra armen i flere krumbugter, pekar
än på hufvudet, än på bröstet och än på brasan. Det betyder:
“Monsieur! ni är kär, kär i en ung, skön och rik flicka, som heter
Hélène hvilken är dotter till en grefve som heter de Vardeck.“
Urbain studsar tre steg baklänges mot spiseln och slår sig med
flata handen för pannan. Det betyder: “Hur fan vet ni det?“
Doktor Matheus slår med begge knutna näfvarne i luften, troligtvis
för att föreställa framfötterna på en springande häst, hvarefter han
pekar på dörren. Det betyder: “Fröken Hélène är ute och åker, men
hon kommer snart hit.“
Urbain rusar fram mot doktor Matheus med händerna på hjertat
och blickarne mot taket. Det betyder: “Jag tackar dig, store Gud!“
Nu blir det doktor Mathei tur att också studsa tillbaka och slå sig
för pannan. Det betyder: “Otacksamme! ni misskänner mig! hvarför
såra mitt öra med ett så anstötligt namn!“
I detsamma öppnas dörren, och fröken Hélène, åtföljd af sin fader,
grefve de Vardeck, och sin fästman, baron de Saint-Ibars, inträder.
Hélène (Fanny Cerrito) är förtjusande, och likväl är sylfiden ännu
icke annorlunda klädd än vanliga fröknar, som komma från
regnväder. Hon har lång gredelin sidenrock och en ganska
anspråkslös hatt på hufvudet med en liten hvit slöja, som hon
genast drager från ansigtet. Detta ansigte är icke bländande skönt,
men det har ädla, uttrycksfulla drag, och det ligger en obeskriflig
ljufhet öfver det hela. Man kan, liksom Urbain, blifva förälskad i
henne, utan att, liksom Saint-Léon, behöfva se henne som sylfid.
Grefve de Vardeck nickar åt Urbain och utpekar honom för sin
dotter med en åtbörd, som skall säga: “Se der, Hélène, är den unge
fiolspelaren, som häromdagen spelade på hofvet och vann ett sådant
bifall. Säg honom några artiga ord för hans vackra stråke.“
Hélène kastar en flyktig blick på artisten, men börjar derefter de
allra ljufvaste hviskningar med baron de Saint-Ibars. Hur kan man
också komma ihåg stråkar och deras dragare, när man hviskar med
en fästman, som är baron?
Den arme Urbain är förskräcklig att åse. Hans ögon stirra som en
fånes och han vrider sina händer, så att knäppningarne uti dem
höras genom orkestern. Allt det der betyder: “Ve mig! hon föraktar
mig för det jag spelar fiol; men hvarför skulle jag också bli
fiolspelare! hvarför blef jag ej ryttmästare vid dragonerne, såsom
min moder önskade! ... Ack, om jag hade ett adelsdiplom i min ficka,
i stället för att släpa med mig en hel koffert med öfningar för fiol! ...
Jag skall slita hvarje hårstrå från min hjessa och hvart tagel ur min
stråke, jag skall binda en sten både vid min och fiolens hals samt
dränka oss begge, bara jag väl kommer ut och får se tillräckligt med
vatten!“
Under det Urbain på detta sätt rasar, aflägsnar sig det förnäma
herrskapet, för att intaga sina rum i Hvita Hästen. Men vi glömde
nämna att i sällskap med herrskapet var äfven en andlig man, pater
Anselmo, hvilken, ehuru blott benediktiner-munk, likväl hade så stor
respekt med sig, att doktor Matheus genast vid hans första åsyn
försvann genom en vägg, hvarvid hin onde gynnades af ett ypperligt
maskineri.
Den helige benediktiner-munken, som hyser deltagande för
Urbain, hvilkens hjerta han genomskådat, ger honom en öm, faderlig
blick, lägger händerna i kors öfver sitt bröst och visar derefter sin
unge vän dörren. Detta betyder: “Jag ser hur det är fatt med dig,
stackars barn; men när hörde du att en skön fröken med 100,000
francs i ränta gifte sig med en olycklig, som spelar fiol? ... Följ derför
himmelens råd och res din väg, medan du har något qvar efter sista
konserten ... res hvart du vill, res par exemple till Stockholm: der
kan du möjligtvis få dig en grosshandlardotter och en liten häst, ty
grosshandlarne i Stockholm äro mycket musikaliska och sätta stort
värde på hästar ... Res i himlens namn och passa på medan dörren
är öppen!“
Efter detta visa råd går den helige mannen ut för att, liksom alla
andra, få nattqvarter i Hvita Hästen.
Oaktadt den vises förespeglingar om grosshandlardottern och den
lille hästen, står dock Urbain fast i sitt beslut att dränka sig och
skrider mot dörren med några högtidliga långsamma “pas“, ty man
brådskar icke med sådana saker. Då visar sig ånyo doktor Matheus,
som icke vill att någon menniska skall förgås i vatten, så länge det
finnes ett annat, mindre kyligt element att fly till.
Genom den mest vältaliga mimik lofvar doktor Matheus att hjelpa
den stackars fiolspelaren, lofvar att skaffa en fiol, bättre än alla
cremonesare och brescianare, med ett ord, ett instrument för hvars
verkligt glödande toner till och med en prinsessa kunde dansa.
Hvad skulle den stackars Urbain göra? För att vinna en sådan
flicka som Hélène, är det icke nog med att spela som Paganini: man
måste spela som sjelfvaste fan. Han går in på att emottaga fiolen,
isynnerhet som doktor Matheus icke sätter i fråga någon betalning
genast. Artister äro färdige att köpa hela verlden, allenast de få
anstånd med betalningen.
Nu börjar doktor Matheus en hel hoper hexerier, en faslig mängd
omständigheter, som den lede frestaren visst icke behöfver i det
allmänna lifvet, men som taga sig särdeles väl ut från scenen. Han
drar en trollring omkring den arme konstnären, och det blir en scen
à la Friskytten; åtminstone har monsieur Pugni, kompositören till
ballettmusiken, knipit en och annan godbit ur den bekanta stöpkuls-
scenen, uppspädd med några dissonanser ur helvetes-kören i
Robert. Basunen, fagotten, oboen och piccolan ha ett fanders göra,
under det att fiolerna, mensklighetens representanter, iakttaga ett
evinnerligt tremulando, hvilket också är i sin behöriga ordning.
Skuggor uppstiga ur jorden, förmodligen vålnader af amatörer och
guvernanter, som i lifstiden pinat folk till döds med qvartetter och
romanser. En vålnad bär kärlekens blomma, en annan lagerkransen,
en tredje tjusar-ormen. Dessa trenne ingredienser kastar doktor
Matheus i en kittel eller ångpanna, ty vi förmoda att Belzebub följt
med sin tid och icke varit den ende som förbisett ångkraftens stora
företräde. Slutligen lägger han äfven i pannan Urbains cremonesare,
som gjort sådant uppseende vid hofvet. Allt detta sammanröres,
kokas och förvälles med en påpasslighet och säkerhet, som röja att
det icke är den första soppan doktor Matheus lagar.
Det fanns, med undantag möjligtvis af Armand Cambon, ingen
åskådare i salongen, som icke med odelad uppmärksamhet följde
alla dessa tillredelser, ja sjelfva damerna glömde att fläkta med sina
solfjädrar. Man har ända från barndomen hört så mycket talas om
fan, att man naturligtvis skall vara nyfiken att se huru han kan ha
det hemma hos sig sjelf och huru han sköter om sitt hus, likväl med
vilkor att man sjelf slipper höra till hushållet. Hvad Armand Cambon
beträffade, så hade han delat sina tankar och blickar mellan scenen
och första radens galleri. Mer än en gång hade han sammanblandat
Adelaïde med Hélène, Géronnière med grefve de Vardeck och sig
sjelf med Urbain, ehuru han icke kunde spela fiol. Men det allra
oartigaste var att han i doktor Matheus såg hertig de Beaudreuil och
i denne såg doktor Matheus, hvilket icke är ovanligt af den som
säljer messingskedjor.
Emellertid har doktor Matheus fått soppan färdig, och ur pannan
stiger nu en liten djefvul till instrumentmakare, som bär en fiol i
famnen, hvilken han lemnar sin mästare, och derefter ögonblickligen
försvinner, utan att man ser hur det går till.
Vi tycka just hvad myror våra maskinister i Stockholm, herrar
Forsberg och Motander, skulle få i sitt hufvud, ifall en gång
ifrågavarande ballett med sitt rika sceneri komme att der gifvas!
Urbain, som, under doktor Mathei laborationer, varit ett bestört
vitne till detta satans spektakel, emottager nu ur doktorns händer
instrumentet med tillhörande stråke. Han knäpper på strängarne.
Det är förvånande att instrumentet från afgrunden kan stämma så
väl: det är ju accorder så att man kan smälta dervid. Deremot är det
mindre underligt, om stråken är bättre hartsad än de, som tillverkas
på jorden.
Må ingen tro att, när Urbain stryker på fiolen, någon ledamot af
orkestern står mellan kulisserna och spelar. Monsieur Saint-Léon har
en ballettmästare i sina ben, men i sina fingrar har han en virtuos på
fiol; han kan på samma gång piruettera och drilla. Visserligen är han
ingen Paganini, ingen Ernst; men han har fått Fanny Cerrito att
dansa efter sin fiol, och det är mer än alla konsertsalars applåder.
Emellertid pröfvar Urbain “le violon du diable“ och hans inspiration
ger sig luft i en mängd kromatiska skalor samt i ett staccato, värdigt
vår Nagel. Verkan uteblifver också ej.
Hélène, i en tunn retande nattdrägt, denna likväl mycket kortare
än andra fruntimmers, sväfvar in på tåspetsarne. Ännu dansar hon
ej, men hon står på tåspetsen mycket säkrare än en jätte på sin häl.
Hélène synes förtjust, Urbain hänryckt och fan belåten.
Men den helige Anselmo, ty benediktiner-munkar hafva alltid ett
vaksamt öga på vackra flickor, skyndar in och leder ut den unga
grefvinnan, hvilken, under det hon motsträfvigt aflägsnar sig, låter
falla ett rosenband, som Urbain naturligtvis genast lägger vantarne
på. Sedan den sköna synen försvunnit, går Urbain, med fiolen under
armen, för att lägga sig och drömma de ljufvaste drömmar, efter att
likväl förut hafva tagit ett tacksamt afsked af doktor Matheus med en
åtbörd, som betyder: “God natt, monsieur! jag står hos er i evig
förbindelse.“
Doktor Matheus kan ej önska sig ett bättre godnatt. Han öppnar
munnen till ett rysligt leende, som betyder: “Det går bra! ändå en
strömming!“
Teatern förändras till en lysande sal i slottet Poulighein, der grefve
de Vardeck gifver bal till firandet af sin dotters födelsedag. Den
lycklige baron de Saint-Ibars är naturligtvis der, men äfven den ännu
lyckligare Urbain, som af Hélène fått inträdeskort till balen. Hélène
visar sig klädd till bal, men hvilken baldrägt! den blomstersirade
gaskjorteln räcker knappast till knäna. Hvilken annan fröken skulle
väl våga visa sig i en sådan toalett? Men hur många fröknar hafva
väl sådana fötter och ben att skryta med?
Icke heller nu dansar Fanny Cerrito. Men hon sväfvar omkring,
blickar, rörer armar och hufvud. Hon behöfver ingen tungans tolk.
Ehuru tigande, talar hon ändå ett språk, som är beslägtadt med
högre verldars; och likväl ligger i alla hennes blickar och rörelser
något så naturligt, så menskligt, att det utan svårighet kan fattas
och förstås af den mest okunnige på jorden. Fanny Cerrito skulle
kunnat vara född stum och ändå vara den vältaligaste bland dödliga.
Vi skulle icke vilja höra henne tala, ty det skulle kanske störa vår
illusion.
Alla synas hänförde af henne, alla, utom grefve de Vardeck och
baron de Saint-Ibars, som komma underfund med att det egentligen
är med Urbain hon talar, ehuru denne med sin fiol under armen står
på ett anspråkslöst afstånd. De skaka sina ädla hufvud och slå ihop
sina händer. Det betyder: “Hélène! hvarför tisslar och tasslar du med
fiolmenniskan?“
Hélène förer handen till sitt bröst och bara blickar. Det betyder, nej
det är: “Fader, jag älskar honom och det är han som skall bli min
make!“
Allmän fasa, ty alla hafva hört henne. En döf kan höra hvad ett
sådant öga talar. Baron de Saint-Ibars, fästmannen, svänger sig
omkring på venstra benet och sjunker derefter förkrossad i armarne
på en figurant, som uttrycker sitt deltagande genom att upplyfta
högra foten.
Grefve de Vardeck struttar först “trois pas“ fram och “trois pas“
tillbaka. Derefter vänder han ut och in på ögonen och rifver sig i
håret. Allt det der betyder: “Ve mig! min dotter vurmar på fiol! ...
hon gifter sig med en usling, som lefver af konserter! ... sista
ättlingen af 800 anor skall kanske i en framtid lära barn spela för
åtta sous i timmen! ... en fiolstråke i min stamtafla, o mina fäders
gud!“
Grefve de Vardeck rätar upp sin sammanfallna gestalt, vinkar åt
betjenterne och pekar på Urbain, som med framsträckt fiol och
upplyftad stråke, lik en riddare med sköld och svärd, är färdig att
försvara sin brud mot både gamla och nya verlden. Betjenterne
skynda fram till Urbain; men i stället för att servera honom med
glace och lemonad, fatta de tag uti fiolspelaren och kasta honom
utför trapporna med den satans fiolen efter.
Hélène bleknar, ja hon bleknar verkligen; hennes ögon fuktas, ja
man ser perlkransen kring dessa sköna ögon på samma gång
återspeglande förtrytelsens och smärtans trognaste bilder. Hon rör
sig, utan att man kan säga om hon vidrör golfvet, hon försvinner och
ridån faller öfver första akten. Men ännu ser man, huru Hélène tar
afsked af den borg, som sett henne födas, af den far, som vårdat
hennes barndom, af det folk, hvilkas prydnad hon var. Man ser hur
hon försvinner, för att följa hjertats bud, för att uppbygga kärlekens
hydda på okänd strand. Så förgå några minuter innan bifallsstormen
bryter löst, och när den börjat, räcker den längre än några minuter.
Fanny Cerrito inropas och öfverhöljes med blommor.
Fanny Cerrito borde icke kunna behöfva den beryktade “la claque“,
hvilken, till föga heder för det mest upplysta folk och dess många
utmärkta konstnärer, ännu fortfar att drifva sitt ofog på samtlige
teatrarnes parterrer. Det finnes personer, som genom denna industri
samlat sig mer än vanlig förmögenhet. En kort beskrifning deraf är
kanske på sitt ställe. En teater-direktion utser af många sökande den
till klackör-chef, som jemte nödigt vigilerings-snille besitter förmåga
att beherska och styra andra, med ett ord, göra sig respekterad.
Denne erhåller en betydligare årlig lön, tillförsäkrad af direktionen,
och förfogar derjemte öfver ett visst antal parterr-biljetter för hvarje
spektakel-afton, och dem han får använda huru honom för godt
synes. På operan har klackör-chefen för närvarande omkring fyrtio
biljetter, men det händer understundom att han eger hela parterren
så när som på tio till femton biljetter, hvilka för syns skull säljas i
biljettluckan. Chefen utväljer till sitt biträde tvänne löjtnanter, dem
han sjelf aflönar, samt en kärntrupp af mellan trettio och fyrtio man,
tillhörande det slags menniskor, som icke veta hvar de skola tillbringa
sina aftnar och naturligtvis hylla sig till den, som består dem fri
spektakel-biljett, fria ljus och fri värma för qvällen. Denna kärntrupp,
som alltid måste vara marschfärdig, intager midten af parterren med
sin chef i centern och löjtnanterne på flyglarne. När chefen, som för
detta ändamål tagit order af teater-direktionen eller artisterne,
klappar och ropar bravo, klappar och ropar också kärntruppen.
Löjtnanterne se noga efter att ingen hand är overksam och ingen
mun tillsluten. Det händer mycket ofta, isynnerhet vid
representationerna af gamla teaterstycken, att hela kärntruppen
sofver i god ro; men en minut innan applåden skall gifvas, stöta
chefen och löjtnanterne med armbågarne till sina grannar, hvilka i
sin ordning knuffa till sina närmaste, så att, när signalen gifves, alla
äro färdiga till tjenstgöring, hvarefter de obesväradt få tillsluta sina
ögon och nicka åt konsten tilldess nästa armbåge kommer. Chefen
och löjtnanterne, hvilka hafva så betaldt att de kunna sofva om
nätterna, äro naturligtvis alltid vakna och påpassliga. Dessutom
finnas extra klackörer, hvilka, efter skedd anmälan, antagas af
chefen vid utomordentliga tillfällen; men dessa få ej hela sin biljett
gratis. De få t. ex. en parterr-biljett, som annars kostar fyra francs,
för två med skyldighet att klappa och ropa för resten. Desse stå
äfven under chefens och löjtnanternes befäl. Slutligen finnes en
tredje klass, kallad “les solitaires“, sådana som, i stället för att köpa
sin biljett i luckan, direkte vända sig till berörde chef, som skaffar
dem biljetter till hvilken plats som helst i salongen för tjugo till trettio
procent billigare pris. De stå icke under chefens eller löjtnanternes
befäl; men de emottaga med biljetten en vänlig påminnelse om
tacksamhetens heliga känsla, lämpad efter de tjugo till trettio
procent, som blifvit rabatterade. Det är isynnerhet på
biljettförsäljningen som chefen förtjenar, ty han betalar naturligtvis
ingenting åt teater-direktionen, som, i fall pjesen ej på annat sätt
kan bereda fullt hus, gerna ser att raderna äro fulla. Men han
förtjenar äfven om pjesen i och för sin egen förtjenst ger fulla hus,
ty då behöfver icke “la claque“ vara så stor och då kan han för
samma pris som i biljettluckan sälja sina lediga platser. För någon tid
sedan begrofs i Paris en klackör-chef, som lemnat efter sig ett kapital
med 80,000 francs i ränta. Han följdes till grafven af en oräknelig
folkskara, äldre och yngre klackörer naturligtvis, men äfven flere
författare och skådespelare, hvilka alla ansågo sig stå i förbindelse
hos den döde. En författare höll det vackraste tal vid grafven.
Åhörarne applåderade, värdiga sitt rykte, utan att afvakta signalen
från likkistan, hvilket frivilliga dévouement ansågs hedrande för den
salige döde. Författaren till denna berättelse språkade en gång med
en ordinarie klackör rätt alvarsamt om saken. “Monsieur“, sade han,
“la claque är nödvändigare för teatern än puffarne i tidningarne och
ekläreringen i salongen. Den stora massan af publiken är okunnig i
den sköna konsten. Hvem är det som visar denna massa det skönas
momenter och ger henne tillfälle att uppskatta och belöna dem, om
ej la claque? För öfrigt kan samma publik vara olika lifvad. Den kan
ena aftonen med köld emottaga samma stycke och samme konstnär
som den jublat åt den föregående qvällen, ehuru stycket är lika godt
och utföres lika väl. Hvem är det då som på den kalla aftonen gör
både konsten och konstnären rättvisa, om ej la claque? Allmänheten
är orimlig äfven i sitt bifall, ty hur ofta afbryter den ej med sina
handklappningar en konstnär midt i hans skönaste prestationer!
hvem är det då som nedtystar publiken, till dess arian eller
deklamationen är slutad, om ej la claque? Menniskan är alltid ett
barn, som behöfver ledas och styras, i skolan såväl som på
embetsrummet, i kasernen så väl som i teater-salongen.“ —
Sofisterne äro icke de lättaste att disputera omkull, helst när de tala
franska. Vi glömde omtala, att författare, kompositörer och artister
af alla slag dessutom smörja “la claque“ både med biljetter och
presenter. Victor Hugo och Scribe, Meyerbeer och Auber, Rubini och
Malibran hafva skattat deråt lika ifrigt som många andra. Fanny
Cerrito försakar icke heller “la claque“, men det är hennes eget fel
om klackörerne, sjelfve hänförde, glömde att genast applådera.
Armand Cambon hade med förargelse sett huru grefvens
domestiker kastade Urbain utför trapporna och med förakt följt
denne, som lät sig utkastas. “En fiolspelare är och blir ändå alltid en
fiolspelare“ hade han mumlat för sig sjelf; “han har valkar på
fingerspetsarne, men ingen muskel i sin arm ... Jag skulle ha spelat
en annan fiol, jag, om jag varit i Urbains ställe.“
Men snart var han, liksom alla andra, hänförd af Fanny Cerritos
tjusningskraft och vaknade först vid bifallsstormen. Då höjde han
sina ögon upp till första radens högra galleri, kanske för att be
bankirens brorsdotter göra detsamma för Armand Cambon som
grefvens dotter gjort för en stackare, som låter kasta sig utför
trappan. Då blef han varse att både Adelaïde och hennes begge
kavaljerer i detsamma helsade på någon, som måste hafva sin plats
midt emot. Han följde riktningen af deras blickar, och ehuru han ej
helsade liksom de, blef han kanske mera öfverraskad än någon af
dem.
Han upptäckte nämligen att fyra platser på venstra sidan af första
radens galleri, som förut varit lediga, nu blifvit intagna af tvänne
fruntimmer och tvänne kavaljerer. Af dessa fyra personer kände han

You might also like