diff options
author | Jovina | 2012-02-01 14:12:28 +0530 |
---|---|---|
committer | Jovina | 2012-02-01 14:12:28 +0530 |
commit | 985adfa4f8a8b9cfba2b0a573dadc77283651957 (patch) | |
tree | b7ca2b96dc786f606cc0bda005a575b0b0d3f7b6 | |
parent | 8178aca3340078fb99d8f8c3c9cda78abeac824b (diff) | |
download | sees-985adfa4f8a8b9cfba2b0a573dadc77283651957.tar.gz sees-985adfa4f8a8b9cfba2b0a573dadc77283651957.tar.bz2 sees-985adfa4f8a8b9cfba2b0a573dadc77283651957.zip |
Removed ult parts 1-8 and pushed to other repo.
38 files changed, 0 insertions, 8218 deletions
diff --git a/ult/ult_2/script.rst b/ult/ult_2/script.rst deleted file mode 100644 index 21db359..0000000 --- a/ult/ult_2/script.rst +++ /dev/null @@ -1,492 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. Copy files from one location to another. - .. 2. Remove files and directories. - .. 3. Change permissions and ownership of files. - .. 4. Navigate through directories and files. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 - - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 2'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Copy files from one location to another. - #. Remove files and directories. - #. Change permissions and ownership of files. - #. Navigate through directories and files. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial,we would suggest you to complete the -tutorial on "Using Linux tools - Part 1". - -.. R4 - -Let us start with the concept of basic file handling. -Let's begin with removing files. -The ``rm`` command is used to delete files. - -Here's example to remove a file named "foo" from the directory "sdes", - -.. L4 - -{{{ Navigate to /home/user/sdes/ }}} -:: - - rm foo - ls - -.. R5 - -Note that, as such, ``rm`` works only for files and not for directories. -For instance, if you try to remove a directory named ``bar`` using, - -.. L5 -:: - - rm bar - -.. R6 - -we get an error saying, cannot remove `bar`: Is a directory. But ``rm`` -takes additional arguments which can be used to remove a directory and all -of it's content, including sub-directories.We use the ``-r`` option. - -.. L6 -:: - - rm -r bar - ls - -.. R7 - -It removes the directory ``bar`` and all of it's content including -sub-directories, recursively. The ``-r`` stands for recursive. - -Let's say we wish to copy a file, ``foo`` from ``sdes/linux-tools/scripts``, -which is the source location to the target location ``sees/linux-tools``, -how would we do it? - -.. L7 -:: - - pwd - cp linux-tools/scripts/foo linux-tools/ - -.. R8 - -Note, that we haven't changed the name of the file name at the target -location. We could have done that by specifying a new filename at the -target location,as, - -.. L8 -:: - - cp linux-tools/scripts/foo linux-tools/bar - -.. R9 - -This copies the file ``foo`` to the new location, but with the new name, -``bar``. - -But, what would have happened if we had a file named ``bar`` already at the -new location? Let's try doing the copy again, and see what happens. - -.. L9 -:: - - cp linux-tools/scripts/foo linux-tools/bar - -.. R10 - -We get no error message, what happened? ``cp`` actually overwrites files. -In this case, it's not a problem since, we just re-copied the same content, -but in general it could be a problem, and we could lose data. To prevent -this, we use the ``-i`` flag with ``cp``. - -.. L10 -:: - - cp -i linux-tools/scripts/foo linux-tools/bar - -.. R11 - -We are now prompted, whether the file should be over-written. To over-write -say ``y``, else say ``n``. - -Now, let's try to copy the directory ``sdes`` to a new directory called -``course``. How do we do it? - -.. L11 -:: - - cd /home/user - cp -i sdes course - -.. R12 - -``cp`` refuses to copy the directory ``sdes``. We use the option ``-r`` -(recursive) to copy the directory and all it's content. - -.. L12 -:: - - cd /home/user - cp -ir sdes course - ls - -.. R13 - -We see that a new directory named course has been created with all it's -contents. - -Now, If we want to move files, instead of copying them, one way to go about -it, would be to ``cp`` the file to the new location and ``rm`` the old -file. Instead, you can make use of only one command which can do this task at -one go. The ``mv`` command can move files or directories. It also takes -the ``-i`` option to prompt before overwriting. - -.. L14 -:: - - cd /home/user - mv -i sdes/ course/ - -.. R15 - -Let us understand what exactly happened when we used the ``mv`` command - -.. L15 -:: - - ls course - -.. R16 - -We can see that the ``sdes`` directory has been inserted as sub-directory -of the ``course`` directory. The move command doesn't over-write -directories, but the ``-i`` option is useful when moving files around. - -A common way to rename files (or directories), is to copy a file (or a -directory) to the same location, with a new name. - -.. L16 -:: - - mv sdes/linux-tools sdes/linux - -.. R17 - -It renames the ``linux-tools`` directory to just ``linux`` - -While moving around our files and directories, we have been careful to stay -within the ``/home/`` directory, but other than that there are many other -directories too. Let us take this opportunity to understand a few things -about the linux file hierarchy and file permissions. - -.. L17 -:: - - cd / - -{{{ Switch to slide, Linux File Hierarchy }}} - -.. R18 - -The ``/`` directory is called the root directory. All the files and -directories, (even if they are on different physical devices) appear as -sub-directories of the root directory. - -.. L18 - -{{{ Switch to terminal }}} -:: - - ls - -.. R19 - -You can see the various directories present at the top most level. - -.. L19 - -{{{ Pause for sometime and then continue }}} - -.. R20 - -For more information, it is recommended that you look at the ``man`` page -of ``hier``. - -.. L20 -:: - - man hier - -{{{ Pause for sometime and then hit q }}} - -.. R21 - -Let us now look at file permissions. Linux is a multi-user environment and -allows users to set permissions to their files to allow only a set of -people to read or write it. Similarly, it is not "safe" to allow system -files to be edited by any user. All this access control is possible in -Linux. - -To start, in the root directory, say, - -.. L21 -:: - - ls -l - -.. R22 - -You again get a list of all the sub-directories, but this time with a lot -of additional information. Let us try and understand what this output says -Consider the first line of the output, - -.. L22 - -{{{ Highlight the required portions accordingly while narrating }}} - -.. R23 - -The first column denotes the type and the access permissions of the file. -The second is the number of links. The third and fourth are the owner and -group of the file. The next field is the size of the file in bytes. The -next field is the date and time of modification and the last column is the -file name. -We shall look at the permissions of the file now, ie., the first column of -the output. - -The first character in the first column specifies, whether the item is a -file or a directory. Files have a ``-`` as the first character and -directories have a ``d``. - -The next 9 characters define the access permissions of the file. Before -looking at it, we need to briefly study groups and users and ownership. - -We already know what the first character in the first column (in the output -of ``ls -l``) is for. The rest of the 9 characters are actually sets of 3 -characters of each. The first set of 3 characters defines the permissions -of the user, the next 3 is for the group and the last three is for others. -Based on the values of these characters, access is provided or denied to -files, to each of the users. - -So, what does each of the three characters stand for? Let's suppose we are -looking at the set, corresponding to the permissions of the user. In the -three characters, the first character can either be an ``r`` or a ``-``. -Which means, the user can either have the permissions to read the file or -not. If the character is ``r``, then the user has the permissions to read -the file, else not. Similarly, ``w`` stands for write permissions and -decides whether the user is allowed to write to the file. ``x`` stands for -execute permissions. You cannot execute a file, if you do not have the -permissions to execute it. - -Similarly, the next set of characters decides the same permissions for the -members of the group, that the file is associated with. The last set of -characters defines these permissions for the users, who are neither owners -of the file nor in the group, with which the file is associated. - -Now, it's not as if these permissions cannot be changed. If you are the -owner of a file, you can change the permissions of a file, using the -``chmod`` command. - -.. L23 - -.. R24 - -Let's say, we wish to give the execute permissions for a file, to both the -user and the group, how do we go about doing it? To be more explicit, given -a file ``foo.sh``, with the permissions flags as ``-rw-r--r--``, change it -to ``-rwxr-xr--``. - -The following command does it for us, - -.. L24 -:: - - chmod ug+x foo.sh - ls -l foo.sh - -.. R25 - -As you can see, the permissions have been set to the required value. But -what did we exactly do? Let us try and understand. - -.. L25 - -{{{ Switch to slide,Symbolic modes }}} - -.. R26 - -In the command, the parameter ``ug+x`` is the mode parameter to the -``chmod`` command. It specifies the changes that need to be made to the -permissions of the file ``foo.sh``. -The ``u`` and ``g`` stand for the user and group, respectively. The ``x`` -stands for the execute permission and ``+`` stands for adding the -specified permission. So, essentially, we are asking ``chmod`` command to -add the execute permission for the user and group. The permission of others -will remain unchanged. - -So, if we wished to add the execute permission to all the users, instead of -adding it to just the user and group, we would have instead said - -.. L26 -:: - - chmod a+x foo.sh - -.. R27 - -or - -.. L27 -:: - - chmod ugo+x foo.sh - -.. R28 - -Pause the video here, try out the following exercise and resume the video. - -.. L28 - -.. L29 - -{{{ Show slide with exercise 1 }}} - -.. R29 - -Change the permissions of a directory along with all of its -sub-directories and files. - -.. L30 - -{{{ Show slide with solution 1 }}} - -.. R30 - -To change the permissions of a directory along with all of its -sub-directories and files, recursively, we use the ``-R`` option -with the chmod command as shown - - chmod go-r -R <directory name>/ - -.. R31 - -It is important to note that the permissions of a file can only be changed -by a user who is the owner of a file or the superuser. - -What if we wish to change the ownership of a file? The ``chown`` command is -used to change the owner and group. -By default, the owner of a file (or directory) is the user that -created it. The group is a set of users that share the same access -permissions i.e., read, write and execute. -For instance, to change the user and the group of the file -``wonderland.txt`` to ``alice`` and ``users``, respectively, we say. - -.. L31 -:: - - chown fossee:users wonderland.txt - -.. R32 - -We get an error saying, the operation is not permitted. -We have attempted to change the ownership of a file that we own, to a -different user. Logically, this shouldn't be possible, because, this can -lead to problems, in a multi-user system. -Only the superuser is allowed to change the ownership of a file from one -user to another. The superuser or the ``root`` user is the only user -empowered to a certain set of tasks and hence is called the superuser. The -command above would have worked, if you did login as the superuser and -then changed the ownership of the file. - -.. L32 - -.. L33 - -{{{ Show summary slide }}} - -.. R33 - -This brings us to the end of the tutorial.In this tutorial, we have learnt to, - - 1. Copy and move files from one location to another, using the ``cp`` - and ``mv`` commands respectively. - #. Remove files using ``rm`` command. - #. Understand the Linux file hierarchy. - #. Change permissions and ownership of files, using the ``chmod`` - and ``chown`` commands respectively. - -.. L34 - -{{{ Show self assessment questions slide }}} - -.. R34 - -Here are some self assessment questions for you to solve - -1. How to copy all the contents of one folder into another? - -2. How will you rename the file wonderland.txt to alice.txt using the - commands learnt so far? - -.. L35 - -{{{ Solution of self assessment questions on slide }}} - -.. R35 - -And the answers, - -1. We use the ``cp`` command along with a star sign. The star denotes that - it will copy all the files of folder 1 to folder 2. -:: - - cp folder1/* folder2 - -2. To rename a file, we use the ``mv`` command as, -:: - - mv wonderland.txt alice.txt - -.. L36 - -{{{ Show the Thankyou slide }}} - -.. R36 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - diff --git a/ult/ult_2/ult2.tex b/ult/ult_2/ult2.tex deleted file mode 100644 index 9fb0e7e..0000000 --- a/ult/ult_2/ult2.tex +++ /dev/null @@ -1,200 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools\\Part II} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Copy files from one location to another. -\item Remove files and directories. -\item Change permissions and ownership of files. -\item Navigate through directories and files. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\end{itemize} -\end{frame} - - -\begin{frame} - \frametitle{Linux File Hierarchy} - \begin{itemize} - \item \texttt{/} is called the root directory - \item The root directory is the topmost level of the hierarchy - \item For details \texttt{man hier} - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Symbolic modes} - \begin{small} - \begin{center} - \begin{tabular}{lll} - Reference & Class & Description \\ - \hline - u & user & the owner of the file \\ - g & group & users who are members of the file's group \\ - o & others & users who are not hte owner of the file or members of the group \\ - a & all & all three of the above; is the same as \emph{ugo} \\ - \end{tabular} - \end{center} - - \begin{center} - \begin{tabular}{ll} - Operator & Description \\ - \hline - + & adds the specified modes to the specified classes \\ - - & removes the specified modes from the specified classes \\ - = & the modes specified are to be made the exact modes for the specified classes \\ - \end{tabular} - \end{center} - - \begin{center} - \begin{tabular}{lll} - Mode & Name & Description \\ - \hline - r & read & read a file or list a directory's contents \\ - w & write & write to a file or directory \\ - x & execute & execute a file or recurse a directory tree \\ - \end{tabular} - \end{center} - \end{small} -\end{frame} - - -\begin{frame} - \frametitle{Exercise 1} - \begin{itemize} - \item Change the permissions of a directory along with all of its - sub-directories and files. - \end{itemize} -\end{frame} - -\begin{frame} - \frametitle{Solution 1} - \begin{itemize} - \item chmod go-r -R <directory name>/ - \end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Copy and move files from one location to another, using the ``cp'' - and ``mv'' commands respectively. -\item Remove files using ``rm`` command. -\item Understand the Linux file hierarchy. -\item Change permissions and ownership of files, using the ``chmod'' - and ``chown'' commands respectively. -\end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item How to copy all the contents of one folder into another? -\vspace{15pt} -\item How will you rename the file wonderland.txt to alice.txt using the - commands learnt so far? -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item cp folder1/* folder2 -\vspace{15pt} -\item mv wonderland.txt alice.txt -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - diff --git a/ult/ult_3/bar.txt b/ult/ult_3/bar.txt deleted file mode 100644 index c0a5b08..0000000 --- a/ult/ult_3/bar.txt +++ /dev/null @@ -1,8 +0,0 @@ -"Bar" as the second term in the series may have developed in -electronics, where a digital signal which is considered "on" with a -negative or zero-voltage condition is identified with a horizontal bar -over the signal label; the notation for an inverted signal foo would -then be pronounced "foo bar". Bar may also be read as beyond all -repair, which is how it is used in the acronym FUBAR. - -source: wikipedia diff --git a/ult/ult_3/foo.txt b/ult/ult_3/foo.txt deleted file mode 100644 index 1fe9426..0000000 --- a/ult/ult_3/foo.txt +++ /dev/null @@ -1,9 +0,0 @@ -FOO is an abbreviation of Forward Observation Officer, a British Army -term in use as early as the First World War. The etymology of foo is -explored in the Internet Engineering Task Force (IETF) Request for -Comments 3092, which notes usage of foo in 1930s cartoons including -The Daffy Doc (with Daffy Duck) and comic strips, especially Smokey -Stover and Pogo. From there the term migrated into military slang, -where it merged with FUBAR. - -source: wikipedia diff --git a/ult/ult_3/marks.txt b/ult/ult_3/marks.txt deleted file mode 100644 index f97b743..0000000 --- a/ult/ult_3/marks.txt +++ /dev/null @@ -1,5 +0,0 @@ -89 92 85 -98 47 67 -67 82 76 -78 97 60 -67 68 69 diff --git a/ult/ult_3/script.rst b/ult/ult_3/script.rst deleted file mode 100644 index adc24b8..0000000 --- a/ult/ult_3/script.rst +++ /dev/null @@ -1,375 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. Display the contents of files. - .. 2. Read only parts of a file. - .. 3. Look at the statistical information of a file. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 3'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Display the contents of files. - #. Read only parts of a file. - #. Look at the statistical information of a file. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial,we would suggest you to complete the -tutorial on "Using Linux tools - Part 1" and "Using Linux tools - Part 2". - -.. R4 - -Let us begin with how to read a while as a whole. -The ``cat`` command is the most commonly used command to display the -contents of files. To view the contents of a file, say, ``foo.txt``, we -simply say, - -.. L4 -:: - - cat foo.txt - -.. R5 - -You can see the contents of the file on the terminal. - -The cat command could also be used to concatenate the text of multiple -files. Say, we have two files,``foo.txt`` and ``bar.txt``, - -.. L5 -:: - - cat foo.txt bar.txt - -.. R6 - -It shows the output of both the files concatenated on the standard output. -But if we had a long file,the output of ``cat`` command is not convenient -to read. -Let's look at the ``less`` command which turns out to be more useful in -such a case. - -``less `` allows you to view the contents of a text file one screen at a -time. - -.. L6 -:: - - less wonderland.txt - -.. R7 - -This shows us the file, one screen at a time. - -.. L7 - -.. L8 - -{{{ Show slide with, less }}} - -.. R8 - -``less`` has a list of commands that it allows you to use, once you have -started viewing a file. A few of the common ones have been listed below. - - * q: Quit. - - * [Arrows]/[Page Up]/[Page Down]/[Home]/[End]: Navigation. - - * ng: Jump to line number n. Default is the start of the file. - - * /pattern: Search for pattern. Regular expressions can be used. - - * h: Help. - -.. R9 - -Let us move ahead with the topic. Often we just would like to get some -statistical information about the file, rather than viewing the contents -of the file. The ``wc`` command prints these details for a file. - -.. L9 -:: - - wc wonderland.txt - -.. L10 - -{{{ Highlight the required portions accordingly while narrating }}} - -.. R10 - -As you can see, we get some information about the file. -The first number is the number of lines, the second is the number of words -and the third is the number of characters in the file. - -.. R11 - -Let us now look at a couple of commands that let you see parts of files, -instead of the whole file. The ``head`` and ``tail`` commands let you see -parts of files, as their names suggest, the start and the end of a file, -respectively. - -.. L11 -:: - - head wonderland.txt - -.. R12 - -It prints only the first 10 lines of the file. Similarly tail will print the -last 10 lines of the file. If we wish to change the number of lines that we -wish to view, we use the option ``-n``. - -.. L12 -:: - - head -n 1 wonderland.txt - -.. R13 - -It prints only the first line of the file. Similarly, we could print only -the last line of the file. - -The most common use of the tail command is to monitor a continuously -changing file, for instance a log file. Say you have a process running, -which is continuously logging it's information to a file, for instance the -logs of the system messages. - -.. L13 -:: - - tail -f /var/log/dmesg - -.. R14 - -This will show the last 10 lines of the file as expected, but along with -that, it starts monitoring the file. Any new lines added at the end of the -file, will be shown. To interrupt tail, while it is monitoring, hit -``Ctrl-C``. which will stop any process that is running from your -current shell. - -We looked at a couple of functions that allowed us to view a part of a file, -line-wise. We shall now look at a couple of commands that will allow us to look -at only certain sections of each line of a file and merge those parts. -Let's take the ``/etc/passwd`` file as our example file. It contains -information about each user of the system. - -.. L14 -:: - - cat /etc/passwd - -.. R15 - -In the output, let us look at only the first, fifth, sixth and the last -columns.The first column is the user name, the fifth column is the user info, -the sixth column is the home folder and the last column is the path of the -shell program that the user uses. -Let's say we wish to look at only the user names of all the users in the -file, how do we do it? - -.. L15 -:: - - cut -d : -f 1 /etc/passwd - -.. R16 - -It gives us the required output. Let us understand this operation in detail. -The first option ``-d`` specifies the delimiter between the various fields in -the file, in this case it is the semicolon. If no delimiter is specified, -the TAB character is assumed to be the delimiter. The ``-f`` option specifies, -the field number that we want to choose. -You can print multiple fields, by separating the field numbers with a -comma. - -Pause the video here, try out the following exercise and resume the video. - -.. L16 - -.. L17 - -{{{ Show slide with exercise 3 }}} - -.. R17 - -Print only the first, fifth and the seventh fields of the file ``/etc/passwd``. - -.. R18 - -Switch to the terminal for solution - -.. L18 - -{{{ continue from paused state }}} -{{{ Switch to the terminal }}} - -:: - - cut -d : -f 1,5,7 /etc/passwd - -.. R19 - -We get the correct output. -Instead of choosing by fields, ``cut`` also allows us to choose on the -basis of characters or bytes. For instance, we could get the first 4 -characters of all the entries of the file, ``/etc/passwd`` by saying, - -.. L19 -:: - - cut -c 1-4 /etc/passwd - -.. R20 - -The end limits of the ranges can take sensible default values, if they are -left out. For example, - -.. L20 -:: - - cut -c -4 /etc/passwd - -.. R21 - -It gives the same output as before. If the start position has not been -specified, it is assumed to be the start of the line. Similarly if the end -position is not specified, it is assumed to be the end of the line. - -.. L21 -:: - - cut -c 10- /etc/passwd - -.. R22 - -It prints all the characters from the 10th character up to the end of the -line. -Let us now solve an inverse problem. Let's say we have two columns of data -in two different files, and we wish to view them side by side. - -.. L22 - -.. L23 - -{{{ Show slide with, paste }}} - -.. R23 - -For instance, given a file containing the names of students in a file, -students.txt, and another file with the marks of the students,marks.txt, - -.. R24 - -we wish to view the contents, side by side. The ``paste`` command allows -us to do that. - -.. L24 -:: - - paste students.txt marks.txt - paste -s students.txt marks.txt - -.. R25 - -The first command gives us the output of the two files, next to each other -and the second command gives us the output one below the other. - -Now, this problem is a bit unrealistic because, we wouldn't have the marks -of students in a file, without any information about the student to which -they belong. Let's say our marks file had the first column as the roll -number of the student, followed by the marks of the students. What would we -then do, to get the same output that we got before? - -Essentially we need to use both, the ``cut`` and ``paste`` commands, but -how do we do that? That brings us to the concept of Redirection and Piping -which is covered in the next spoken tutorial. - -.. L25 - -.. L26 - -{{{ Switch to summary slide }}} - -.. R26 - -This brings us to the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Display the contents of files using the ``cat`` command. - #. View the contents of a file one screen at a time using the - ``less`` command. - #. Display specific contents of file using the ``head`` and - ``tail`` commands. - #. Use the ``cut``, ``paste`` and ``wc`` commands. - -.. L27 - -{{{ Show self assessment questions slide }}} - -.. R27 - -Here are some self assessment questions for you to solve - -1. How to view lines from 1 to 15 in wonderland.txt? - -2. In ``cut`` command, how to specify space as the delimiter? - -.. L28 - -{{{ Solution of self assessment questions on slide }}} - -.. R28 - -And the answers, - -1. We can use the head command as, -:: - - head -15 wonderland.txt - -2. We use the -d option with the command as, -:: - - cut -d " " <filename> - -.. L29 - -{{{ Show the Thank you slide }}} - -.. R29 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - diff --git a/ult/ult_3/students.txt b/ult/ult_3/students.txt deleted file mode 100644 index ddacd6b..0000000 --- a/ult/ult_3/students.txt +++ /dev/null @@ -1,5 +0,0 @@ -Hussain -Dilbert -Anne -Raul -Sven diff --git a/ult/ult_3/ult3.tex b/ult/ult_3/ult3.tex deleted file mode 100644 index 2ece836..0000000 --- a/ult/ult_3/ult3.tex +++ /dev/null @@ -1,170 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} - -\textcolor{blue}{\huge Using Linux Tools\\Part III} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Display the contents of files. -\item Read only parts of a file. -\item Look at the statistical information of a file. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{less}} - \begin{itemize} - \item q: Quit - \item Arrows/Page Up/Page Down/Home/End: Navigation - \item ng: Jump to line number n - \item /pattern: Search. Regular expressions can be used - \item h: Help - \end{itemize} -\end{frame} - -\begin{frame} - \frametitle{Exercise 1} - \begin{itemize} - \item Print only the first, fifth and the seventh fields of the file ``/etc/passwd''. - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{paste}} - \begin{center} - \begin{tabular}{l|l} - \verb~students.txt~ & \verb~marks.txt~ \\ - Hussain & 89 92 85 \\ - Dilbert & 98 47 67 \\ - Anne & 67 82 76 \\ - Raul & 78 97 60 \\ - Sven & 67 68 69 \\ - \end{tabular} - \end{center} -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Display the contents of files using the ``cat'' command. -\item View the contents of a file one screen at a time using the - ``less'' command. -\item Display specific contents of file using the ``head'' and - ``tail'' commands. -\item Use the ``cut'', ``paste'' and ``wc'' commands. -\end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item How to view lines from 1 to 15 in wonderland.txt ? -\vspace{15pt} -\item In ``cut'' command, how to specify space as the delimiter ? -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item \$ head -15 wonderland.txt -\vspace{15pt} -\item \$ cut -d " " <filename> -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - diff --git a/ult/ult_3/wonderland.txt b/ult/ult_3/wonderland.txt deleted file mode 100644 index 0f62284..0000000 --- a/ult/ult_3/wonderland.txt +++ /dev/null @@ -1,4047 +0,0 @@ -Project Gutenberg's Alice's Adventures in Wonderland, by Lewis Carroll
-
-This eBook is for the use of anyone anywhere at no cost and with
-almost no restrictions whatsoever. You may copy it, give it away or
-re-use it under the terms of the Project Gutenberg License included
-with this eBook or online at www.gutenberg.net
-
-
-Title: Alice's Adventures in Wonderland
- Illustrated by Arthur Rackham. With a Proem by Austin Dobson
-
-Author: Lewis Carroll
-
-Illustrator: Arthur Rackham
-
-Release Date: May 19, 2009 [EBook #28885]
-
-Language: English
-
-Character set encoding: ISO-8859-1
-
-*** START OF THIS PROJECT GUTENBERG EBOOK ALICE'S ADVENTURES IN WONDERLAND ***
-
-
-
-
-Produced by Jana Srna, Emmy and the Online Distributed
-Proofreading Team at http://www.pgdp.net (This file was
-produced from images generously made available by the
-University of Florida Digital Collections.)
-
-
-
-
-
-
-
-
-
-
-
-ALICE'S ADVENTURES IN WONDERLAND
-
-[Illustration: "Alice"]
-
-[Illustration:
-
- ALICE'S·ADVENTURES
- IN·WONDERLAND
- BY·LEWIS·CARROLL
- ILLUSTRATED·BY
- ARTHUR·RACKHAM
-
- WITH A PROEM BY AUSTIN DOBSON
-
- LONDON·WILLIAM·HEINEMANN
- NEW·YORK·DOUBLEDAY·PAGE·&·Co]
-
- PRINTED IN ENGLAND
-
- _'Tis two score years since CARROLL'S art,
- With topsy-turvy magic,
- Sent ALICE wondering through a part
- Half-comic and half-tragic._
-
- _Enchanting ALICE! Black-and-white
- Has made your deeds perennial;
- And naught save "Chaos and old Night"
- Can part you now from TENNIEL;_
-
- _But still you are a Type, and based
- In Truth, like LEAR and HAMLET;
- And Types may be re-draped to taste
- In cloth-of-gold or camlet._
-
- _Here comes afresh Costumier, then;
- That Taste may gain a wrinkle
- From him who drew with such deft pen
- The rags of RIP VAN WINKLE!_
-
- _AUSTIN DOBSON._
-
-
-
- All in the golden afternoon
- Full leisurely we glide;
- For both our oars, with little skill,
- By little arms are plied,
- While little hands make vain pretence
- Our wanderings to guide.
-
- Ah, cruel Three! In such an hour,
- Beneath such dreamy weather,
- To beg a tale of breath too weak
- To stir the tiniest feather!
- Yet what can one poor voice avail
- Against three tongues together?
-
- Imperious Prima flashes forth
- Her edict "to begin it"--
- In gentler tone Secunda hopes
- "There will be nonsense in it!"--
- While Tertia interrupts the tale
- Not _more_ than once a minute.
-
- Anon, to sudden silence won,
- In fancy they pursue
- The dream-child moving through a land
- Of wonders wild and new,
- In friendly chat with bird or beast--
- And half believe it true.
-
- And ever, as the story drained
- The wells of fancy dry.
- And faintly strove that weary one
- To put the subject by,
- "The rest next time--" "It _is_ next time!"
- The happy voices cry.
-
- Thus grew the tale of Wonderland:
- Thus slowly, one by one,
- Its quaint events were hammered out--
- And now the tale is done,
- And home we steer, a merry crew,
- Beneath the setting sun.
-
- Alice! a childish story take,
- And with a gentle hand
- Lay it where Childhood's dreams are twined
- In Memory's mystic band,
- Like pilgrim's wither'd wreath of flowers
- Pluck'd in a far-off land.
-
-
-
-
-CONTENTS
-
-
- PAGE
-
- I. DOWN THE RABBIT-HOLE 1
-
- II. THE POOL OF TEARS 13
-
- III. A CAUCUS-RACE AND A LONG TALE 24
-
- IV. THE RABBIT SENDS IN A LITTLE BILL 35
-
- V. ADVICE FROM A CATERPILLAR 49
-
- VI. PIG AND PEPPER 64
-
- VII. A MAD TEA-PARTY 82
-
- VIII. THE QUEEN'S CROQUET-GROUND 96
-
- IX. THE MOCK TURTLE'S STORY 111
-
- X. THE LOBSTER QUADRILLE 126
-
- XI. WHO STOLE THE TARTS? 139
-
- XII. ALICE'S EVIDENCE 150
-
-
-
-
-LIST OF THE PLATES
-
-
- _To face page_
-
- Alice _Frontispiece_
-
- The Pool of Tears 22
-
- They all crowded round it panting and
- asking, "But who has won?" 28
-
- "Why, Mary Ann, what are you doing out
- here?" 36
-
- Advice from a Caterpillar 50
-
- An unusually large saucepan flew close
- by it, and very nearly carried it off 70
-
- It grunted again so violently that she
- looked down into its face in some alarm 74
-
- A Mad Tea-Party 84
-
- The Queen turned angrily away from him
- and said to the Knave, "Turn them over" 100
-
- The Queen never left off quarrelling
- with the other players, and shouting
- "Off with his head!" or, "Off with her
- head!" 116
-
- The Mock Turtle drew a long breath and
- said, "That's very curious" 132
-
- Who stole the Tarts? 140
-
- At this the whole pack rose up into the
- air, and came flying down upon her 158
-
-
-
-
-CHAPTER I
-
-
-[Sidenote: _Down the Rabbit-Hole_]
-
-ALICE was beginning to get very tired of sitting by her
-sister on the bank, and of having nothing to do: once or twice she had
-peeped into the book her sister was reading, but it had no pictures or
-conversations in it, "and what is the use of a book," thought Alice,
-"without pictures or conversations?"
-
-So she was considering in her own mind (as well as she could, for the
-hot day made her feel very sleepy and stupid) whether the pleasure of
-making a daisy-chain would be worth the trouble of getting up and
-picking the daisies, when suddenly a White Rabbit with pink eyes ran
-close by her.
-
-There was nothing so _very_ remarkable in that; nor did Alice think it
-so _very_ much out of the way to hear the Rabbit say to itself, "Oh
-dear! Oh dear! I shall be too late!" (when she thought it over
-afterwards, it occurred to her that she ought to have wondered at this,
-but at the time it all seemed quite natural); but when the Rabbit
-actually _took a watch out of its waistcoat-pocket_, and looked at it,
-and then hurried on, Alice started to her feet, for it flashed across
-her mind that she had never before seen a rabbit with either a
-waistcoat-pocket, or a watch to take out of it, and burning with
-curiosity, she ran across the field after it, and was just in time to
-see it pop down a large rabbit-hole under the hedge.
-
-In another moment down went Alice after it, never once considering how
-in the world she was to get out again.
-
-The rabbit-hole went straight on like a tunnel for some way, and then
-dipped suddenly down, so suddenly that Alice had not a moment to think
-about stopping herself before she found herself falling down what seemed
-to be a very deep well.
-
-[Illustration]
-
-Either the well was very deep, or she fell very slowly, for she had
-plenty of time as she went down to look about her, and to wonder what
-was going to happen next. First, she tried to look down and make out
-what she was coming to, but it was too dark to see anything; then she
-looked at the sides of the well and noticed that they were filled with
-cupboards and book-shelves: here and there she saw maps and pictures
-hung upon pegs. She took down a jar from one of the shelves as she
-passed; it was labelled "ORANGE MARMALADE," but to her disappointment it
-was empty; she did not like to drop the jar for fear of killing
-somebody underneath, so managed to put it into one of the cupboards as
-she fell past it.
-
-"Well!" thought Alice to herself. "After such a fall as this, I shall
-think nothing of tumbling down stairs! How brave they'll all think me at
-home! Why, I wouldn't say anything about it, even if I fell off the top
-of the house!" (Which was very likely true.)
-
-Down, down, down. Would the fall _never_ come to an end? "I wonder how
-many miles I've fallen by this time?" she said aloud. "I must be getting
-somewhere near the centre of the earth. Let me see: that would be four
-thousand miles down. I think--" (for, you see, Alice had learnt several
-things of this sort in her lessons in the schoolroom, and though this
-was not a _very_ good opportunity for showing off her knowledge, as
-there was no one to listen to her, still it was good practice to say it
-over) "--yes, that's about the right distance--but then I wonder what
-Latitude or Longitude I've got to?" (Alice had no idea what Latitude
-was, or Longitude either, but thought they were nice grand words to
-say.)
-
-Presently she began again. "I wonder if I shall fall right _through_ the
-earth! How funny it'll seem to come out among the people that walk with
-their heads downwards! The Antipathies, I think--" (she was rather glad
-there _was_ no one listening, this time, as it didn't sound at all the
-right word) "--but I shall have to ask them what the name of the country
-is, you know. Please, Ma'am, is this New Zealand or Australia?" (and she
-tried to curtsey as she spoke--fancy _curtseying_ as you're falling
-through the air! Do you think you could manage it?) "And what an
-ignorant little girl she'll think me! No, it'll never do to ask: perhaps
-I shall see it written up somewhere."
-
-Down, down, down. There was nothing else to do, so Alice soon began
-talking again. "Dinah'll miss me very much to-night, I should think!"
-(Dinah was the cat.) "I hope they'll remember her saucer of milk at
-tea-time. Dinah, my dear, I wish you were down here with me! There are
-no mice in the air, I'm afraid, but you might catch a bat, and that's
-very like a mouse, you know. But do cats eat bats, I wonder?" And here
-Alice began to get rather sleepy, and went on saying to herself, in a
-dreamy sort of way, "Do cats eat bats? Do cats eat bats?" and sometimes,
-"Do bats eat cats?" for, you see, as she couldn't answer either
-question, it didn't much matter which way she put it. She felt that she
-was dozing off, and had just begun to dream that she was walking hand in
-hand with Dinah, and saying to her very earnestly, "Now, Dinah, tell me
-the truth: did you ever eat a bat?" when suddenly, thump! thump! down
-she came upon a heap of sticks and dry leaves, and the fall was over.
-
-Alice was not a bit hurt, and she jumped up on to her feet in a moment:
-she looked up, but it was all dark overhead; before her was another long
-passage, and the White Rabbit was still in sight, hurrying down it.
-There was not a moment to be lost: away went Alice like the wind, and
-was just in time to hear it say, as it turned a corner, "Oh my ears and
-whiskers, how late it's getting!" She was close behind it when she
-turned the corner, but the Rabbit was no longer to be seen: she found
-herself in a long, low hall, which was lit up by a row of lamps hanging
-from the roof.
-
-There were doors all round the hall, but they were all locked; and when
-Alice had been all the way down one side and up the other, trying every
-door, she walked sadly down the middle, wondering how she was ever to
-get out again.
-
-Suddenly she came upon a little three-legged table, all made of solid
-glass; there was nothing on it but a tiny golden key, and Alice's first
-idea was that this might belong to one of the doors of the hall; but,
-alas! either the locks were too large, or the key was too small, but at
-any rate it would not open any of them. However, on the second time
-round, she came upon a low curtain she had not noticed before, and
-behind it was a little door about fifteen inches high: she tried the
-little golden key in the lock, and to her great delight it fitted!
-
-Alice opened the door and found that it led into a small passage, not
-much larger than a rat-hole: she knelt down and looked along the passage
-into the loveliest garden you ever saw. How she longed to get out of
-that dark hall, and wander about among those beds of bright flowers and
-those cool fountains, but she could not even get her head through the
-doorway; "and even if my head would go through," thought poor Alice, "it
-would be of very little use without my shoulders. Oh, how I wish I could
-shut up like a telescope! I think I could, if I only knew how to begin."
-For, you see, so many out-of-the-way things had happened lately, that
-Alice had begun to think that very few things indeed were really
-impossible.
-
-There seemed to be no use in waiting by the little door, so she went
-back to the table, half hoping she might find another key on it, or at
-any rate a book of rules for shutting people up like telescopes: this
-time she found a little bottle on it ("which certainly was not here
-before," said Alice,) and tied round the neck of the bottle was a paper
-label, with the words "DRINK ME" beautifully printed on it in large
-letters.
-
-It was all very well to say "Drink me," but the wise little Alice was
-not going to do _that_ in a hurry. "No, I'll look first," she said, "and
-see whether it's marked '_poison_' or not;" for she had read several
-nice little stories about children who had got burnt, and eaten up by
-wild beasts, and other unpleasant things, all because they _would_ not
-remember the simple rules their friends had taught them: such as, that a
-red-hot poker will burn you if you hold it too long; and that, if you
-cut your finger _very_ deeply with a knife, it usually bleeds; and she
-had never forgotten that, if you drink much from a bottle marked
-"poison," it is almost certain to disagree with you, sooner or later.
-
-However, this bottle was _not_ marked "poison," so Alice ventured to
-taste it, and finding it very nice (it had, in fact, a sort of mixed
-flavour of cherry-tart, custard, pineapple, roast turkey, coffee, and
-hot buttered toast,) she very soon finished it off.
-
- * * * * *
-
-"What a curious feeling!" said Alice. "I must be shutting up like a
-telescope."
-
-And so it was indeed: she was now only ten inches high, and her face
-brightened up at the thought that she was now the right size for going
-through that little door into that lovely garden. First, however, she
-waited for a few minutes to see if she was going to shrink any further:
-she felt a little nervous about this: "for it might end, you know," said
-Alice to herself, "in my going out altogether, like a candle. I wonder
-what I should be like then?" And she tried to fancy what the flame of a
-candle looks like after the candle is blown out, for she could not
-remember ever having seen such a thing.
-
-After a while, finding that nothing more happened, she decided on going
-into the garden at once; but, alas for poor Alice! when she got to the
-door, she found she had forgotten the little golden key, and when she
-went back to the table for it, she found she could not possibly reach
-it: she could see it quite plainly through the glass, and she tried her
-best to climb up one of the legs of the table, but it was too slippery;
-and when she had tired herself out with trying, the poor little thing
-sat down and cried.
-
-"Come, there's no use in crying like that!" said Alice to herself,
-rather sharply. "I advise you to leave off this minute!" She generally
-gave herself very good advice (though she very seldom followed it), and
-sometimes she scolded herself so severely as to bring tears into her
-eyes; and once she remembered trying to box her own ears for having
-cheated herself in a game of croquet she was playing against herself,
-for this curious child was very fond of pretending to be two people.
-"But it's no use now," thought poor Alice, "to pretend to be two people!
-Why there's hardly enough of me left to make _one_ respectable person!"
-
-Soon her eye fell on a little glass box that was lying under the table:
-she opened it, and found in it a very small cake, on which the words
-"EAT ME" were beautifully marked in currants. "Well, I'll eat it," said
-Alice, "and if it makes me grow larger, I can reach the key; and if it
-makes me grow smaller, I can creep under the door; so either way I'll
-get into the garden, and I don't care which happens!"
-
-She ate a little bit, and said anxiously to herself, "Which way? Which
-way?" holding her hand on the top of her head to feel which way it was
-growing, and she was quite surprised to find that she remained the same
-size; to be sure, this is what generally happens when one eats cake,
-but Alice had got so much into the way of expecting nothing but
-out-of-the-way things to happen, that it seemed quite dull and stupid
-for life to go on in the common way.
-
-So she set to work, and very soon finished off the cake.
-
- * * * * *
-
-
-
-
-CHAPTER II
-
-
-[Sidenote: _Pool of Tears_]
-
-"CURIOUSER and curiouser!" cried Alice (she was so much
-surprised, that for a moment she quite forgot how to speak good
-English); "now I'm opening out like the largest telescope that ever was!
-Good-bye, feet!" (for when she looked down at her feet, they seemed to
-be almost out of sight, they were getting so far off). "Oh, my poor
-little feet, I wonder who will put on your shoes and stockings for you
-now, dears? I'm sure _I_ sha'n't be able! I shall be a great deal too
-far off to trouble myself about you: you must manage the best way you
-can--but I must be kind to them," thought Alice, "or perhaps they won't
-walk the way I want to go! Let me see: I'll give them a new pair of
-boots every Christmas."
-
-And she went on planning to herself how she would manage it. "They must
-go by the carrier," she thought; "and how funny it'll seem, sending
-presents to one's own feet! And how odd the directions will look!
-
- Alice's Right Foot, Esq.
- Hearthrug,
- near the Fender,
- (with Alice's love).
-
-Oh dear, what nonsense I'm talking!"
-
-Just then her head struck against the roof of the hall: in fact she was
-now rather more than nine feet high, and she at once took up the little
-golden key and hurried off to the garden door.
-
-Poor Alice! It was as much as she could do, lying down on one side, to
-look through into the garden with one eye; but to get through was more
-hopeless than ever: she sat down and began to cry again.
-
-"You ought to be ashamed of yourself," said Alice, "a great girl like
-you" (she might well say this), "to go on crying in this way! Stop this
-moment, I tell you!" But she went on all the same, shedding gallons of
-tears, until there was a large pool all round her, about four inches
-deep and reaching half down the hall.
-
-[Illustration: CURIOUSER AND CURIOUSER]
-
-After a time she heard a little pattering of feet in the distance, and
-she hastily dried her eyes to see what was coming. It was the White
-Rabbit returning, splendidly dressed, with a pair of white kid gloves in
-one hand and a large fan in the other: he came trotting along in a great
-hurry, muttering to himself as he came, "Oh! the Duchess, the Duchess!
-Oh! won't she be savage if I've kept her waiting!" Alice felt so
-desperate that she was ready to ask help of any one; so, when the
-Rabbit came near her, she began, in a low, timid voice, "If you please,
-sir----" The Rabbit started violently, dropped the white kid gloves and
-the fan, and scurried away into the darkness as hard as he could go.
-
-Alice took up the fan and gloves, and, as the hall was very hot, she
-kept fanning herself all the time she went on talking! "Dear, dear! How
-queer everything is to-day! And yesterday things went on just as usual.
-I wonder if I've been changed during the night? Let me think: _was_ I
-the same when I got up this morning? I almost think I can remember
-feeling a little different. But if I'm not the same, the next question
-is, who in the world am I? Ah, _that's_ the great puzzle!" And she began
-thinking over all the children she knew that were of the same age as
-herself, to see if she could have been changed for any of them.
-
-"I'm sure I'm not Ada," she said, "for her hair goes in such long
-ringlets, and mine doesn't go in ringlets at all; and I'm sure I can't
-be Mabel, for I know all sorts of things, and she, oh! she knows such a
-very little! Besides, _she's_ she, and _I'm_ I, and--oh dear, how
-puzzling it all is! I'll try if I know all the things I used to know.
-Let me see: four times five is twelve, and four times six is thirteen,
-and four times seven is--oh dear! I shall never get to twenty at that
-rate! However, the Multiplication Table doesn't signify: let's try
-Geography. London is the capital of Paris, and Paris is the capital of
-Rome, and Rome--no, _that's_ all wrong, I'm certain! I must have been
-changed for Mabel! I'll try and say '_How doth the little----_'" and she
-crossed her hands on her lap as if she were saying lessons, and began to
-repeat it, but her voice sounded hoarse and strange, and the words did
-not come the same as they used to do:--
-
- "How doth the little crocodile
- Improve his shining tail,
- And pour the waters of the Nile
- On every golden scale!
-
- "How cheerfully he seems to grin,
- How neatly spreads his claws,
- And welcomes little fishes in,
- With gently smiling jaws!"
-
-"I'm sure those are not the right words," said poor Alice, and her eyes
-filled with tears again as she went on. "I must be Mabel, after all, and
-I shall have to go and live in that poky little house, and have next to
-no toys to play with, and oh! ever so many lessons to learn! No, I've
-made up my mind about it; if I'm Mabel, I'll stay down here! It'll be no
-use their putting their heads down and saying, 'Come up again, dear!' I
-shall only look up and say, 'Who am I then? Tell me that first, and
-then, if I like being that person, I'll come up: if not, I'll stay down
-here till I'm somebody else'--but, oh dear!" cried Alice with a sudden
-burst of tears, "I do wish they _would_ put their heads down! I am so
-_very_ tired of being all alone here!"
-
-As she said this she looked down at her hands, and was surprised to see
-that she had put on one of the Rabbit's little white kid gloves while
-she was talking. "How _can_ I have done that?" she thought. "I must be
-growing small again." She got up and went to the table to measure
-herself by it, and found that, as nearly as she could guess, she was now
-about two feet high, and was going on shrinking rapidly: she soon found
-out that the cause of this was the fan she was holding, and she dropped
-it hastily, just in time to avoid shrinking away altogether.
-
-"That _was_ a narrow escape!" said Alice, a good deal frightened at the
-sudden change, but very glad to find herself still in existence; "and
-now for the garden!" and she ran with all speed back to the little door:
-but alas! the little door was shut again, and the little golden key was
-lying on the glass table as before, "and things are worse than ever,"
-thought the poor child, "for I never was so small as this before, never!
-And I declare it's too bad, that it is!"
-
-As she said these words her foot slipped, and in another moment, splash!
-she was up to her chin in salt water. Her first idea was that she had
-somehow fallen into the sea, "and in that case I can go back by
-railway," she said to herself. (Alice had been to the seaside once in
-her life, and had come to the general conclusion, that wherever you go
-to on the English coast you find a number of bathing machines in the
-sea, some children digging in the sand with wooden spades, then a row
-of lodging houses, and behind them a railway station.) However, she soon
-made out that she was in the pool of tears which she had wept when she
-was nine feet high.
-
-"I wish I hadn't cried so much!" said Alice, as she swam about, trying
-to find her way out. "I shall be punished for it now, I suppose, by
-being drowned in my own tears! That _will_ be a queer thing, to be sure!
-However, everything is queer to-day."
-
-Just then she heard something splashing about in the pool a little way
-off, and she swam nearer to make out what it was: at first she thought
-it must be a walrus or hippopotamus, but then she remembered how small
-she was now, and she soon made out that it was only a mouse that had
-slipped in like herself.
-
-"Would it be of any use now," thought Alice, "to speak to this mouse?
-Everything is so out-of-the-way down here, that I should think very
-likely it can talk: at any rate, there's no harm in trying." So she
-began: "O Mouse, do you know the way out of this pool? I am very tired
-of swimming about here, O Mouse!" (Alice thought this must be the right
-way of speaking to a mouse; she had never done such a thing before, but
-she remembered having seen in her brother's Latin Grammar, "A mouse--of
-a mouse--to a mouse--a mouse--O mouse!") The Mouse looked at her rather
-inquisitively, and seemed to her to wink with one of its little eyes,
-but it said nothing.
-
-"Perhaps it doesn't understand English," thought Alice; "I daresay it's
-a French mouse, come over with William the Conqueror." (For, with all
-her knowledge of history, Alice had no very clear notion how long ago
-anything had happened.) So she began again: "Où est ma chatte?" which
-was the first sentence in her French lesson-book. The Mouse gave a
-sudden leap out of the water, and seemed to quiver all over with fright.
-"Oh, I beg your pardon!" cried Alice hastily, afraid that she had hurt
-the poor animal's feelings. "I quite forgot you didn't like cats."
-
-"Not like cats!" cried the Mouse, in a shrill, passionate voice. "Would
-_you_ like cats if you were me?"
-
-"Well, perhaps not," said Alice in a soothing tone: "don't be angry
-about it. And yet I wish I could show you our cat Dinah: I think you'd
-take a fancy to cats if you could only see her. She is such a dear quiet
-thing," Alice went on, half to herself, as she swam lazily about in the
-pool, "and she sits purring so nicely by the fire, licking her paws and
-washing her face--and she is such a nice soft thing to nurse--and she's
-such a capital one for catching mice----oh, I beg your pardon!" cried
-Alice again, for this time the Mouse was bristling all over, and she
-felt certain it must be really offended. "We won't talk about her any
-more if you'd rather not."
-
-"We, indeed!" cried the Mouse, who was trembling down to the end of his
-tail. "As if _I_ would talk on such a subject! Our family always _hated_
-cats: nasty, low, vulgar things! Don't let me hear the name again!"
-
-[Illustration: _The Pool of Tears_]
-
-"I won't indeed!" said Alice, in a great hurry to change the subject of
-conversation. "Are you--are you fond--of--of dogs?" The Mouse did not
-answer, so Alice went on eagerly: "There is such a nice little dog near
-our house I should like to show you! A little bright-eyed terrier, you
-know, with oh, such long curly brown hair! And it'll fetch things
-when you throw them, and it'll sit up and beg for its dinner, and all
-sorts of things--I can't remember half of them--and it belongs to a
-farmer, you know, and he says it's so useful, it's worth a hundred
-pounds! He says it kills all the rats and--oh dear!" cried Alice in a
-sorrowful tone, "I'm afraid I've offended it again!" For the Mouse was
-swimming away from her as hard as it could go, and making quite a
-commotion in the pool as it went.
-
-So she called softly after it, "Mouse dear! Do come back again, and we
-won't talk about cats or dogs either, if you don't like them!"
-
-When the Mouse heard this, it turned round and swam slowly back to her:
-its face was quite pale (with passion, Alice thought), and it said in a
-low trembling voice, "Let us get to the shore, and then I'll tell you my
-history, and you'll understand why it is I hate cats and dogs."
-
-It was high time to go, for the pool was getting quite crowded with the
-birds and animals that had fallen into it: there were a Duck and a Dodo,
-a Lory and an Eaglet, and several other curious creatures. Alice led the
-way, and the whole party swam to the shore.
-
-
-
-
-CHAPTER III
-
-
-[Sidenote: _A Caucus-race and a Long Tale_]
-
-THEY were indeed a queer-looking party that assembled on
-the bank--the birds with draggled feathers, the animals with their fur
-clinging close to them, and all dripping wet, cross, and uncomfortable.
-
-The first question of course was, how to get dry again: they had a
-consultation about this, and after a few minutes it seemed quite natural
-to Alice to find herself talking familiarly with them, as if she had
-known them all her life. Indeed, she had quite a long argument with the
-Lory, who at last turned sulky, and would only say, "I am older than
-you, and must know better;" and this Alice would not allow without
-knowing how old it was, and, as the Lory positively refused to tell its
-age, there was no more to be said.
-
-At last the Mouse, who seemed to be a person of authority among them,
-called out "Sit down, all of you, and listen to me! _I'll_ soon make you
-dry enough!" They all sat down at once, in a large ring, with the Mouse
-in the middle. Alice kept her eyes anxiously fixed on it, for she felt
-sure she would catch a bad cold if she did not get dry very soon.
-
-"Ahem!" said the Mouse with an important air. "Are you all ready? This
-is the driest thing I know. Silence all round, if you please! 'William
-the Conqueror, whose cause was favoured by the pope, was soon submitted
-to by the English, who wanted leaders, and had been of late much
-accustomed to usurpation and conquest. Edwin and Morcar, the earls of
-Mercia and Northumbria--'"
-
-"Ugh!" said the Lory, with a shiver.
-
-"I beg your pardon!" said the Mouse, frowning, but very politely. "Did
-you speak?"
-
-"Not I!" said the Lory hastily.
-
-"I thought you did," said the Mouse, "--I proceed. 'Edwin and Morcar,
-the earls of Mercia and Northumbria, declared for him: and even
-Stigand, the patriotic Archbishop of Canterbury, found it advisable--'"
-
-"Found _what_?" said the Duck.
-
-"Found _it_," the Mouse replied rather crossly: "of course you know what
-'it' means."
-
-"I know what 'it' means well enough, when _I_ find a thing," said the
-Duck; "it's generally a frog or a worm. The question is, what did the
-archbishop find?"
-
-The Mouse did not notice this question, but hurriedly went on, "'--found
-it advisable to go with Edgar Atheling to meet William and offer him the
-crown. William's conduct at first was moderate. But the insolence of his
-Normans--' How are you getting on now, my dear?" it continued, turning
-to Alice as it spoke.
-
-"As wet as ever," said Alice in a melancholy tone; "doesn't seem to dry
-me at all."
-
-"In that case," said the Dodo solemnly, rising to its feet, "I move that
-the meeting adjourn, for the immediate adoption of more energetic
-remedies----"
-
-"Speak English!" said the Eaglet. "I don't know the meaning of half
-those long words, and, what's more, I don't believe you do either!" And
-the Eaglet bent down its head to hide a smile: some of the other birds
-tittered audibly.
-
-"What I was going to say," said the Dodo in an offended tone, "was that
-the best thing to get us dry would be a Caucus-race."
-
-"What _is_ a Caucus-race?" said Alice; not that she much wanted to know,
-but the Dodo had paused as if it thought that _somebody_ ought to speak,
-and no one else seemed inclined to say anything.
-
-"Why," said the Dodo, "the best way to explain it is to do it." (And, as
-you might like to try the thing yourself some winter day, I will tell
-you how the Dodo managed it.)
-
-First it marked out a race-course, in a sort of circle, ("the exact
-shape doesn't matter," it said,) and then all the party were placed
-along the course, here and there. There was no "One, two, three, and
-away," but they began running when they liked, and left off when they
-liked, so that it was not easy to know when the race was over. However,
-when they had been running half an hour or so, and were quite dry again,
-the Dodo suddenly called "The race is over!" and they all crowded round
-it, panting, and asking "But who has won?"
-
-This question the Dodo could not answer without a great deal of thought,
-and it stood for a long time with one finger pressed upon its forehead
-(the position in which you usually see Shakespeare, in the pictures of
-him), while the rest waited in silence. At last the Dodo said
-"_Everybody_ has won, and _all_ must have prizes."
-
-"But who is to give the prizes?" quite a chorus of voices asked.
-
-"Why, _she_, of course," said the Dodo, pointing to Alice with one
-finger; and the whole party at once crowded round her, calling out in a
-confused way, "Prizes! Prizes!"
-
-Alice had no idea what to do, and in despair she put her hand in her
-pocket, and pulled out a box of comfits (luckily the salt water had not
-got into it), and handed them round as prizes. There was exactly one
-apiece all round.
-
- _They all crowded round it panting and asking,
- "But who has won?"_
-
-[Illustration]
-
-"But she must have a prize herself, you know," said the Mouse.
-
-"Of course," the Dodo replied very gravely.
-
-"What else have you got in your pocket?" it went on, turning to Alice.
-
-"Only a thimble," said Alice sadly.
-
-"Hand it over here," said the Dodo.
-
-Then they all crowded round her once more, while the Dodo solemnly
-presented the thimble, saying "We beg your acceptance of this elegant
-thimble;" and, when it had finished this short speech, they all cheered.
-
-Alice thought the whole thing very absurd, but they all looked so grave
-that she did not dare to laugh; and, as she could not think of anything
-to say, she simply bowed, and took the thimble, looking as solemn as she
-could.
-
-The next thing was to eat the comfits; this caused some noise and
-confusion, as the large birds complained that they could not taste
-theirs, and the small ones choked and had to be patted on the back.
-However, it was over at last, and they sat down again in a ring, and
-begged the Mouse to tell them something more.
-
-"You promised to tell me your history, you know," said Alice, "and why
-it is you hate--C and D," she added in a whisper, half afraid that it
-would be offended again.
-
-[Illustration]
-
-"Mine is a long and sad tale!" said the Mouse, turning to Alice and
-sighing.
-
-"It _is_ a long tail, certainly," said Alice, looking down with wonder
-at the Mouse's tail; "but why do you call it sad?" And she kept on
-puzzling about it while the Mouse was speaking, so that her idea of the
-tale was something like this:--
-
- "Fury said to
- a mouse, That
- he met in the
- house, 'Let
- us both go
- to law: _I_
- will prose-
- cute _you_.--
- Come, I'll
- take no de-
- nial: We
- must have
- the trial;
- For really
- this morn-
- ing I've
- nothing
- to do.'
- Said the
- mouse to
- the cur,
- 'Such a
- trial, dear
- sir, With
- no jury
- or judge,
- would
- be wast-
- ing our
- breath.'
- 'I'll be
- judge,
- I'll be
- jury,'
- said
- cun-
- ning
- old
- Fury:
- 'I'll
- try
- the
- whole
- cause,
- and
- con-
- demn
- you to
- death.'
-
-"You are not attending!" said the Mouse to Alice severely. "What are you
-thinking of?"
-
-"I beg your pardon," said Alice very humbly: "you had got to the fifth
-bend, I think?"
-
-"I had _not_!" cried the Mouse, angrily.
-
-"A knot!" said Alice, always ready to make herself useful, and looking
-anxiously about her. "Oh, do let me help to undo it!"
-
-"I shall do nothing of the sort," said the Mouse, getting up and walking
-away. "You insult me by talking such nonsense!"
-
-"I didn't mean it!" pleaded poor Alice. "But you're so easily offended,
-you know!"
-
-The Mouse only growled in reply.
-
-"Please come back and finish your story!" Alice called after it. And the
-others all joined in chorus, "Yes, please do!" but the Mouse only shook
-its head impatiently and walked a little quicker.
-
-"What a pity it wouldn't stay!" sighed the Lory, as soon as it was quite
-out of sight; and an old Crab took the opportunity of saying to her
-daughter, "Ah, my dear! Let this be a lesson to you never to lose
-_your_ temper!" "Hold your tongue, Ma!" said the young Crab, a little
-snappishly. "You're enough to try the patience of an oyster!"
-
-"I wish I had our Dinah here, I know I do!" said Alice aloud, addressing
-nobody in particular. "She'd soon fetch it back!"
-
-"And who is Dinah, if I might venture to ask the question?" said the
-Lory.
-
-Alice replied eagerly, for she was always ready to talk about her pet:
-"Dinah's our cat. And she's such a capital one for catching mice, you
-ca'n't think! And oh, I wish you could see her after the birds! Why,
-she'll eat a little bird as soon as look at it!"
-
-This speech caused a remarkable sensation among the party. Some of the
-birds hurried off at once; one old Magpie began wrapping itself up very
-carefully, remarking "I really must be getting home; the night-air
-doesn't suit my throat!" and a Canary called out in a trembling voice to
-its children "Come away, my dears! It's high time you were all in bed!"
-On various pretexts they all moved off, and Alice was soon left alone.
-
-"I wish I hadn't mentioned Dinah!" she said to herself in a melancholy
-tone. "Nobody seems to like her, down here, and I'm sure she's the best
-cat in the world! Oh, my dear Dinah! I wonder if I shall ever see you
-any more!" And here poor Alice began to cry again, for she felt very
-lonely and low-spirited. In a little while, however, she again heard a
-little pattering of footsteps in the distance, and she looked up
-eagerly, half hoping that the Mouse had changed his mind, and was coming
-back to finish his story.
-
-
-
-
-CHAPTER IV
-
-
-[Sidenote: _The Rabbit sends in a Little Bill_]
-
-IT was the White Rabbit, trotting slowly back again, and
-looking anxiously about as it went, as if it had lost something; and she
-heard it muttering to itself, "The Duchess! The Duchess! Oh my dear
-paws! Oh my fur and whiskers! She'll get me executed, as sure as ferrets
-are ferrets! Where _can_ I have dropped them, I wonder?" Alice guessed
-in a moment that it was looking for the fan and the pair of white kid
-gloves, and she very good-naturedly began hunting about for them, but
-they were nowhere to be seen--everything seemed to have changed since
-her swim in the pool, and the great hall, with the glass table and the
-little door, had vanished completely.
-
-Very soon the Rabbit noticed Alice, as she went hunting about, and
-called out to her in an angry tone, "Why, Mary Ann, what _are_ you
-doing out here? Run home this moment, and fetch me a pair of gloves and
-a fan! Quick, now!" And Alice was so much frightened that she ran off at
-once in the direction it pointed to, without trying to explain the
-mistake it had made.
-
-"He took me for his housemaid," she said to herself as she ran. "How
-surprised he'll be when he finds out who I am! But I'd better take him
-his fan and gloves--that is, if I can find them." As she said this, she
-came upon a neat little house, on the door of which was a bright brass
-plate with the name "W. RABBIT" engraved upon it. She went in without
-knocking, and hurried up stairs, in great fear lest she should meet the
-real Mary Ann, and be turned out of the house before she had found the
-fan and gloves.
-
-[Illustration: "_Why, Mary Ann, what are you doing out here?_"]
-
-"How queer it seems," Alice said to herself, "to be going messages for a
-rabbit! I suppose Dinah'll be sending me on messages next!" And she
-began fancying the sort of thing that would happen: "'Miss Alice! Come
-here directly, and get ready for your walk!' 'Coming in a minute, nurse!
-But I've got to watch this mouse-hole till Dinah comes back, and see
-that the mouse doesn't get out.' Only I don't think," Alice went on,
-"that they'd let Dinah stop in the house if it began ordering people
-about like that!"
-
-By this time she had found her way into a tidy little room with a table
-in the window, and on it (as she had hoped) a fan and two or three pairs
-of tiny white kid gloves: she took up the fan and a pair of the gloves,
-and was just going to leave the room, when her eye fell upon a little
-bottle that stood near the looking-glass. There was no label this time
-with the words "DRINK ME," but nevertheless she uncorked it and put it
-to her lips. "I know _something_ interesting is sure to happen," she
-said to herself, "whenever I eat or drink anything; so I'll just see
-what this bottle does. I do hope it will make me grow large again, for
-really I'm quite tired of being such a tiny little thing!"
-
-It did so indeed, and much sooner than she had expected: before she had
-drunk half the bottle, she found her head pressing against the ceiling,
-and had to stoop to save her neck from being broken. She hastily put
-down the bottle, saying to herself "That's quite enough--I hope I
-sha'n't grow any more--As it is, I can't get out at the door--I do wish
-I hadn't drunk quite so much!"
-
-Alas! it was too late to wish that! She went on growing, and growing,
-and very soon had to kneel down on the floor: in another minute there
-was not even room for this, and she tried the effect of lying down with
-one elbow against the door, and the other arm curled round her head.
-Still she went on growing, and, as a last resource, she put one arm out
-of the window, and one foot up the chimney, and said to herself "Now I
-can do no more, whatever happens. What _will_ become of me?"
-
-Luckily for Alice, the little magic bottle had now had its full effect,
-and she grew no larger: still it was very uncomfortable, and, as there
-seemed to be no sort of chance of her ever getting out of the room
-again, no wonder she felt unhappy.
-
-"It was much pleasanter at home," thought poor Alice, "when one wasn't
-always growing larger and smaller, and being ordered about by mice and
-rabbits. I almost wish I hadn't gone down that rabbit-hole--and
-yet--and yet--it's rather curious, you know, this sort of life! I do
-wonder what _can_ have happened to me! When I used to read fairy-tales,
-I fancied that kind of thing never happened, and now here I am in the
-middle of one! There ought to be a book written about me, that there
-ought! And when I grow up, I'll write one--but I'm grown up now," she
-added in a sorrowful tone; "at least there's no room to grow up any more
-_here_."
-
-"But then," thought Alice, "shall I _never_ get any older than I am now?
-That'll be a comfort, one way--never to be an old woman--but
-then--always to have lessons to learn! Oh, I shouldn't like _that_!"
-
-"Oh, you foolish Alice!" she answered herself. "How can you learn
-lessons in here? Why, there's hardly room for _you_, and no room at all
-for any lesson-books!"
-
-And so she went on, taking first one side and then the other, and making
-quite a conversation of it altogether; but after a few minutes she heard
-a voice outside, and stopped to listen.
-
-"Mary Ann! Mary Ann!" said the voice. "Fetch me my gloves this moment!"
-Then came a little pattering of feet on the stairs. Alice knew it was
-the Rabbit coming to look for her, and she trembled till she shook the
-house, quite forgetting that she was now about a thousand times as large
-as the Rabbit, and had no reason to be afraid of it.
-
-Presently the Rabbit came up to the door, and tried to open it; but, as
-the door opened inwards, and Alice's elbow was pressed hard against it,
-that attempt proved a failure. Alice heard it say to itself "Then I'll
-go round and get in at the window."
-
-"_That_ you won't" thought Alice, and, after waiting till she fancied
-she heard the Rabbit just under the window, she suddenly spread out her
-hand, and made a snatch in the air. She did not get hold of anything,
-but she heard a little shriek and a fall, and a crash of broken glass,
-from which she concluded that it was just possible it had fallen into a
-cucumber-frame, or something of the sort.
-
-Next came an angry voice--the Rabbit's--"Pat! Pat! Where are you?" And
-then a voice she had never heard before, "Sure then I'm here! Digging
-for apples, yer honour!"
-
-"Digging for apples, indeed!" said the Rabbit angrily. "Here! Come and
-help me out of _this_!" (Sounds of more broken glass.)
-
-"Now tell me, Pat, what's that in the window?"
-
-"Sure, it's an arm, yer honour." (He pronounced it "arrum.")
-
-"An arm, you goose! Who ever saw one that size? Why, it fills the whole
-window!"
-
-"Sure, it does, yer honour? but it's an arm for all that."
-
-"Well, it's got no business there, at any rate: go and take it away!"
-
-There was a long silence after this, and Alice could only hear whispers
-now and then; such as, "Sure, I don't like it, yer honour, at all, at
-all!" "Do as I tell you, you coward!" and at last she spread out her
-hand again, and made another snatch in the air. This time there were
-_two_ little shrieks, and more sounds of broken glass. "What a number of
-cucumber-frames there must be!" thought Alice. "I wonder what they'll do
-next! As for pulling me out of the window, I only wish they _could_!
-I'm sure _I_ don't want to stay in here any longer!"
-
-She waited for some time without hearing anything more: at last came a
-rumbling of little cart-wheels, and the sound of a good many voices all
-talking together: she made out the words: "Where's the other
-ladder?--Why I hadn't to bring but one; Bill's got the other--Bill!
-Fetch it here, lad!--Here, put 'em up at this corner--No, tie 'em
-together first--they don't reach half high enough yet--Oh! they'll do
-well enough; don't be particular--Here, Bill! catch hold of this
-rope--Will the roof bear?--Mind that loose slate--Oh, it's coming down!
-Heads below!" (a loud crash)--"Now, who did that?--It was Bill, I
-fancy--Who's to go down the chimney?--Nay, _I_ sha'n't! _You_ do
-it!--_That_ I won't, then! Bill's to go down--Here, Bill! the master
-says you've to go down the chimney!"
-
-"Oh! So Bill's got to come down the chimney, has he?" said Alice to
-herself. "Why, they seem to put everything upon Bill! I wouldn't be in
-Bill's place for a good deal: this fireplace is narrow, to be sure; but
-I _think_ I can kick a little!"
-
-She drew her foot as far down the chimney as she could, and waited till
-she heard a little animal (she couldn't guess of what sort it was)
-scratching and scrambling about in the chimney close above her: then,
-saying to herself "This is Bill," she gave one sharp kick, and waited to
-see what would happen next.
-
-The first thing she heard was a general chorus of "There goes Bill!"
-then the Rabbit's voice alone--"Catch him, you by the hedge!" then
-silence, and then another confusion of voices--"Hold up his head--Brandy
-now--Don't choke him--How was it, old fellow? What happened to you? Tell
-us all about it!"
-
-At last came a little feeble, squeaking voice, ("That's Bill," thought
-Alice,) "Well, I hardly know--No more, thank ye; I'm better now--but I'm
-a deal too flustered to tell you--all I know is, something comes at me
-like a Jack-in-the-box, and up I goes like a sky-rocket!"
-
-"So you did, old fellow!" said the others.
-
-"We must burn the house down!" said the Rabbit's voice. And Alice
-called out as loud as she could, "If you do, I'll set Dinah at you!"
-
-There was a dead silence instantly, and Alice thought to herself "I
-wonder what they _will_ do next! If they had any sense, they'd take the
-roof off." After a minute or two they began moving about again, and
-Alice heard the Rabbit say "A barrowful will do, to begin with."
-
-"A barrowful of _what_?" thought Alice. But she had not long to doubt,
-for the next moment a shower of little pebbles came rattling in at the
-window, and some of them hit her in the face. "I'll put a stop to this,"
-she said to herself, and shouted out "You'd better not do that again!"
-which produced another dead silence.
-
-Alice noticed with some surprise that the pebbles were all turning into
-little cakes as they lay on the floor, and a bright idea came into her
-head. "If I eat one of these cakes," she thought, "it's sure to make
-_some_ change in my size; and, as it can't possibly make me larger, it
-must make me smaller, I suppose."
-
-So she swallowed one of the cakes, and was delighted to find that she
-began shrinking directly. As soon as she was small enough to get through
-the door, she ran out of the house, and found quite a crowd of little
-animals and birds waiting outside. The poor little Lizard, Bill, was in
-the middle, being held up by two guinea-pigs, who were giving it
-something out of a bottle. They all made a rush at Alice the moment she
-appeared; but she ran off as hard as she could, and soon found herself
-safe in a thick wood.
-
-"The first thing I've got to do," said Alice to herself, as she wandered
-about in the wood, "is to grow to my right size again; and the second
-thing is to find my way into that lovely garden. I think that will be
-the best plan."
-
-It sounded an excellent plan, no doubt, and very neatly and simply
-arranged; the only difficulty was, that she had not the smallest idea
-how to set about it; and, while she was peering about anxiously among
-the trees, a little sharp bark just over her head made her look up in a
-great hurry.
-
-An enormous puppy was looking down at her with large round eyes, and
-feebly stretching out one paw, trying to touch her. "Poor little
-thing!" said Alice, in a coaxing tone, and she tried hard to whistle to
-it; but she was terribly frightened all the time at the thought that it
-might be hungry, in which case it would be very likely to eat her up in
-spite of all her coaxing.
-
-Hardly knowing what she did, she picked up a little bit of stick, and
-held it out to the puppy; whereupon the puppy jumped into the air off
-all its feet at once, with a yelp of delight, and rushed at the stick,
-and made believe to worry it; then Alice dodged behind a great thistle,
-to keep herself from being run over; and, the moment she appeared on the
-other side, the puppy made another rush at the stick, and tumbled head
-over heels in its hurry to get hold of it; then Alice, thinking it was
-very like having a game of play with a cart-horse, and expecting every
-moment to be trampled under its feet, ran round the thistle again; then
-the puppy began a series of short charges at the stick, running a little
-way forwards each time and a long way back, and barking hoarsely all the
-while, till at last it sat down a good way off, panting, with its
-tongue hanging out of its mouth, and its great eyes half shut.
-
-This seemed to Alice a good opportunity for making her escape; so she
-set off at once, and ran till she was quite tired and out of breath, and
-till the puppy's bark sounded quite faint in the distance.
-
-"And yet what a dear little puppy it was!" said Alice, as she leant
-against a buttercup to rest herself, and fanned herself with one of the
-leaves. "I should have liked teaching it tricks very much, if--if I'd
-only been the right size to do it! Oh, dear! I'd nearly forgotten that
-I've got to grow up again! Let me see--how _is_ it to be managed? I
-suppose I ought to eat or drink something or other; but the great
-question is, what?"
-
-The great question certainly was, what? Alice looked all round her at
-the flowers and the blades of grass, but she could not see anything that
-looked like the right thing to eat or drink under the circumstances.
-There was a large mushroom growing near her, about the same height as
-herself; and, when she had looked under it, and on both sides of it, and
-behind it, it occurred to her that she might as well look and see what
-was on the top of it.
-
-She stretched herself up on tiptoe, and peeped over the edge of the
-mushroom, and her eyes immediately met those of a large blue
-caterpillar, that was sitting on the top with its arms folded, quietly
-smoking a long hookah, and taking not the smallest notice of her or of
-anything else.
-
-
-
-
-CHAPTER V
-
-
-[Sidenote: _Advice from a Caterpillar_]
-
-THE Caterpillar and Alice looked at each other for some
-time in silence: at last the Caterpillar took the hookah out of its
-mouth, and addressed her in a languid, sleepy voice.
-
-"Who are _you_?" said the Caterpillar.
-
-This was not an encouraging opening for a conversation. Alice replied,
-rather shyly, "I hardly know, sir, just at present--at least I know who
-I _was_ when I got up this morning, but I think I must have been changed
-several times since then."
-
-"What do you mean by that?" said the Caterpillar sternly. "Explain
-yourself!"
-
-"I can't explain _myself_, I'm afraid, sir," said Alice, "because I'm
-not myself, you see."
-
-"I don't see," said the Caterpillar.
-
-"I'm afraid I can't put it more clearly," Alice replied very politely,
-"for I can't understand it myself to begin with; and being so many
-different sizes in a day is very confusing."
-
-"It isn't," said the Caterpillar.
-
-"Well, perhaps you haven't found it so yet," said Alice, "but when you
-have to turn into a chrysalis--you will some day, you know--and then
-after that into a butterfly, I should think you'll feel it a little
-queer, won't you?"
-
-"Not a bit," said the Caterpillar.
-
-"Well, perhaps your feelings may be different," said Alice; "all I know
-is, it would feel very queer to _me_."
-
-"You!" said the Caterpillar contemptuously. "Who are _you_?"
-
-Which brought them back again to the beginning of the conversation.
-Alice felt a little irritated at the Caterpillar's making such _very_
-short remarks, and she drew herself up and said, very gravely, "I think
-you ought to tell me who _you_ are, first."
-
-"Why?" said the Caterpillar.
-
-[Illustration: _Advice from a Caterpillar_]
-
-Here was another puzzling question; and as Alice could not think of any
-good reason, and as the Caterpillar seemed to be in a _very_
-unpleasant state of mind, she turned away.
-
-"Come back!" the Caterpillar called after her. "I've something important
-to say!"
-
-This sounded promising, certainly: Alice turned and came back again.
-
-"Keep your temper," said the Caterpillar.
-
-"Is that all?" said Alice, swallowing down her anger as well as she
-could.
-
-"No," said the Caterpillar.
-
-Alice thought she might as well wait, as she had nothing else to do, and
-perhaps after all it might tell her something worth hearing. For some
-minutes it puffed away without speaking, but at last it unfolded its
-arms, took the hookah out of its mouth again, and said, "So you think
-you're changed, do you?"
-
-"I'm afraid I am, sir," said Alice; "I can't remember things as I
-used--and I don't keep the same size for ten minutes together!"
-
-"Can't remember _what_ things?" said the Caterpillar.
-
-"Well, I've tried to say '_How doth the little busy bee_,' but it all
-came different!" Alice replied in a very melancholy voice.
-
-"Repeat '_You are old, Father William_,'" said the Caterpillar.
-
-Alice folded her hands, and began:--
-
- "You are old, Father William," the young man said,
- "And your hair has become very white;
- And yet you incessantly stand on your head--
- Do you think, at your age, it is right?"
-
- "In my youth," Father William replied to his son,
- "I feared it might injure the brain;
- But, now that I'm perfectly sure I have none,
- Why, I do it again and again."
-
- "You are old," said the youth, "as I mentioned before,
- And have grown most uncommonly fat;
- Yet you turned a back-somersault in at the door--
- Pray, what is the reason of that?"
-
- "In my youth," said the sage, as he shook his grey locks,
- "I kept all my limbs very supple
- By the use of this ointment--one shilling the box--
- Allow me to sell you a couple?"
-
- "You are old," said the youth, "and your jaws are too weak
- For anything tougher than suet;
- Yet you finished the goose, with the bones and the beak--
- Pray, how did you manage to do it?"
-
- "In my youth," said his father, "I took to the law
- And argued each case with my wife;
- And the muscular strength, which it gave to my jaw,
- Has lasted the rest of my life."
-
- "You are old," said the youth, "one would hardly suppose
- That your eye was as steady as ever;
- Yet you balanced an eel on the end of your nose--
- What made you so awfully clever?"
-
- "I have answered three questions, and that is enough,"
- Said his father; "don't give yourself airs!
- Do you think I can listen all day to such stuff?
- Be off, or I'll kick you down stairs!"
-
-"That is not said right," said the Caterpillar.
-
-"Not _quite_ right, I'm afraid," said Alice, timidly; "some of the
-words have got altered."
-
-"It is wrong from beginning to end," said the Caterpillar, decidedly,
-and there was silence for some minutes.
-
-The Caterpillar was the first to speak.
-
-"What size do you want to be?" it asked.
-
-"Oh, I'm not particular as to size," Alice hastily replied; "only one
-doesn't like changing so often, you know."
-
-"I _don't_ know," said the Caterpillar.
-
-Alice said nothing: she had never been so much contradicted in all her
-life before, and she felt that she was losing her temper.
-
-"Are you content now?" said the Caterpillar.
-
-"Well, I should like to be a _little_ larger, sir, if you wouldn't
-mind," said Alice: "three inches is such a wretched height to be."
-
-"It is a very good height indeed!" said the Caterpillar angrily, rearing
-itself upright as it spoke (it was exactly three inches high).
-
-"But I'm not used to it!" pleaded poor Alice in a piteous tone. And she
-thought to herself, "I wish the creatures wouldn't be so easily
-offended!"
-
-"You'll get used to it in time," said the Caterpillar; and it put its
-hookah into its mouth and began smoking again.
-
-This time Alice waited patiently until it chose to speak again. In a
-minute or two the Caterpillar took the hookah out of its mouth and
-yawned once or twice, and shook itself. Then it got down off the
-mushroom, and crawled away into the grass, merely remarking as it went,
-"One side will make you grow taller, and the other side will make you
-grow shorter."
-
-"One side of _what_? The other side of _what_?" thought Alice to
-herself.
-
-"Of the mushroom," said the Caterpillar, just as if she had asked it
-aloud; and in another moment it was out of sight.
-
-Alice remained looking thoughtfully at the mushroom for a minute, trying
-to make out which were the two sides of it; and as it was perfectly
-round, she found this a very difficult question. However, at last she
-stretched her arms round it as far as they would go, and broke off a bit
-of the edge with each hand.
-
-"And now which is which?" she said to herself, and nibbled a little of
-the right-hand bit to try the effect: the next moment she felt a violent
-blow underneath her chin: it had struck her foot!
-
-[Illustration]
-
-She was a good deal frightened by this very sudden change, but she felt
-that there was no time to be lost, as she was shrinking rapidly; so she
-set to work at once to eat some of the other bit. Her chin was pressed
-so closely against her foot that there was hardly room to open her
-mouth; but she did it at last, and managed to swallow a morsel of the
-left-hand bit.
-
- * * * * *
-
-"Come, my head's free at last!" said Alice in a tone of delight, which
-changed into alarm in another moment, when she found that her shoulders
-were nowhere to be found: all she could see, when she looked down, was
-an immense length of neck, which seemed to rise like a stalk out of a
-sea of green leaves that lay far below her.
-
-"What _can_ all that green stuff be?" said Alice. "And where have my
-shoulders got to? And oh, my poor hands, how is it I ca'n't see you?"
-She was moving them about as she spoke, but no result seemed to follow,
-except a little shaking among the distant green leaves.
-
-As there seemed to be no chance of getting her hands up to her head, she
-tried to get her head down to them, and was delighted to find that her
-neck would bend about easily in any direction, like a serpent. She had
-just succeeded in curving it down into a graceful zigzag, and was going
-to dive in among the leaves, which she found to be nothing but the tops
-of the trees under which she had been wandering, when a sharp hiss made
-her draw back in a hurry: a large pigeon had flown into her face, and
-was beating her violently with its wings.
-
-"Serpent!" screamed the Pigeon.
-
-"I'm _not_ a serpent!" said Alice indignantly. "Let me alone!"
-
-"Serpent, I say again!" repeated the Pigeon, but in a more subdued tone,
-and added with a kind of a sob, "I've tried every way, and nothing seems
-to suit them!"
-
-"I haven't the least idea what you're talking about," said Alice.
-
-"I've tried the roots of trees, and I've tried banks, and I've tried
-hedges," the Pigeon went on, without attending to her; "but those
-serpents! There's no pleasing them!"
-
-Alice was more and more puzzled, but she thought there was no use in
-saying anything more till the Pigeon had finished.
-
-"As if it wasn't trouble enough hatching the eggs," said the Pigeon;
-"but I must be on the look-out for serpents night and day! Why, I
-haven't had a wink of sleep these three weeks!"
-
-"I'm very sorry you've been annoyed," said Alice, who was beginning to
-see its meaning.
-
-[Illustration]
-
-"And just as I'd taken the highest tree in the wood," continued the
-Pigeon, raising its voice to a shriek, "and just as I was thinking I
-should be free of them at last, they must needs come wriggling down from
-the sky! Ugh, Serpent!"
-
-"But I'm _not_ a serpent, I tell you!" said Alice. "I'm a---- I'm a
-----"
-
-"Well! _What_ are you?" said the Pigeon. "I can see you're trying to
-invent something!"
-
-"I--I'm a little girl," said Alice, rather doubtfully, as she remembered
-the number of changes she had gone through that day.
-
-"A likely story indeed!" said the Pigeon in a tone of the deepest
-contempt. "I've seen a good many little girls in my time, but never
-_one_ with such a neck as that! No, no! You're a serpent; and there's no
-use denying it. I suppose you'll be telling me next that you never
-tasted an egg!"
-
-"I _have_ tasted eggs, certainly," said Alice, who was a very truthful
-child; "but little girls eat eggs quite as much as serpents do, you
-know."
-
-"I don't believe it," said the Pigeon; "but if they do, why then
-they're a kind of serpent, that's all I can say."
-
-This was such a new idea to Alice, that she was quite silent for a
-minute or two, which gave the Pigeon the opportunity of adding, "You're
-looking for eggs, I know _that_ well enough; and what does it matter to
-me whether you're a little girl or a serpent?"
-
-"It matters a good deal to _me_," said Alice hastily; "but I'm not
-looking for eggs, as it happens; and if I was, I shouldn't want _yours_:
-I don't like them raw."
-
-"Well, be off, then!" said the Pigeon in a sulky tone, as it settled
-down again into its nest. Alice crouched down among the trees as well as
-she could, for her neck kept getting entangled among the branches, and
-every now and then she had to stop and untwist it. After a while she
-remembered that she still held the pieces of mushroom in her hands, and
-she set to work very carefully, nibbling first at one and then at the
-other, and growing sometimes taller and sometimes shorter, until she had
-succeeded in bringing herself down to her usual height.
-
-It was so long since she had been anything near the right size, that it
-felt quite strange at first; but she got used to it in a few minutes,
-and began talking to herself, as usual. "Come, there's half my plan done
-now! How puzzling all these changes are! I'm never sure what I'm going
-to be, from one minute to another! However, I've got back to my right
-size: the next thing is, to get into that beautiful garden--how _is_
-that to be done, I wonder?" As she said this, she came suddenly upon an
-open place, with a little house in it about four feet high. "Whoever
-lives there," thought Alice, "it'll never do to come upon them _this_
-size: why, I should frighten them out of their wits!" So she began
-nibbling at the right-hand bit again, and did not venture to go near the
-house till she had brought herself down to nine inches high.
-
-
-
-
-CHAPTER VI
-
-
-[Sidenote: _Pig and Pepper_]
-
-FOR a minute or two she stood looking at the house, and
-wondering what to do next, when suddenly a footman in livery came
-running out of the wood--(she considered him to be a footman because he
-was in livery: otherwise, judging by his face only, she would have
-called him a fish)--and rapped loudly at the door with his knuckles. It
-was opened by another footman in livery, with a round face and large
-eyes like a frog; and both footmen, Alice noticed, had powdered hair
-that curled all over their heads. She felt very curious to know what it
-was all about, and crept a little way out of the wood to listen.
-
-The Fish-Footman began by producing from under his arm a great letter,
-nearly as large as himself, and this he handed over to the other,
-saying, in a solemn tone, "For the Duchess. An invitation from the
-Queen to play croquet." The Frog-Footman repeated, in the same solemn
-tone, only changing the order of the words a little, "From the Queen. An
-invitation for the Duchess to play croquet."
-
-Then they both bowed low, and their curls got entangled together.
-
-Alice laughed so much at this, that she had to run back into the wood
-for fear of their hearing her; and, when she next peeped out, the
-Fish-Footman was gone, and the other was sitting on the ground near the
-door, staring stupidly up into the sky.
-
-Alice went timidly up to the door and knocked.
-
-"There's no use in knocking," said the Footman, "and that for two
-reasons. First, because I'm on the same side of the door as you are;
-secondly, because they're making such a noise inside, no one could
-possibly hear you." And certainly there was a most extraordinary noise
-going on within--a constant howling and sneezing, and every now and then
-a great crash, as if a dish or kettle had been broken to pieces.
-
-"Please, then," said Alice, "how am I to get in?"
-
-"There might be some sense in your knocking," the Footman went on
-without attending to her, "if we had the door between us. For instance,
-if you were _inside_, you might knock, and I could let you out, you
-know." He was looking up into the sky all the time he was speaking, and
-this Alice thought decidedly uncivil. "But perhaps he can't help it,"
-she said to herself: "his eyes are so _very_ nearly at the top of his
-head. But at any rate he might answer questions. How am I to get in?"
-she repeated aloud.
-
-"I shall sit here," the Footman remarked, "till to-morrow----"
-
-At this moment the door of the house opened, and a large plate came
-skimming out, straight at the Footman's head: it just grazed his nose,
-and broke to pieces against one of the trees behind him.
-
-"----or next day, maybe," the Footman continued in the same tone,
-exactly as if nothing had happened.
-
-"How am I to get in?" asked Alice again in a louder tone.
-
-"_Are_ you to get in at all?" said the Footman. "That's the first
-question, you know."
-
-[Illustration]
-
-It was, no doubt: only Alice did not like to be told so. "It's really
-dreadful," she muttered to herself, "the way all the creatures argue.
-It's enough to drive one crazy!"
-
-The Footman seemed to consider this a good opportunity for repeating his
-remark, with variations. "I shall sit here," he said, "on and off, for
-days and days."
-
-"But what am _I_ to do?" said Alice.
-
-"Anything you like," said the Footman, and began whistling.
-
-"Oh, there's no use in talking to him," said Alice desperately: "he's
-perfectly idiotic!" And she opened the door and went in.
-
-The door led right into a large kitchen, which was full of smoke from
-one end to the other: the Duchess was sitting on a three-legged stool in
-the middle, nursing a baby, the cook was leaning over the fire, stirring
-a large cauldron which seemed to be full of soup.
-
-"There's certainly too much pepper in that soup!" Alice said to herself,
-as well as she could for sneezing.
-
-There was certainly too much of it in the air. Even the Duchess sneezed
-occasionally; and the baby was sneezing and howling alternately without
-a moment's pause. The only things in the kitchen that did not sneeze,
-were the cook, and a large cat which was sitting on the hearth and
-grinning from ear to ear.
-
-"Please would you tell me," said Alice a little timidly, for she was not
-quite sure whether it was good manners for her to speak first, "why your
-cat grins like that?"
-
-"It's a Cheshire cat," said the Duchess, "and that's why. Pig!"
-
-She said the last word with such sudden violence that Alice quite
-jumped; but she saw in another moment that it was addressed to the baby,
-and not to her, so she took courage, and went on again:
-
-"I didn't know that Cheshire cats always grinned; in fact, I didn't know
-that cats _could_ grin."
-
-"They all can," said the Duchess; "and most of 'em do."
-
-"I don't know of any that do," Alice said very politely, feeling quite
-pleased to have got into a conversation.
-
-"You don't know much," said the Duchess; "and that's a fact."
-
-Alice did not at all like the tone of this remark, and thought it would
-be as well to introduce some other subject of conversation. While she
-was trying to fix on one, the cook took the cauldron of soup off the
-fire, and at once set to work throwing everything within her reach at
-the Duchess and the baby--the fire-irons came first; then followed a
-shower of saucepans, plates, and dishes. The Duchess took no notice of
-them even when they hit her; and the baby was howling so much already,
-that it was quite impossible to say whether the blows hurt it or not.
-
-"Oh, _please_ mind what you're doing!" cried Alice, jumping up and down
-in an agony of terror. "Oh, there goes his _precious_ nose"; as an
-unusually large saucepan flew close by it, and very nearly carried it
-off.
-
-"If everybody minded their own business," the Duchess said in a hoarse
-growl, "the world would go round a deal faster than it does."
-
-[Illustration: _An unusually large saucepan flew close by it, and very
-nearly carried it off_]
-
-"Which would _not_ be an advantage," said Alice, who felt very glad to
-get an opportunity of showing off a little of her knowledge. "Just think
-what work it would make with the day and night! You see the earth
-takes twenty-four hours to turn round on its axis----"
-
-"Talking of axes," said the Duchess, "chop off her head."
-
-Alice glanced rather anxiously at the cook, to see if she meant to take
-the hint; but the cook was busily engaged in stirring the soup, and did
-not seem to be listening, so she ventured to go on again: "Twenty-four
-hours, I _think_; or is it twelve? I----"
-
-"Oh, don't bother _me_," said the Duchess; "I never could abide
-figures!" And with that she began nursing her child again, singing a
-sort of lullaby to it as she did so, and giving it a violent shake at
-the end of every line:
-
- "Speak roughly to your little boy,
- And beat him when he sneezes:
- He only does it to annoy,
- Because he knows it teases."
-
-CHORUS
-
- (In which the cook and the baby joined):
- "Wow! wow! wow!"
-
-While the Duchess sang the second verse of the song, she kept tossing
-the baby violently up and down, and the poor little thing howled so,
-that Alice could hardly hear the words:
-
- "I speak severely to my boy,
- I beat him when he sneezes;
- For he can thoroughly enjoy
- The pepper when he pleases!"
-
- CHORUS.
-
- "Wow! wow! wow!"
-
-"Here! you may nurse it a bit if you like!" the Duchess said to Alice,
-flinging the baby at her as she spoke. "I must go and get ready to play
-croquet with the Queen," and she hurried out of the room. The cook threw
-a frying-pan after her as she went out, but it just missed her.
-
-Alice caught the baby with some difficulty, as it was a queer-shaped
-little creature, and held out its arms and legs in all directions, "just
-like a star-fish," thought Alice. The poor little thing was snorting
-like a steam-engine when she caught it, and kept doubling itself up and
-straightening itself out again, so that altogether, for the first minute
-or two, it was as much as she could do to hold it.
-
-As soon as she had made out the proper way of nursing it, (which was to
-twist it up into a knot, and then keep tight hold of its right ear and
-left foot, so as to prevent its undoing itself,) she carried it out into
-the open air. "If I don't take this child away with me," thought Alice,
-"they're sure to kill it in a day or two: wouldn't it be murder to leave
-it behind?" She said the last words out loud, and the little thing
-grunted in reply (it had left off sneezing by this time). "Don't grunt,"
-said Alice; "that's not at all a proper way of expressing yourself."
-
-The baby grunted again, and Alice looked very anxiously into its face to
-see what was the matter with it. There could be no doubt that it had a
-_very_ turn-up nose, much more like a snout than a real nose; also its
-eyes were getting extremely small for a baby: altogether Alice did not
-like the look of the thing at all. "But perhaps it was only sobbing,"
-she thought, and looked into its eyes again, to see if there were any
-tears.
-
-No, there were no tears. "If you're going to turn into a pig, my dear,"
-said Alice, seriously, "I'll have nothing more to do with you. Mind
-now!" The poor little thing sobbed again (or grunted, it was impossible
-to say which), and they went on for some while in silence.
-
-Alice was just beginning to think to herself, "Now, what am I to do with
-this creature when I get it home?" when it grunted again, so violently,
-that she looked down into its face in some alarm. This time there could
-be _no_ mistake about it: it was neither more nor less than a pig, and
-she felt that it would be quite absurd for her to carry it any further.
-
-So she set the little creature down, and felt quite relieved to see it
-trot quietly away into the wood. "If it had grown up," she said to
-herself, "it would have made a dreadfully ugly child: but it makes
-rather a handsome pig, I think." And she began thinking over other
-children she knew, who might do very well as pigs, and was just saying
-to herself, "if one only knew the right way to change them----" when she
-was a little startled by seeing the Cheshire Cat sitting on a bough of a
-tree a few yards off.
-
-[Illustration: _It grunted again so violently that she looked down into
-its face in some alarm_]
-
-The Cat only grinned when it saw Alice. It looked good-natured, she
-thought: still it had _very_ long claws and a great many teeth, so she
-felt that it ought to be treated with respect.
-
-[Illustration]
-
-"Cheshire Puss," she began, rather timidly, as she did not at all know
-whether it would like the name: however, it only grinned a little wider.
-"Come, it's pleased so far," thought Alice, and she went on. "Would you
-tell me, please, which way I ought to go from here?"
-
-"That depends a good deal on where you want to get to," said the Cat.
-
-"I don't much care where----" said Alice.
-
-"Then it doesn't matter which way you go," said the Cat.
-
-"---- so long as I get _somewhere_," Alice added as an explanation.
-
-"Oh, you're sure to do that," said the Cat, "if you only walk long
-enough."
-
-Alice felt that this could not be denied, so she tried another question.
-"What sort of people live about here?"
-
-"In _that_ direction," the Cat said, waving its right paw round, "lives
-a Hatter: and in _that_ direction," waving the other paw, "lives a March
-Hare. Visit either you like: they're both mad."
-
-"But I don't want to go among mad people," Alice remarked.
-
-"Oh, you ca'n't help that," said the Cat: "we're all mad here. I'm mad.
-You're mad."
-
-"How do you know I'm mad?" said Alice.
-
-"You must be," said the Cat, "or you wouldn't have come here."
-
-Alice didn't think that proved it at all; however, she went on. "And how
-do you know that you're mad?"
-
-"To begin with," said the Cat, "a dog's not mad. You grant that?"
-
-"I suppose so," said Alice.
-
-"Well, then," the Cat went on, "you see a dog growls when it's angry,
-and wags its tail when it's pleased. Now _I_ growl when I'm pleased, and
-wag my tail when I'm angry. Therefore I'm mad."
-
-"_I_ call it purring, not growling," said Alice.
-
-"Call it what you like," said the Cat. "Do you play croquet with the
-Queen to-day?"
-
-"I should like it very much," said Alice, "but I haven't been invited
-yet."
-
-"You'll see me there," said the Cat and vanished.
-
-Alice was not much surprised at this, she was getting so used to queer
-things happening. While she was looking at the place where it had been,
-it suddenly appeared again.
-
-"By-the-bye, what became of the baby?" said the Cat. "I'd nearly
-forgotten to ask."
-
-"It turned into a pig," Alice quietly said, just as if it had come back
-in a natural way.
-
-"I thought it would," said the Cat, and vanished again.
-
-Alice waited a little, half expecting to see it again, but it did not
-appear, and after a minute or two she walked on in the direction in
-which the March Hare was said to live. "I've seen hatters before," she
-said to herself; "the March Hare will be much the most interesting, and
-perhaps as this is May, it won't be raving mad--at least not so mad as
-it was in March." As she said this, she looked up, and there was the Cat
-again, sitting on the branch of a tree.
-
-"Did you say pig, or fig?" said the Cat.
-
-"I said pig," replied Alice; "and I wish you wouldn't keep appearing and
-vanishing so suddenly: you make one quite giddy."
-
-"All right," said the Cat; and this time it vanished quite slowly,
-beginning with the end of the tail, and ending with the grin, which
-remained some time after the rest of it had gone.
-
-"Well! I've often seen a cat without a grin," thought Alice; "but a grin
-without a cat! It's the most curious thing I ever saw in all my life."
-
-[Illustration]
-
-She had not gone much farther before she came in sight of the house of
-the March Hare: she thought it must be the right house, because the
-chimneys were shaped like ears and the roof was thatched with fur. It
-was so large a house, that she did not like to go nearer till she had
-nibbled some more of the left-hand bit of mushroom, and raised herself,
-to about two feet high: even then she walked up towards it rather
-timidly, saying to herself, "Suppose it should be raving mad after all!
-I almost wish I'd gone to see the Hatter instead!"
-
-
-
-
-CHAPTER VII
-
-
-[Sidenote: _A Mad Tea-party_]
-
-THERE was a table set out under a tree in front of the
-house, and the March Hare and the Hatter were having tea at it: a
-Dormouse was sitting between them, fast asleep, and the other two were
-using it as a cushion resting their elbows on it, and talking over its
-head. "Very uncomfortable for the Dormouse," thought Alice; "only as
-it's asleep, suppose it doesn't mind."
-
-The table was a large one, but the three were all crowded together at
-one corner of it. "No room! No room!" they cried out when they saw Alice
-coming. "There's _plenty_ of room!" said Alice indignantly, and she sat
-down in a large arm-chair at one end of the table.
-
-"Have some wine," the March Hare said in an encouraging tone.
-
-Alice looked all round the table, but there was nothing on it but tea.
-"I don't see any wine," she remarked.
-
-"There isn't any," said the March Hare.
-
-"Then it wasn't very civil of you to offer it," said Alice angrily.
-
-"It wasn't very civil of you to sit down without being invited," said
-the March Hare.
-
-"I didn't know it was _your_ table," said Alice; "it's laid for a great
-many more than three."
-
-"Your hair wants cutting," said the Hatter. He had been looking at Alice
-for some time with great curiosity, and this was his first speech.
-
-"You should learn not to make personal remarks," Alice said with some
-severity; "it's very rude."
-
-The Hatter opened his eyes very wide on hearing this; but all he _said_
-was "Why is a raven like a writing-desk?"
-
-"Come, we shall have some fun now!" thought Alice. "I'm glad they've
-begun asking riddles.--I believe I can guess that," she added aloud.
-
-"Do you mean that you think you can find out the answer to it?" said
-the March Hare.
-
-"Exactly so," said Alice.
-
-"Then you should say what you mean," the March Hare went on.
-
-"I do," Alice hastily replied; "at least--at least I mean what I
-say--that's the same thing, you know."
-
-"Not the same thing a bit!" said the Hatter. "Why, you might just as
-well say that 'I see what I eat' is the same thing as 'I eat what I
-see'!"
-
-"You might just as well say," added the March Hare, "that 'I like what I
-get' is the same thing as 'I get what I like'!"
-
-"You might just as well say," added the Dormouse, which seemed to be
-talking in his sleep, "that 'I breathe when I sleep' is the same thing
-as 'I sleep when I breathe'!"
-
-"It _is_ the same thing with you," said the Hatter; and here the
-conversation dropped, and the party sat silent for a minute, while Alice
-thought over all she could remember about ravens and writing-desks,
-which wasn't much.
-
-[Illustration: _A Mad Tea Party_]
-
-The Hatter was the first to break the silence. "What day of the month
-is it?" he said, turning to Alice: he had taken his watch out of his
-pocket, and was looking at it uneasily, shaking it every now and then,
-and holding it to his ear.
-
-Alice considered a little, and then said "The fourth."
-
-"Two days wrong!" sighed the Hatter. "I told you butter would not suit
-the works!" he added, looking angrily at the March Hare.
-
-"It was the _best_ butter," the March Hare meekly replied.
-
-"Yes, but some crumbs must have got in as well," the Hatter grumbled:
-"you shouldn't have put it in with the bread-knife."
-
-The March Hare took the watch and looked at it gloomily: then he dipped
-it into his cup of tea, and looked at it again: but he could think of
-nothing better to say than his first remark, "It was the _best_ butter,
-you know."
-
-Alice had been looking over his shoulder with some curiosity. "What a
-funny watch!" she remarked. "It tells the day of the month, and doesn't
-tell what o'clock it is!"
-
-"Why should it?" muttered the Hatter. "Does _your_ watch tell you what
-year it is?"
-
-"Of course not," Alice replied very readily: "but that's because it
-stays the same year for such a long time together."
-
-"Which is just the case with _mine_," said the Hatter.
-
-Alice felt dreadfully puzzled. The Hatter's remark seemed to have no
-meaning in it, and yet it was certainly English. "I don't quite
-understand," she said, as politely as she could.
-
-"The Dormouse is asleep again," said the Hatter, and he poured a little
-hot tea upon its nose.
-
-The Dormouse shook its head impatiently, and said, without opening its
-eyes, "Of course, of course; just what I was going to remark myself."
-
-"Have you guessed the riddle yet?" the Hatter said, turning to Alice
-again.
-
-"No, I give it up," Alice replied: "what's the answer?"
-
-"I haven't the slightest idea," said the Hatter.
-
-"Nor I," said the March Hare.
-
-Alice sighed wearily. "I think you might do something better with the
-time," she said, "than wasting it asking riddles with no answers."
-
-"If you knew Time as well as I do," said the Hatter, "you wouldn't talk
-about wasting _it_. It's _him_."
-
-"I don't know what you mean," said Alice.
-
-"Of course you don't!" the Hatter said, tossing his head contemptuously.
-"I daresay you never spoke to Time!"
-
-"Perhaps not," Alice cautiously replied: "but I know I have to beat time
-when I learn music."
-
-"Ah! that accounts for it," said the Hatter. "He won't stand beating.
-Now, if you only kept on good terms with him, he'd do almost anything
-you liked with the clock. For instance, suppose it were nine o'clock in
-the morning, just time to begin lessons: you'd only have to whisper a
-hint to Time, and round goes the clock in a twinkling! Half-past one,
-time for dinner!"
-
-("I only wish it was," the March Hare said to itself in a whisper.)
-
-"That would be grand, certainly," said Alice thoughtfully: "but then--I
-shouldn't be hungry for it, you know."
-
-"Not at first, perhaps," said the Hatter: "but you could keep it to
-half-past one as long as you liked."
-
-"Is that the way _you_ manage?" Alice asked.
-
-The Hatter shook his head mournfully. "Not I!" he replied. "We
-quarrelled last March----just before _he_ went mad, you know----"
-(pointing with his teaspoon to the March Hare), "it was at the great
-concert given by the Queen of Hearts, and I had to sing
-
- 'Twinkle, twinkle, little bat!
- How I wonder what you're at!'
-
-You know that song, perhaps?"
-
-"I've heard something like it," said Alice.
-
-"It goes on, you know," the Hatter continued, "in this way:--
-
- 'Up above the world you fly,
- Like a tea-tray in the sky.
- Twinkle, twinkle----'"
-
-Here the Dormouse shook itself, and began singing in its sleep
-"_Twinkle, twinkle, twinkle, twinkle_----" and went on so long that they
-had to pinch it to make it stop.
-
-"Well, I'd hardly finished the first verse," said the Hatter, "when the
-Queen jumped up and bawled out 'He's murdering the time! Off with his
-head!'"
-
-"How dreadfully savage!" exclaimed Alice.
-
-"And ever since that," the Hatter went on in a mournful tone, "he won't
-do a thing I ask! It's always six o'clock now."
-
-A bright idea came into Alice's head. "Is that the reason so many
-tea-things are put out here?" she asked.
-
-"Yes, that's it," said the Hatter with a sigh: "it's always tea-time,
-and we've no time to wash the things between whiles."
-
-"Then you keep moving round, I suppose?" said Alice.
-
-"Exactly so," said the Hatter: "as the things get used up."
-
-"But what happens when you come to the beginning again?" Alice ventured
-to ask.
-
-"Suppose we change the subject," the March Hare interrupted, yawning.
-"I'm getting tired of this. I vote the young lady tells us a story."
-
-"I'm afraid I don't know one," said Alice, rather alarmed at the
-proposal.
-
-"Then the Dormouse shall!" they both cried. "Wake up, Dormouse!" And
-they pinched it on both sides at once.
-
-The Dormouse slowly opened his eyes. "I wasn't asleep," he said in a
-hoarse, feeble voice: "I heard every word you fellows were saying."
-
-"Tell us a story!" said the March Hare.
-
-"Yes, please do!" pleaded Alice.
-
-"And be quick about it," added the Hatter, "or you'll be asleep again
-before it's done."
-
-"Once upon a time there were three little sisters," the Dormouse began
-in a great hurry; "and their names were Elsie, Lacie, and Tillie; and
-they lived at the bottom of a well----"
-
-"What did they live on?" said Alice, who always took a great interest in
-questions of eating and drinking.
-
-"They lived on treacle," said the Dormouse, after thinking a minute or
-two.
-
-"They couldn't have done that, you know," Alice gently remarked; "they'd
-have been ill."
-
-"So they were," said the Dormouse; "_very_ ill."
-
-Alice tried a little to fancy to herself what such an extraordinary way
-of living would be like, but it puzzled her too much, so she went on:
-"But why did they live at the bottom of a well?"
-
-"Take some more tea," the March Hare said to Alice, very earnestly.
-
-"I've had nothing yet," Alice replied in an offended tone, "so I can't
-take more."
-
-"You mean you can't take _less_," said the Hatter; "it's very easy to
-take _more_ than nothing."
-
-"Nobody asked _your_ opinion," said Alice.
-
-"Who's making personal remarks now?" the Hatter asked triumphantly.
-
-Alice did not quite know what to say to this: so she helped herself to
-some tea and bread-and-butter, and then turned to the Dormouse, and
-repeated her question. "Why did they live at the bottom of a well?"
-
-The Dormouse again took a minute or two to think about it, and then
-said, "It was a treacle-well."
-
-"There's no such thing!" Alice was beginning very angrily, but the
-Hatter and the March Hare went "Sh! sh!" and the Dormouse sulkily
-remarked: "If you can't be civil, you'd better finish the story for
-yourself."
-
-"No, please go on!" Alice said very humbly. "I won't interrupt you
-again. I dare say there may be _one_."
-
-"One, indeed!" said the Dormouse indignantly. However, he consented to
-go on. "And so these three little sisters--they were learning to draw,
-you know----"
-
-"What did they draw?" said Alice, quite forgetting her promise.
-
-"Treacle," said the Dormouse, without considering at all this time.
-
-"I want a clean cup," interrupted the Hatter: "let's all move one place
-on."
-
-He moved as he spoke, and the Dormouse followed him: the March Hare
-moved into the Dormouse's place, and Alice rather unwillingly took the
-place of the March Hare. The Hatter was the only one who got any
-advantage from the change: and Alice was a good deal worse off than
-before, as the March Hare had just upset the milk-jug into his plate.
-
-Alice did not wish to offend the Dormouse again, so she began very
-cautiously: "But I don't understand. Where did they draw the treacle
-from?"
-
-"You can draw water out of a water-well," said the Hatter; "so I should
-think you could draw treacle out of a treacle-well--eh, stupid!"
-
-"But they were _in_ the well," Alice said to the Dormouse, not choosing
-to notice this last remark.
-
-"Of course they were," said the Dormouse; "----well in."
-
-This answer so confused poor Alice that she let the Dormouse go on for
-some time without interrupting it.
-
-"They were learning to draw," the Dormouse went on, yawning and rubbing
-its eyes, for it was getting very sleepy; "and they drew all manner of
-things--everything that begins with an M----"
-
-"Why with an M?" said Alice.
-
-"Why not?" said the March Hare.
-
-Alice was silent.
-
-The Dormouse had closed its eyes by this time, and was going off into a
-dose; but, on being pinched by the Hatter, it woke up again with a
-little shriek, and went on: "----that begins with an M, such as
-mouse-traps, and the moon, and memory, and muchness--you know you say
-things are 'much of a muchness'--did you ever see such a thing as a
-drawing of a muchness?"
-
-"Really, now you ask me," said Alice, very much confused, "I don't
-think----"
-
-"Then you shouldn't talk," said the Hatter.
-
-This piece of rudeness was more than Alice could bear: she got up in
-great disgust and walked off; the Dormouse fell asleep instantly, and
-neither of the others took the least notice of her going, though she
-looked back once or twice, half hoping that they would call after her:
-the last time she saw them, they were trying to put the Dormouse into
-the teapot.
-
-"At any rate I'll never go _there_ again!" said Alice as she picked her
-way through the wood. "It's the stupidest tea-party I ever was at in all
-my life!"
-
-Just as she said this, she noticed that one of the trees had a door
-leading right into it. "That's very curious!" she thought. "But
-everything's curious to-day. I think I may as well go in at once." And
-in she went.
-
-Once more she found herself in the long hall, and close to the little
-glass table. "Now I'll manage better this time," she said to herself,
-and began by taking the little golden key, and unlocking the door that
-led into the garden. Then she set to work nibbling at the mushroom (she
-had kept a piece of it in her pocket) till she was about a foot high:
-then she walked down the little passage: and _then_--she found herself
-at last in the beautiful garden, among the bright flower-beds and the
-cool fountains.
-
-
-
-
-CHAPTER VIII
-
-
-[Sidenote: _The Queen's Croquet-Ground_]
-
-A LARGE rose-tree stood near the entrance of the garden:
-the roses growing on it were white, but there were three gardeners at
-it, busily painting them red. Alice thought this a very curious thing,
-and she went nearer to watch them, and just as she came up to them she
-heard one of them say "Look out now, Five! Don't go splashing paint over
-me like that!"
-
-"I couldn't help it," said Five, in a sulky tone. "Seven jogged my
-elbow."
-
-On which Seven looked up and said, "That's right, Five! Always lay the
-blame on others!"
-
-"_You'd_ better not talk!" said Five. "I heard the Queen say only
-yesterday you deserved to be beheaded!"
-
-"What for?" said the one who had first spoken.
-
-"That's none of _your_ business, Two!" said Seven.
-
-"Yes, it _is_ his business!" said Five. "And I'll tell him--it was for
-bringing the cook tulip-roots instead of onions."
-
-Seven flung down his brush, and had just begun "Well, of all the unjust
-things----" when his eye chanced to fall upon Alice, as she stood
-watching them, and he checked himself suddenly: the others looked round
-also, and all of them bowed low.
-
-"Would you tell me," said Alice, a little timidly, "why you are painting
-those roses?"
-
-Five and Seven said nothing, but looked at Two. Two began in a low
-voice, "Why, the fact is, you see, Miss, this here ought to have been a
-_red_ rose-tree, and we put a white one in by mistake; and if the Queen
-was to find it out, we should all have our heads cut off, you know. So
-you see, Miss, we're doing our best, afore she comes, to----" At this
-moment, Five, who had been anxiously looking across the garden, called
-out "The Queen! The Queen!" and the three gardeners instantly threw
-themselves flat upon their faces. There was a sound of many footsteps,
-and Alice looked round, eager to see the Queen.
-
-First came ten soldiers carrying clubs; these were all shaped like the
-three gardeners, oblong and flat, with their hands and feet at the
-corners: next the ten courtiers; these were ornamented all over with
-diamonds, and walked two and two, as the soldiers did. After these came
-the royal children; there were ten of them, and the little dears came
-jumping merrily along hand in hand, in couples; they were all ornamented
-with hearts. Next came the guests, mostly Kings and Queens, and among
-them Alice recognised the White Rabbit: it was talking in a hurried,
-nervous manner, smiling at everything that was said, and went by without
-noticing her. Then followed the Knave of Hearts, carrying the King's
-crown on a crimson velvet cushion; and last of all this grand
-procession, came THE KING AND QUEEN OF HEARTS.
-
-Alice was rather doubtful whether she ought not to lie down on her face
-like the three gardeners, but she could not remember ever having heard
-of such a rule at processions; "and besides, what would be the use of a
-procession," thought she, "if people had to lie down upon their faces,
-so that they couldn't see it?" So she stood still where she was, and
-waited.
-
-When the procession came opposite to Alice, they all stopped and looked
-at her, and the Queen said severely, "Who is this?" She said it to the
-Knave of Hearts, who only bowed and smiled in reply.
-
-"Idiot!" said the Queen, tossing her head impatiently; and turning to
-Alice, she went on, "What's your name, child?"
-
-"My name is Alice, so please your Majesty," said Alice very politely;
-but she added, to herself, "Why, they're only a pack of cards, after
-all. I needn't be afraid of them!"
-
-"And who are _these_?" said the Queen, pointing to the three gardeners
-who were lying round the rose-tree; for, you see, as they were lying on
-their faces, and the pattern on their backs was the same as the rest of
-the pack, she could not tell whether they were gardeners, or soldiers,
-or courtiers, or three of her own children.
-
-"How should _I_ know?" said Alice, surprised at her own courage. "It's
-no business of _mine_."
-
-The Queen turned crimson with fury, and, after glaring at her for a
-moment like a wild beast, screamed "Off with her head! Off----"
-
-"Nonsense!" said Alice, very loudly and decidedly, and the Queen was
-silent.
-
-The King laid his hand upon her arm, and timidly said "Consider my dear:
-she is only a child!"
-
-The Queen turned angrily away from him, and said to the Knave "Turn them
-over!"
-
-The Knave did so, very carefully, with one foot.
-
-"Get up!" said the Queen, in a shrill, loud voice, and the three
-gardeners instantly jumped up, and began bowing to the King, the Queen,
-the royal children, and everybody else.
-
-"Leave off that!" screamed the Queen. "You make me giddy." And then,
-turning to the rose-tree, she went on, "What _have_ you been doing
-here?"
-
-"May it please your Majesty," said Two, in a very humble tone, going
-down on one knee as he spoke, "we were trying----"
-
-[Illustration: _The Queen turned angrily away from him and said to the
-Knave, "Turn them over"_]
-
-"_I_ see!" said the Queen, who had meanwhile been examining the roses.
-"Off with their heads!" and the procession moved on, three of the
-soldiers remaining behind to execute the unfortunate gardeners, who ran
-to Alice for protection.
-
-"You shan't be beheaded!" said Alice, and she put them into a large
-flower-pot that stood near. The three soldiers wandered about for a
-minute or two, looking for them, and then quietly marched off after the
-others.
-
-"Are their heads off?" shouted the Queen.
-
-"Their heads are gone, if it please your Majesty!" the soldiers shouted
-in reply.
-
-"That's right!" shouted the Queen. "Can you play croquet?"
-
-The soldiers were silent, and looked at Alice, as the question was
-evidently meant for her.
-
-"Yes!" shouted Alice.
-
-"Come on, then!" roared the Queen, and Alice joined the procession,
-wondering very much what would happen next.
-
-"It's--it's a very fine day!" said a timid voice at her side. She was
-walking by the White Rabbit, who was peeping anxiously into her face.
-
-"Very," said Alice: "----where's the Duchess?"
-
-"Hush! Hush!" said the Rabbit in a low hurried tone. He looked anxiously
-over his shoulder as he spoke, and then raised himself upon tiptoe, put
-his mouth close to her ear, and whispered "She's under sentence of
-execution."
-
-"What for?" said Alice.
-
-"Did you say 'What a pity!'?" the Rabbit asked.
-
-"No, I didn't," said Alice: "I don't think it's at all a pity. I said
-'What for?'"
-
-"She boxed the Queen's ears--" the Rabbit began. Alice gave a little
-scream of laughter. "Oh, hush!" the Rabbit whispered in a frightened
-tone. "The Queen will hear you! You see she came rather late, and the
-Queen said----"
-
-"Get to your places!" shouted the Queen in a voice of thunder, and
-people began running about in all directions, tumbling up against each
-other; however, they got settled down in a minute or two, and the game
-began. Alice thought she had never seen such a curious croquet-ground in
-all her life; it was all ridges and furrows; the balls were live
-hedgehogs, the mallets live flamingoes, and the soldiers had to double
-themselves up and to stand upon their hands and feet, to make the
-arches.
-
-[Illustration]
-
-The chief difficulty Alice found at first was in managing her flamingo;
-she succeeded in getting its body tucked away, comfortably enough, under
-her arm, with its legs hanging down, but generally, just as she had got
-its neck nicely straightened out, and was going to give the hedgehog a
-blow with its head, it _would_ twist itself round and look up in her
-face, with such a puzzled expression that she could not help bursting
-out laughing: and when she had got its head down, and was going to
-begin again, it was very provoking to find that the hedgehog had
-unrolled itself and was in the act of crawling away: besides all this,
-there was generally a ridge or a furrow in the way wherever she wanted
-to send the hedgehog to, and, as the doubled-up soldiers were always
-getting up and walking off to other parts of the ground, Alice soon came
-to the conclusion that it was a very difficult game indeed.
-
-The players all played at once without waiting for turns, quarrelling
-all the while, and fighting for the hedgehogs; and in a very short time
-the Queen was in a furious passion, and went stamping about, and
-shouting "Off with his head!" or "Off with her head!" about once in a
-minute.
-
-Alice began to feel very uneasy: to be sure she had not as yet had any
-dispute with the Queen, but she knew that it might happen any minute,
-"and then," thought she, "what would become of me? They're dreadfully
-fond of beheading people here: the great wonder is that there's any one
-left alive!"
-
-She was looking about for some way of escape, and wondering whether she
-could get away without being seen, when she noticed a curious
-appearance in the air: it puzzled her very much at first, but, after
-watching it a minute or two, she made it out to be a grin, and she said
-to herself "It's the Cheshire Cat: now I shall have somebody to talk
-to."
-
-"How are you getting on?" said the Cat, as soon as there was mouth
-enough for it to speak with.
-
-Alice waited till the eyes appeared, and then nodded. "It's no use
-speaking to it," she thought, "till its ears have come, or at least one
-of them." In another minute the whole head appeared, and then Alice put
-down her flamingo, and began an account of the game, feeling very glad
-she had some one to listen to her. The Cat seemed to think that there
-was enough of it now in sight, and no more of it appeared.
-
-"I don't think they play at all fairly," Alice began, in rather a
-complaining tone, "and they all quarrel so dreadfully one can't hear
-oneself speak--and they don't seem to have any rules in particular; at
-least, if there are, nobody attends to them--and you've no idea how
-confusing it is all the things being alive; for instance, there's the
-arch I've got to go through next walking about at the other end of the
-ground--and I should have croqueted the Queen's hedgehog just now, only
-it ran away when it saw mine coming!"
-
-[Illustration]
-
-"How do you like the Queen?" said the Cat in a low voice.
-
-"Not at all," said Alice: "she's so extremely----" Just then she noticed
-that the Queen was close behind her listening: so she went on,
-"----likely to win, that it's hardly worth while finishing the game."
-
-The Queen smiled and passed on.
-
-"Who _are_ you talking to?" said the King, coming up to Alice, and
-looking at the Cat's head with great curiosity.
-
-"It's a friend of mine--a Cheshire Cat," said Alice: "allow me to
-introduce it."
-
-"I don't like the look of it at all," said the King: "however, it may
-kiss my hand if it likes."
-
-"I'd rather not," the Cat remarked.
-
-"Don't be impertinent," said the King, "and don't look at me like that!"
-He got behind Alice as he spoke.
-
-"A cat may look at a king," said Alice. "I've read that in some book,
-but I don't remember where."
-
-"Well, it must be removed," said the King very decidedly, and he called
-to the Queen, who was passing at the moment, "My dear! I wish you would
-have this cat removed!"
-
-The Queen had only one way of settling all difficulties, great or small.
-"Off with his head!" she said, without even looking round.
-
-"I'll fetch the executioner myself," said the King eagerly, and he
-hurried off.
-
-Alice thought she might as well go back and see how the game was going
-on, as she heard the Queen's voice in the distance, screaming with
-passion. She had already heard her sentence three of the players to be
-executed for having missed their turns, and she did not like the look of
-things at all, as the game was in such confusion that she never knew
-whether it was her turn or not. So she went in search of her hedgehog.
-
-The hedgehog was engaged in a fight with another hedgehog, which seemed
-to Alice an excellent opportunity for croqueting one of them with the
-other: the only difficulty was, that her flamingo was gone across to the
-other side of the garden, where Alice could see it trying in a helpless
-sort of way to fly up into one of the trees.
-
-By the time she had caught the flamingo and brought it back, the fight
-was over, and both the hedgehogs were out of sight: "but it doesn't
-matter much," thought Alice, "as all the arches are gone from this side
-of the ground." So she tucked it under her arm, that it might not escape
-again, and went back for a little more conversation with her friend.
-
-When she got back to the Cheshire Cat, she was surprised to find quite a
-large crowd collected round it: there was a dispute going on between the
-executioner, the King, and the Queen, who were all talking at once,
-while all the rest were quite silent, and looked very uncomfortable.
-
-The moment Alice appeared, she was appealed to by all three to settle
-the question, and they repeated their arguments to her, though, as they
-all spoke at once, she found it very hard indeed to make out exactly
-what they said.
-
-[Illustration]
-
-The executioner's argument was, that you couldn't cut off a head unless
-there was a body to cut it off from: that he had never had to do such a
-thing before, and he wasn't going to begin at _his_ time of life.
-
-The King's argument was, that anything that had a head could be
-beheaded, and that you weren't to talk nonsense.
-
-The Queen's argument was, that if something wasn't done about it in less
-than no time, she'd have everybody executed all round. (It was this last
-remark that had made the whole party look so grave and anxious.)
-
-Alice could think of nothing else to say but "It belongs to the Duchess:
-you'd better ask _her_ about it."
-
-"She's in prison," the Queen said to the executioner; "fetch her here."
-And the executioner went off like an arrow.
-
-The Cat's head began fading away the moment he was gone, and by the time
-he had come back with the Duchess, it had entirely disappeared; so the
-King and the executioner ran wildly up and down looking for it, while
-the rest of the party went back to the game.
-
-
-
-
-CHAPTER IX
-
-
-[Sidenote: _The Mock Turtle's Story_]
-
-"YOU can't think how glad I am to see you again, you
-dear old thing!" said the Duchess, as she tucked her arm affectionately
-into Alice's, and they walked off together.
-
-Alice was very glad to find her in such a pleasant temper, and thought
-to herself that perhaps it was only the pepper that had made her so
-savage when they met in the kitchen.
-
-"When _I'm_ a Duchess," she said to herself (not in a very hopeful tone
-though), "I won't have any pepper in my kitchen _at all_. Soup does very
-well without--Maybe it's always pepper that makes people hot-tempered,"
-she went on, very much pleased at having found out a new kind of rule,
-"and vinegar that makes them sour--and camomile that makes them
-bitter--and--barley-sugar and such things that make children
-sweet-tempered. I only wish people knew _that_: then they wouldn't be
-so stingy about it, you know----"
-
-She had quite forgotten the Duchess by this time, and was a little
-startled when she heard her voice close to her ear. "You're thinking
-about something, my dear, and that makes you forget to talk. I can't
-tell you just now what the moral of that is, but I shall remember it in
-a bit."
-
-"Perhaps it hasn't one," Alice ventured to remark.
-
-"Tut, tut, child!" said the Duchess. "Every thing's got a moral, if only
-you can find it." And she squeezed herself up closer to Alice's side as
-she spoke.
-
-Alice did not much like her keeping so close to her: first, because the
-Duchess was _very_ ugly; and secondly, because she was exactly the right
-height to rest her chin on Alice's shoulder, and it was an uncomfortably
-sharp chin. However, she did not like to be rude, so she bore it as well
-as she could. "The game's going on rather better now," she said, by way
-of keeping up the conversation a little.
-
-"'Tis so," said the Duchess: "and the moral of that is--'Oh, 'tis love,
-'tis love, that makes the world go round!'"
-
-"Somebody said," Alice whispered, "that it's done by everybody minding
-their own business!"
-
-"Ah, well! It means much the same thing," said the Duchess, digging her
-sharp little chin into Alice's shoulder as she added, "and the moral of
-_that_ is--'Take care of the sense, and the sounds will take care of
-themselves.'"
-
-"How fond she is of finding morals in things!" Alice thought to herself.
-
-"I dare say you're wondering why I don't put my arm round your waist,"
-the Duchess said after a pause: "the reason is, that I'm doubtful about
-the temper of your flamingo. Shall I try the experiment?"
-
-"He might bite," Alice cautiously replied, not feeling at all anxious to
-have the experiment tried.
-
-"Very true," said the Duchess: "flamingoes and mustard both bite. And
-the moral of that is--'Birds of a feather flock together.'"
-
-"Only mustard isn't a bird," Alice remarked.
-
-"Right, as usual," said the Duchess: "what a clear way you have of
-putting things!"
-
-"It's a mineral, I _think_," said Alice.
-
-"Of course it is," said the Duchess, who seemed ready to agree to
-everything that Alice said: "there's a large mustard-mine near here. And
-the moral of that is--'The more there is of mine, the less there is of
-yours.'"
-
-"Oh, I know!" exclaimed Alice, who had not attended to this last remark.
-"It's a vegetable. It doesn't look like one, but it is."
-
-"I quite agree with you," said the Duchess; "and the moral of that
-is--'Be what you would seem to be'--or if you'd like it put more
-simply--'Never imagine yourself not to be otherwise than what it might
-appear to others that what you were or might have been was not otherwise
-than what you had been would have appeared to them to be otherwise.'"
-
-"I think I should understand that better," Alice said very politely, "if
-I had it written down: but I can't quite follow it as you say it."
-
-"That's nothing to what I could say if I chose," the Duchess replied, in
-a pleased tone.
-
-"Pray don't trouble yourself to say it any longer than that," said
-Alice.
-
-"Oh, don't talk about trouble!" said the Duchess. "I make you a present
-of everything I've said as yet."
-
-"A cheap sort of present!" thought Alice. "I'm glad they don't give
-birthday presents like that!" But she did not venture to say it out
-loud.
-
-"Thinking again?" the Duchess asked with another dig of her sharp little
-chin.
-
-"I've a right to think," said Alice sharply, for she was beginning to
-feel a little worried.
-
-"Just about as much right," said the Duchess, "as pigs have to fly; and
-the m----"
-
-But here, to Alice's great surprise, the Duchess's voice died away, even
-in the middle of her favourite word "moral," and the arm that was linked
-into hers began to tremble. Alice looked up, and there stood the Queen
-in front of them, with her arms folded, frowning like a thunderstorm.
-
-"A fine day, your Majesty!" the Duchess began in a low, weak voice.
-
-"Now, I give you fair warning," shouted the Queen, stamping on the
-ground as she spoke; "either you or your head must be off, and that in
-about half no time! Take your choice!"
-
-The Duchess took her choice, and was gone in a moment.
-
-"Let's go on with the game," the Queen said to Alice; and Alice was too
-much frightened to say a word, but slowly followed her back to the
-croquet-ground.
-
-The other guests had taken advantage of the Queen's absence, and were
-resting in the shade: however, the moment they saw her, they hurried
-back to the game, the Queen merely remarking that a moment's delay would
-cost them their lives.
-
-[Illustration: _The Queen never left off quarrelling with the other
-players, and shouting "Off with his head!" or, "Off with her head!"_]
-
-All the time they were playing the Queen never left off quarrelling with
-the other players, and shouting "Off with his head!" or "Off with her
-head!" Those whom she sentenced were taken into custody by the soldiers,
-who of course had to leave off being arches to do this, so that by the
-end of half an hour or so there were no arches left, and all the
-players, except the King, the Queen, and Alice, were in custody and
-under sentence of execution.
-
-Then the Queen left off, quite out of breath, and said to Alice, "Have
-you seen the Mock Turtle yet?"
-
-"No," said Alice. "I don't even know what a Mock Turtle is."
-
-"It's the thing Mock Turtle Soup is made from," said the Queen.
-
-"I never saw one, or heard of one," said Alice.
-
-"Come on then," said the Queen, "and he shall tell you his history."
-
-As they walked off together, Alice heard the King say in a low voice, to
-the company generally, "You are all pardoned." "Come, _that's_ a good
-thing!" she said to herself, for she had felt quite unhappy at the
-number of executions the Queen had ordered.
-
-They very soon came upon a Gryphon, lying fast asleep in the sun. (If
-you don't know what a Gryphon is, look at the picture.) "Up, lazy
-thing!" said the Queen, "and take this young lady to see the Mock
-Turtle, and to hear his history. I must go back and see after some
-executions I have ordered," and she walked off, leaving Alice alone
-with the Gryphon. Alice did not quite like the look of the creature, but
-on the whole she thought it would be quite as safe to stay with it as to
-go after that savage Queen: so she waited.
-
-The Gryphon sat up and rubbed its eyes: then it watched the Queen till
-she was out of sight: then it chuckled. "What fun!" said the Gryphon,
-half to itself, half to Alice.
-
-"What _is_ the fun?" said Alice.
-
-"Why, _she_," said the Gryphon. "It's all her fancy, that: they never
-executes nobody, you know. Come on!"
-
-"Everybody says 'come on!' here," thought Alice, as she went slowly
-after it: "I never was so ordered about in my life, never!"
-
-[Illustration]
-
-They had not gone far before they saw the Mock Turtle in the distance,
-sitting sad and lonely on a little ledge of rock, and, as they came
-nearer, Alice could hear him sighing as if his heart would break. She
-pitied him deeply. "What is his sorrow?" she asked the Gryphon, and the
-Gryphon answered, very nearly in the same words as before, "It's all
-his fancy, that: he hasn't got no sorrow, you know. Come on!"
-
-So they went up to the Mock Turtle, who looked at them with large eyes
-full of tears, but said nothing.
-
-"This here young lady," said the Gryphon, "she wants to know your
-history, she do."
-
-"I'll tell it her," said the Mock Turtle in a deep, hollow tone; "sit
-down, both of you, and don't speak a word till I've finished."
-
-So they sat down, and nobody spoke for some minutes. Alice thought to
-herself, "I don't see how he can _ever_ finish, if he doesn't begin."
-But she waited patiently.
-
-"Once," said the Mock Turtle at last, with a deep sigh, "I was a real
-Turtle."
-
-These words were followed by a very long silence, broken only by an
-occasional exclamation of "Hjckrrh!" from the Gryphon, and the constant
-heavy sobbing of the Mock Turtle. Alice was very nearly getting up and
-saying "Thank you, sir, for your interesting story," but she could not
-help thinking there _must_ be more to come, so she sat still and said
-nothing.
-
-"When we were little," the Mock Turtle went on at last, more calmly,
-though still sobbing a little now and then, "we went to school in the
-sea. The master was an old Turtle--we used to call him Tortoise----"
-
-"Why did you call him Tortoise, if he wasn't one?" Alice asked.
-
-"We called him Tortoise because he taught us," said the Mock Turtle
-angrily: "really you are very dull!"
-
-"You ought to be ashamed of yourself for asking such a simple question,"
-added the Gryphon; and then they both sat silent and looked at poor
-Alice, who felt ready to sink into the earth. At last the Gryphon said
-to the Mock Turtle, "Drive on, old fellow. Don't be all day about it!"
-and he went on in these words:
-
-"Yes, we went to school in the sea, though you mayn't believe it----"
-
-"I never said I didn't!" interrupted Alice.
-
-"You did," said the Mock Turtle.
-
-"Hold your tongue!" added the Gryphon, before Alice could speak again.
-The Mock Turtle went on:--
-
-"We had the best of educations--in fact, we went to school every
-day----"
-
-"_I've_ been to a day-school, too," said Alice; "you needn't be so proud
-as all that."
-
-"With extras?" asked the Mock Turtle a little anxiously.
-
-"Yes," said Alice, "we learned French and music."
-
-"And washing?" said the Mock Turtle.
-
-"Certainly not!" said Alice indignantly.
-
-"Ah! then yours wasn't a really good school," said the Mock Turtle in a
-tone of relief. "Now at _ours_ they had at the end of the bill, 'French,
-music, _and washing_--extra.'"
-
-"You couldn't have wanted it much," said Alice; "living at the bottom of
-the sea."
-
-"I couldn't afford to learn it," said the Mock Turtle with a sigh. "I
-only took the regular course."
-
-"What was that?" inquired Alice.
-
-"Reeling and Writhing, of course, to begin with," the Mock Turtle
-replied; "and then the different branches of Arithmetic--Ambition,
-Distraction, Uglification, and Derision."
-
-"I never heard of 'Uglification,'" Alice ventured to say. "What is it?"
-
-The Gryphon lifted up both its paws in surprise. "Never heard of
-uglifying!" it exclaimed. "You know what to beautify is, I suppose?"
-
-"Yes," said Alice doubtfully: "it means--to--make--anything--prettier."
-
-"Well, then," the Gryphon went on, "if you don't know what to uglify is,
-you are a simpleton."
-
-Alice did not feel encouraged to ask any more questions about it, so she
-turned to the Mock Turtle and said, "What else had you to learn?"
-
-"Well, there was Mystery," the Mock Turtle replied, counting off the
-subjects on his flappers, "--Mystery, ancient and modern, with
-Seaography: then Drawling--the Drawling-master was an old conger-eel,
-that used to come once a week: _he_ taught us Drawling, Stretching, and
-Fainting in Coils."
-
-"What was _that_ like?" said Alice.
-
-"Well, I can't show it you myself," the Mock Turtle said: "I'm too
-stiff. And the Gryphon never learnt it."
-
-"Hadn't time," said the Gryphon: "I went to the Classical master,
-though. He was an old crab, _he_ was."
-
-"I never went to him," the Mock Turtle said with a sigh: "he taught
-Laughing and Grief, they used to say."
-
-"So he did, so he did," said the Gryphon, sighing in his turn; and both
-creatures hid their faces in their paws.
-
-"And how many hours a day did you do lessons?" said Alice, in a hurry to
-change the subject.
-
-"Ten hours the first day," said the Mock Turtle: "nine the next, and so
-on."
-
-"What a curious plan!" exclaimed Alice.
-
-"That's the reason they're called lessons," the Gryphon remarked:
-"because they lessen from day to day."
-
-This was quite a new idea to Alice, and she thought over it a little
-before she made her next remark. "Then the eleventh day must have been a
-holiday."
-
-"Of course it was," said the Mock Turtle.
-
-"And how did you manage on the twelfth?" Alice went on eagerly.
-
-"That's enough about lessons," the Gryphon interrupted in a very decided
-tone: "tell her something about the games now."
-
-
-
-
-CHAPTER X
-
-
-[Sidenote: _The Lobster Quadrille_]
-
-THE Mock Turtle sighed deeply, and drew the back of one
-flapper across his eyes. He looked at Alice, and tried to speak, but,
-for a minute or two, sobs choked his voice. "Same as if he had a bone in
-his throat," said the Gryphon: and it set to work shaking him and
-punching him in the back. At last the Mock Turtle recovered his voice,
-and, with tears running down his cheeks, went on again:
-
-"You may not have lived much under the sea--" ("I haven't," said Alice)
-"and perhaps you were never even introduced to a lobster--" (Alice began
-to say "I once tasted----" but checked herself hastily, and said "No,
-never") "--so you can have no idea what a delightful thing a Lobster
-Quadrille is!"
-
-"No, indeed," said Alice. "What sort of a dance is it?"
-
-"Why," said the Gryphon, "you first form into a line along the
-sea-shore----"
-
-"Two lines!" cried the Mock Turtle. "Seals, turtles, and so on; then,
-when you've cleared the jelly-fish out of the way----"
-
-"_That_ generally takes some time," interrupted the Gryphon.
-
-"--you advance twice----"
-
-"Each with a lobster as a partner!" cried the Gryphon.
-
-"Of course," the Mock Turtle said: "advance twice, set to partners----"
-
-"--change lobsters, and retire in same order," continued the Gryphon.
-
-"Then, you know," the Mock Turtle went on, "you throw the----"
-
-"The lobsters!" shouted the Gryphon, with a bound into the air.
-
-"--as far out to sea as you can----"
-
-"Swim, after them!" screamed the Gryphon.
-
-"Turn a somersault in the sea!" cried the Mock Turtle, capering wildly
-about.
-
-"Change lobsters again!" yelled the Gryphon.
-
-"Back to land again, and--that's all the first figure," said the Mock
-Turtle, suddenly dropping his voice; and the two creatures, who had been
-jumping about like mad things all this time, sat down again very sadly
-and quietly, and looked at Alice.
-
-"It must be a very pretty dance," said Alice, timidly.
-
-"Would you like to see a little of it?" said the Mock Turtle.
-
-"Very much indeed," said Alice.
-
-"Come, let's try the first figure!" said the Mock Turtle to the Gryphon.
-"We can do it without lobsters, you know. Which shall sing?"
-
-"Oh, _you_ sing," said the Gryphon. "I've forgotten the words."
-
-So they began solemnly dancing round and round Alice, every now and then
-treading on her toes when they passed too close, and waving their
-forepaws to mark the time, while the Mock Turtle sang this, very slowly
-and sadly:--
-
- "Will you walk a little faster?" said a whiting to a snail,
- "There's a porpoise close behind us, and he's treading on my tail.
- See how eagerly the lobsters and the turtles all advance!
- They are waiting on the shingle--will you come and join the dance?
- Will you, won't you, will you, won't you, will you join the dance?
- Will you, won't you, will you, won't you, won't you join the dance?
-
- "You can really have no notion how delightful it will be,
- When they take us up and throw us, with the lobsters, out to sea!"
- But the snail replied: "Too far, too far!" and gave a look askance--
- Said he thanked the whiting kindly, but he would not join the dance.
- Would not, could not, would not, could not, would not join the dance.
- Would not, could not, would not, could not, could not join the dance.
-
- "What matters it how far we go?" his scaly friend replied;
- "There is another shore, you know, upon the other side.
- The further off from England the nearer is to France--
- Then turn not pale, beloved snail, but come and join the dance.
- Will you, won't you, will you, won't you, will you join the dance?
- Will you, won't you, will you, won't you, won't you join the dance?"
-
-"Thank you, it's a very interesting dance to watch," said Alice, feeling
-very glad that it was over at last: "and I do so like that curious song
-about the whiting!"
-
-"Oh, as to the whiting," said the Mock Turtle, "they--you've seen them,
-of course?"
-
-"Yes," said Alice, "I've often seen them at dinn----" she checked
-herself hastily.
-
-"I don't know where Dinn may be," said the Mock Turtle, "but if you've
-seen them so often, of course you know what they're like."
-
-"I believe so," Alice replied thoughtfully. "They have their tails in
-their mouths--and they're all over crumbs."
-
-"You're wrong about the crumbs," said the Mock Turtle: "crumbs would all
-wash off in the sea. But they _have_ their tails in their mouths; and
-the reason is--" here the Mock Turtle yawned and shut his eyes. "Tell
-her about the reason and all that," he said to the Gryphon.
-
-"The reason is," said the Gryphon, "that they _would_ go with the
-lobsters to the dance. So they got thrown out to sea. So they had to
-fall a long way. So they got their tails fast in their mouths. So they
-couldn't get them out again. That's all."
-
-"Thank you," said Alice. "It's very interesting. I never knew so much
-about a whiting before."
-
-"I can tell you more than that, if you like," said the Gryphon. "Do you
-know why it's called a whiting?"
-
-"I never thought about it," said Alice. "Why?"
-
-"_It does the boots and shoes_," the Gryphon replied very solemnly.
-
-Alice was thoroughly puzzled. "Does the boots and shoes!" she repeated
-in a wondering tone.
-
-"Why, what are _your_ shoes done with?" said the Gryphon. "I mean, what
-makes them so shiny?"
-
-Alice looked down at them, and considered a little before she gave her
-answer. "They're done with blacking, I believe."
-
-"Boots and shoes under the sea," the Gryphon went on in a deep voice,
-"are done with whiting. Now you know."
-
-"And what are they made of?" Alice asked in a tone of great curiosity.
-
-"Soles and eels, of course," the Gryphon replied rather impatiently:
-"any shrimp could have told you that."
-
-"If I'd been the whiting," said Alice, whose thoughts were still running
-on the song, "I'd have said to the porpoise, 'Keep back, please: we
-don't want _you_ with us!'"
-
-"They were obliged to have him with them," the Mock Turtle said: "no
-wise fish would go anywhere without a porpoise."
-
-"Wouldn't it really?" said Alice in a tone of great surprise.
-
-"Of course not," said the Mock Turtle: "why, if a fish came to _me_, and
-told me he was going a journey, I should say, 'With what porpoise?'"
-
-"Don't you mean 'purpose'?" said Alice.
-
-"I mean what I say," the Mock Turtle replied in an offended tone. And
-the Gryphon added, "Come, let's hear some of _your_ adventures."
-
-[Illustration: _The Mock Turtle drew a long breath and said, "That's
-very curious"_]
-
-"I could tell you my adventures--beginning from this morning," said
-Alice a little timidly: "but it's no use going back to yesterday,
-because I was a different person then."
-
-"Explain all that," said the Mock Turtle.
-
-"No, no! The adventures first," said the Gryphon in an impatient tone:
-"explanations take such a dreadful time."
-
-So Alice began telling them her adventures from the time when she first
-saw the White Rabbit. She was a little nervous about it just at first,
-the two creatures got so close to her, one on each side, and opened
-their eyes and mouths so _very_ wide, but she gained courage as she went
-on. Her listeners were perfectly quiet till she got to the part about
-her repeating "_You are old, Father William_," to the Caterpillar, and
-the words all coming different, and then the Mock Turtle drew a long
-breath, and said, "That's very curious."
-
-"It's all about as curious as it can be," said the Gryphon.
-
-"It all came different!" the Mock Turtle repeated thoughtfully. "I
-should like to hear her repeat something now. Tell her to begin." He
-looked at the Gryphon as if he thought it had some kind of authority
-over Alice.
-
-"Stand up and repeat '_'Tis the voice of the sluggard_,'" said the
-Gryphon.
-
-"How the creatures order one about, and make one repeat lessons!"
-thought Alice. "I might as well be at school at once." However, she got
-up, and began to repeat it, but her head was so full of the Lobster
-Quadrille, that she hardly knew what she was saying, and the words came
-very queer indeed:--
-
- "'Tis the voice of the Lobster; I heard him declare,
- 'You have baked me too brown, I must sugar my hair.'
- As a duck with its eyelids, so he with his nose
- Trims his belt and his buttons, and turns out his toes.
- When the sands are all dry, he is gay as a lark,
- And will talk in contemptuous tones of the Shark:
- But, when the tide rises and sharks are around,
- His voice has a timid and tremulous sound."
-
-"That's different from what _I_ used to say when I was a child," said
-the Gryphon.
-
-"Well, _I_ never heard it before," said the Mock Turtle: "but it sounds
-uncommon nonsense."
-
-Alice said nothing; she had sat down with her face in her hands,
-wondering if anything would _ever_ happen in a natural way again.
-
-"I should like to have it explained," said the Mock Turtle.
-
-"She ca'n't explain it," hastily said the Gryphon. "Go on with the next
-verse."
-
-"But about his toes?" the Mock Turtle persisted. "How _could_ he turn
-them out with his nose, you know?"
-
-"It's the first position in dancing," Alice said; but was dreadfully
-puzzled by the whole thing, and longed to change the subject.
-
-"Go on with the next verse," the Gryphon repeated: "it begins '_I passed
-by his garden_.'"
-
-Alice did not dare to disobey, though she felt sure it would all come
-wrong, and she went on in a trembling voice:
-
- "I passed by his garden, and marked, with one eye,
- How the Owl and the Panther were sharing a pie:
- The Panther took pie-crust, and gravy, and meat,
- While the Owl had the dish as its share of the treat.
- When the pie was all finished, the Owl, as a boon,
- Was kindly permitted to pocket the spoon:
- While the Panther received knife and fork with a growl,
- And concluded the banquet by----"
-
-"What _is_ the use of repeating all that stuff," the Mock Turtle
-interrupted, "if you don't explain it as you go on? It's by far the most
-confusing thing _I_ ever heard!"
-
-[Illustration]
-
-"Yes, I think you'd better leave off," said the Gryphon: and Alice was
-only too glad to do so.
-
-"Shall we try another figure of the Lobster Quadrille?" the Gryphon went
-on. "Or would you like the Mock Turtle to sing you another song?"
-
-"Oh, a song, please, if the Mock Turtle would be so kind," Alice
-replied, so eagerly that the Gryphon said, in a rather offended tone,
-"H'm! No accounting for tastes! Sing her '_Turtle Soup_,' will you, old
-fellow?"
-
-The Mock Turtle sighed deeply, and began, in a voice choked with sobs,
-to sing this:--
-
- "Beautiful Soup, so rich and green,
- Waiting in a hot tureen!
- Who for such dainties would not stoop?
- Soup of the evening, beautiful Soup!
- Soup of the evening, beautiful Soup!
- Beau--ootiful Soo--oop!
- Beau--ootiful Soo--oop!
- Soo--oop of the e--e--evening,
- Beautiful, beautiful Soup!
-
- "Beautiful Soup! Who cares for fish,
- Game, or any other dish?
- Who would not give all else for two
- Pennyworth only of beautiful Soup?
- Pennyworth only of beautiful Soup?
- Beau--ootiful Soo--oop!
- Beau--ootiful Soo--oop!
- Soo--oop of the e--e--evening,
- Beautiful, beauti--FUL SOUP!"
-
-"Chorus again!" cried the Gryphon, and the Mock Turtle had just begun
-to repeat it, when a cry of "The trial's beginning!" was heard in the
-distance.
-
-"Come on!" cried the Gryphon, and, taking Alice by the hand, it hurried
-off, without waiting for the end of the song.
-
-"What trial is it?" Alice panted as she ran; but the Gryphon only
-answered "Come on!" and ran the faster, while more and more faintly
-came, carried on the breeze that followed them, the melancholy words:--
-
- "Soo--oop of the e--e--evening,
- Beautiful, beautiful Soup!"
-
-
-
-
-CHAPTER XI
-
-
-[Sidenote: _Who Stole the Tarts?_]
-
-THE King and Queen of Hearts were seated on their throne
-when they arrived, with a great crowd assembled about them--all sorts of
-little birds and beasts, as well as the whole pack of cards: the Knave
-was standing before them, in chains, with a soldier on each side to
-guard him; and near the King was the White Rabbit, with a trumpet in one
-hand, and a scroll of parchment in the other. In the very middle of the
-court was a table, with a large dish of tarts upon it: they looked so
-good, that it made Alice quite hungry to look at them--"I wish they'd
-get the trial done," she thought, "and hand round the refreshments!" But
-there seemed to be no chance of this, so she began looking about her, to
-pass away the time.
-
-Alice had never been in a court of justice before, but she had read
-about them in books, and she was quite pleased to find that she knew the
-name of nearly everything there. "That's the judge," she said to
-herself, "because of his great wig."
-
-The judge, by the way, was the King; and as he wore his crown over the
-wig, he did not look at all comfortable, and it was certainly not
-becoming.
-
-"And that's the jury-box," thought Alice, "and those twelve creatures,"
-(she was obliged to say "creatures," you see, because some of them were
-animals, and some were birds,) "I suppose they are the jurors." She said
-this last word two or three times over to herself, being rather proud of
-it: for she thought, and rightly too, that very few little girls of her
-age knew the meaning of it at all. However, "jurymen" would have done
-just as well.
-
-The twelve jurors were all writing very busily on slates. "What are they
-all doing?" Alice whispered to the Gryphon. "They can't have anything to
-put down yet, before the trial's begun."
-
-[Illustration: _Who stole the tarts?_]
-
-"They're putting down their names," the Gryphon whispered in reply,
-"for fear they should forget them before the end of the trial."
-
-"Stupid things!" Alice began in a loud, indignant voice, but she stopped
-hastily, for the White Rabbit cried out "Silence in the court!" and the
-King put on his spectacles and looked anxiously round, to see who was
-talking.
-
-Alice could see, as well as if she were looking over their shoulders,
-that all the jurors were writing down "stupid things!" on their slates,
-and she could even make out that one of them didn't know how to spell
-"stupid," and that he had to ask his neighbour to tell him. "A nice
-muddle their slates will be in before the trial's over!" thought Alice.
-
-One of the jurors had a pencil that squeaked. This, of course, Alice
-could _not_ stand, and she went round the court and got behind him, and
-very soon found an opportunity of taking it away. She did it so quickly
-that the poor little juror (it was Bill, the Lizard) could not make out
-at all what had become of it; so, after hunting all about for it, he
-was obliged to write with one finger for the rest of the day; and this
-was of very little use, as it left no mark on the slate.
-
-"Herald, read the accusation!" said the King.
-
-On this the White Rabbit blew three blasts on the trumpet, and then
-unrolled the parchment scroll, and read as follows:
-
- "The Queen of Hearts, she made some tarts,
- All on a summer day:
- The Knave of Hearts, he stole those tarts,
- And took them quite away!"
-
-"Consider your verdict," the King said to the jury.
-
-"Not yet, not yet!" the Rabbit hastily interrupted. "There's a great
-deal to come before that!"
-
-"Call the first witness," said the King; and the Rabbit blew three
-blasts on the trumpet, and called out "First witness!"
-
-The first witness was the Hatter. He came in with a teacup in one hand
-and a piece of bread-and-butter in the other. "I beg pardon, your
-Majesty," he began, "for bringing these in; but I hadn't quite finished
-my tea when I was sent for."
-
-"You ought to have finished," said the King. "When did you begin?"
-
-The Hatter looked at the March Hare, who had followed him into the
-court, arm-in-arm with the Dormouse. "Fourteenth of March, I _think_ it
-was," he said.
-
-"Fifteenth," said the March Hare.
-
-"Sixteenth," said the Dormouse.
-
-"Write that down," the King said to the jury, and the jury eagerly wrote
-down all three dates on their slates, and then added them up, and
-reduced the answer to shillings and pence.
-
-"Take off your hat," the King said to the Hatter.
-
-"It isn't mine," said the Hatter.
-
-"_Stolen!_" the King exclaimed, turning to the jury, who instantly made
-a memorandum of the fact.
-
-"I keep them to sell," the Hatter added as an explanation: "I've none of
-my own. I'm a hatter."
-
-Here the Queen put on her spectacles, and began staring hard at the
-Hatter, who turned pale and fidgeted.
-
-"Give your evidence," said the King; "and don't be nervous, or I'll have
-you executed on the spot."
-
-This did not seem to encourage the witness at all: he kept shifting from
-one foot to the other, looking uneasily at the Queen, and in his
-confusion he bit a large piece out of his teacup instead of the
-bread-and-butter.
-
-Just at this moment Alice felt a very curious sensation, which puzzled
-her a good deal until she made out what it was: she was beginning to
-grow larger again, and she thought at first she would get up and leave
-the court; but on second thoughts she decided to remain where she was as
-long as there was room for her.
-
-"I wish you wouldn't squeeze so," said the Dormouse, who was sitting
-next to her. "I can hardly breathe."
-
-"I can't help it," said Alice very meekly: "I'm growing."
-
-"You've no right to grow _here_," said the Dormouse.
-
-"Don't talk nonsense," said Alice more boldly: "you know you're growing
-too."
-
-"Yes, but _I_ grow at a reasonable pace," said the Dormouse; "not in
-that ridiculous fashion." And he got up very sulkily and crossed over to
-the other side of the court.
-
-All this time the Queen had never left off staring at the Hatter, and,
-just as the Dormouse crossed the court, she said to one of the officers
-of the court, "Bring me the list of the singers in the last concert!" on
-which the wretched Hatter trembled so, that he shook off both his shoes.
-
-"Give your evidence," the King repeated angrily, "or I'll have you
-executed, whether you're nervous or not."
-
-"I'm a poor man, your Majesty," the Hatter began, in a trembling voice,
-"--and I hadn't begun my tea--not above a week or so--and what with the
-bread-and-butter getting so thin--and the twinkling of the tea----"
-
-"The twinkling of _what_?" said the King.
-
-"It _began_ with the tea," the Hatter replied.
-
-"Of course twinkling _begins_ with a T!" said the King sharply. "Do you
-take me for a dunce? Go on!"
-
-"I'm a poor man," the Hatter went on, "and most things twinkled after
-that--only the March Hare said----"
-
-"I didn't!" the March Hare interrupted in a great hurry.
-
-"You did!" said the Hatter.
-
-"I deny it!" said the March Hare.
-
-"He denies it," said the King: "leave out that part."
-
-"Well, at any rate, the Dormouse said----" the Hatter went on, looking
-anxiously round to see if he would deny it too: but the Dormouse denied
-nothing, being fast asleep.
-
-"After that," continued the Hatter, "I cut some more
-bread-and-butter----"
-
-"But what did the Dormouse say?" one of the jury asked.
-
-"That I can't remember," said the Hatter.
-
-"You _must_ remember," remarked the King, "or I'll have you executed."
-
-The miserable Hatter dropped his teacup and bread-and-butter, and went
-down on one knee. "I'm a poor man, your Majesty," he began.
-
-"You're a _very_ poor _speaker_," said the King.
-
-Here one of the guinea-pigs cheered, and was immediately suppressed by
-the officers of the court. (As that is rather a hard word, I will just
-explain to you how it was done. They had a large canvas bag, which tied
-up at the mouth with strings: into this they slipped the guinea-pig,
-head first, and then sat upon it.)
-
-"I'm glad I've seen that done," thought Alice. "I've so often read in
-the newspapers, at the end of trials, 'There was some attempt at
-applause, which was immediately suppressed by the officers of the
-court,' and I never understood what it meant till now."
-
-"If that's all you know about it, you may stand down," continued the
-King.
-
-"I can't go no lower," said the Hatter: "I'm on the floor, as it is."
-
-"Then you may _sit_ down," the King replied.
-
-Here the other guinea-pig cheered, and was suppressed.
-
-"Come, that finishes the guinea-pigs!" thought Alice. "Now we shall get
-on better."
-
-"I'd rather finish my tea," said the Hatter, with an anxious look at
-the Queen, who was reading the list of singers.
-
-"You may go," said the King; and the Hatter hurriedly left the court,
-without even waiting to put his shoes on.
-
-"--and just take his head off outside," the Queen added to one of the
-officers; but the Hatter was out of sight before the officer could get
-to the door.
-
-"Call the next witness!" said the King.
-
-The next witness was the Duchess's cook. She carried the pepper-box in
-her hand, and Alice guessed who it was, even before she got into the
-court, by the way the people near the door began sneezing all at once.
-
-"Give your evidence," said the King.
-
-"Sha'n't," said the cook.
-
-The King looked anxiously at the White Rabbit, who said in a low voice,
-"Your Majesty must cross-examine _this_ witness."
-
-"Well, if I must, I must," the King said with a melancholy air, and,
-after folding his arms and frowning at the cook till his eyes were
-nearly out of sight, he said in a deep voice, "What are tarts made of?"
-
-"Pepper, mostly," said the cook.
-
-"Treacle," said a sleepy voice behind her.
-
-"Collar that Dormouse," the Queen shrieked out. "Behead that Dormouse!
-Turn that Dormouse out of court! Suppress him! Pinch him! Off with his
-whiskers."
-
-For some minutes the whole court was in confusion, getting the Dormouse
-turned out, and, by the time they had settled down again, the cook had
-disappeared.
-
-[Illustration]
-
-"Never mind!" said the King, with an air of great relief. "Call the next
-witness." And he added in an undertone to the Queen, "Really, my dear,
-_you_ must cross-examine the next witness. It quite makes my forehead
-ache!"
-
-Alice watched the White Rabbit as he fumbled over the list, feeling very
-curious to see what the next witness would be like, "--for they haven't
-got much evidence _yet_," she said to herself. Imagine her surprise,
-when the White Rabbit read out, at the top of his shrill little voice,
-the name "Alice!"
-
-
-
-
-CHAPTER XII
-
-
-[Sidenote: _Alice's Evidence_]
-
-"HERE!" cried Alice, quite forgetting in the flurry of
-the moment how large she had grown in the last few minutes, and she
-jumped up in such a hurry that she tipped over the jury-box with the
-edge of her skirt, upsetting all the jurymen on to the heads of the
-crowd below, and there they lay sprawling about, reminding her very much
-of a globe of gold-fish she had accidentally upset the week before.
-
-"Oh, I _beg_ your pardon!" she exclaimed in a tone of great dismay, and
-began picking them up again as quickly as she could, for the accident of
-the gold-fish kept running in her head, and she had a vague sort of idea
-that they must be collected at once and put back into the jury-box, or
-they would die.
-
-"The trial cannot proceed," said the King in a very grave voice, "until
-all the jurymen are back in their proper places--_all_," he repeated
-with great emphasis, looking hard at Alice as he said so.
-
-Alice looked at the jury-box, and saw that, in her haste, she had put
-the Lizard in head downwards, and the poor little thing was waving its
-tail about in a melancholy way, being quite unable to move. She soon got
-it out again, and put it right; "not that it signifies much," she said
-to herself; "I should think it would be _quite_ as much use in the trial
-one way up as the other."
-
-As soon as the jury had a little recovered from the shock of being
-upset, and their slates and pencils had been found and handed back to
-them, they set to work very diligently to write out a history of the
-accident, all except the Lizard, who seemed too much overcome to do
-anything but sit with its mouth open, gazing up into the roof of the
-court.
-
-"What do you know about this business?" the King said to Alice.
-
-"Nothing," said Alice.
-
-"Nothing _whatever_?" persisted the King.
-
-"Nothing whatever," said Alice.
-
-"That's very important," the King said, turning to the jury. They were
-just beginning to write this down on their slates, when the White Rabbit
-interrupted: "_Un_important, your Majesty means, of course," he said in
-a very respectful tone, but frowning and making faces at him as he
-spoke.
-
-"_Un_important, of course, I meant," the King hastily said, and went on
-himself in an undertone,"important--unimportant--unimportant--important----"
-as if he were trying which word sounded best.
-
-Some of the jury wrote it down "important," and some "unimportant."
-Alice could see this, as she was near enough to look over their slates;
-"but it doesn't matter a bit," she thought to herself.
-
-At this moment the King, who had been for some time busily writing in
-his note-book, called out "Silence!" and read out from his book, "Rule
-Forty-two. _All persons more than a mile high to leave the court._"
-
-Everybody looked at Alice.
-
-"_I'm_ not a mile high," said Alice.
-
-"You are," said the King.
-
-"Nearly two miles high," added the Queen.
-
-"Well, I sha'n't go, at any rate," said Alice: "besides, that's not a
-regular rule: you invented it just now."
-
-"It's the oldest rule in the book," said the King.
-
-"Then it ought to be Number One," said Alice.
-
-The King turned pale, and shut his note-book hastily. "Consider your
-verdict," he said to the jury, in a low trembling voice.
-
-"There's more evidence to come yet, please your Majesty," said the White
-Rabbit, jumping up in a great hurry: "this paper has just been picked
-up."
-
-"What's in it?" said the Queen.
-
-"I haven't opened it yet," said the White Rabbit, "but it seems to be a
-letter, written by the prisoner to--to somebody."
-
-"It must have been that," said the King, "unless it was written to
-nobody, which isn't usual, you know."
-
-"Who is it directed to?" said one of the jurymen.
-
-"It isn't directed at all," said the White Rabbit; "in fact, there's
-nothing written on the _outside_." He unfolded the paper as he spoke,
-and added "It isn't a letter after all: it's a set of verses."
-
-"Are they in the prisoner's handwriting?" asked another of the jurymen.
-
-"No, they're not," said the White Rabbit, "and that's the queerest thing
-about it." (The jury all looked puzzled.)
-
-"He must have imitated somebody else's hand," said the King. (The jury
-all brightened up again.)
-
-"Please your Majesty," said the Knave, "I didn't write it, and they
-can't prove that I did: there's no name signed at the end."
-
-"If you didn't sign it," said the King, "that only makes the matter
-worse. You _must_ have meant some mischief, or else you'd have signed
-your name like an honest man."
-
-There was a general clapping of hands at this: it was the first really
-clever thing the King had said that day.
-
-"That _proves_ his guilt, of course," said the Queen: "so, off with----"
-
-"It doesn't prove anything of the sort!" said Alice. "Why, you don't
-even know what they're about!"
-
-"Read them," said the King.
-
-The White Rabbit put on his spectacles. "Where shall I begin, please
-your Majesty?" he asked.
-
-"Begin at the beginning," the King said gravely, "and go on till you
-come to the end; then stop."
-
-There was dead silence in the court, whilst the White Rabbit read out
-these verses:--
-
- "They told me you had been to her,
- And mentioned me to him:
- She gave me a good character,
- But said I could not swim.
-
- He sent them word I had not gone,
- (We know it to be true):
- If she should push the matter on,
- What would become of you?
-
- I gave her one, they gave him two,
- You gave us three or more;
- They all returned from him to you,
- Though they were mine before.
-
- If I or she should chance to be
- Involved in this affair,
- He trusts to you to set them free,
- Exactly as we were.
-
- My notion was that you had been
- (Before she had this fit)
- An obstacle that came between
- Him, and ourselves, and it.
-
- Don't let him know she liked them best,
- For this must ever be
- A secret, kept from all the rest,
- Between yourself and me."
-
-"That's the most important piece of evidence we've heard yet," said the
-King, rubbing his hands; "so now let the jury----"
-
-"If any of them can explain it," said Alice, (she had grown so large in
-the last few minutes that she wasn't a bit afraid of interrupting him,)
-"I'll give him sixpence. _I_ don't believe there's an atom of meaning in
-it."
-
-The jury all wrote down on their slates, "_She_ doesn't believe there's
-an atom of meaning in it," but none of them attempted to explain the
-paper.
-
-"If there's no meaning in it," said the King, "that saves a world of
-trouble, you know, as we needn't try to find any. And yet I don't
-know," he went on, spreading out the verses on his knee, and looking at
-them with one eye; "I seem to see some meaning in them after all.
-'----_said I could not swim_--' you can't swim can you?" he added,
-turning to the Knave.
-
-The Knave shook his head sadly. "Do I look like it?" he said. (Which he
-certainly did _not_, being made entirely of cardboard.)
-
-"All right, so far," said the King, as he went on muttering over the
-verses to himself: "'_We know it to be true_--' that's the jury, of
-course--'_If she should push the matter on_'--that must be the
-Queen--'_What would become of you?_'--What, indeed!--'_I gave her one,
-they gave him two_--' why, that must be what he did with the tarts, you
-know----"
-
-"But it goes on '_they all returned from him to you_,'" said Alice.
-
-"Why, there they are!" said the King triumphantly, pointing to the tarts
-on the table. "Nothing can be clearer than _that_. Then again--'_before
-she had this fit_--' you never had _fits_, my dear, I think?" he said to
-the Queen.
-
-"Never!" said the Queen furiously, throwing an inkstand at the Lizard
-as she spoke. (The unfortunate little Bill had left off writing on his
-slate with one finger, as he found it made no mark; but he now hastily
-began again, using the ink, that was trickling down his face, as long as
-it lasted.)
-
-"Then the words don't _fit_ you," said the King, looking round the court
-with a smile. There was a dead silence.
-
-"It's a pun!" the King added in an angry tone, and everybody laughed.
-
-"Let the jury consider their verdict," the King said, for about the
-twentieth time that day.
-
-"No, no!" said the Queen. "Sentence first--verdict afterwards."
-
-"Stuff and nonsense!" said Alice loudly. "The idea of having the
-sentence first!"
-
-"Hold your tongue!" said the Queen, turning purple.
-
-"I won't!" said Alice.
-
-"Off with her head!" the Queen shouted at the top of her voice. Nobody
-moved.
-
-"Who cares for _you_?" said Alice (she had grown to her full size by
-this time). "You're nothing but a pack of cards!"
-
-[Illustration: _At this the whole pack rose up into the air, and came
-flying down upon her_]
-
-At this the whole pack rose up into the air, and came flying down upon
-her: she gave a little scream, half of fright and half of anger, and
-tried to beat them off, and found herself lying on the bank, with her
-head in the lap of her sister, who was gently brushing away some dead
-leaves that had fluttered down from the trees upon her face.
-
-"Wake up, Alice dear!" said her sister. "Why, what a long sleep you've
-had!"
-
-"Oh, I've had such a curious dream!" said Alice, and she told her
-sister, as well as she could remember them, all these strange Adventures
-of hers that you have just been reading about; and when she had
-finished, her sister kissed her, and said "It _was_ a curious dream,
-dear, certainly: but now run in to your tea; it's getting late." So
-Alice got up and ran off, thinking while she ran, as well she might,
-what a wonderful dream it had been.
-
-
-
-
-BUT her sister sat still just as she had left her, leaning her head,
-watching the setting sun, and thinking of little Alice and all her
-wonderful Adventures, till she too began dreaming after a fashion, and
-this was her dream:
-
-First, she dreamed of little Alice herself, and once again the tiny
-hands were clasped upon her knee, and the bright eager eyes were looking
-up into hers--she could hear the very tones of her voice, and see that
-queer little toss of her head to keep back the wandering hair that
-_would_ always get into her eyes--and still as she listened, or seemed
-to listen, the whole place around her became alive with the strange
-creatures of her little sister's dream.
-
-The long grass rustled at her feet as the White Rabbit hurried by--the
-frightened Mouse splashed his way through the neighbouring pool--she
-could hear the rattle of the teacups as the March Hare and his friends
-shared their never-ending meal, and the shrill voice of the Queen
-ordering off her unfortunate guests to execution--once more the pig-baby
-was sneezing on the Duchess' knee, while plates and dishes crashed
-around it--once more the shriek of the Gryphon, the squeaking of the
-Lizard's slate-pencil, and the choking of the suppressed guinea-pigs,
-filled the air, mixed up with the distant sobs of the miserable Mock
-Turtle.
-
-So she sat on with closed eyes, and half believed herself in Wonderland,
-though she knew she had but to open them again, and all would change to
-dull reality--the grass would be only rustling in the wind, and the pool
-rippling to the waving of the reeds--the rattling teacups would change
-to the tinkling sheep-bells, and the Queen's shrill cries to the voice
-of the shepherd boy--and the sneeze of the baby, the shriek of the
-Gryphon, and all the other queer noises, would change (she knew) to the
-confused clamour of the busy farm-yard--while the lowing of the cattle
-in the distance would take the place of the Mock Turtle's heavy sobs.
-
-Lastly, she pictured to herself how this same little sister of hers
-would, in the after-time, be herself a grown woman; and how she would
-keep, through all her riper years, the simple and loving heart of her
-childhood: and how she would gather about her other little children,
-and make _their_ eyes bright and eager with many a strange tale, perhaps
-even with the dream of Wonderland of long ago: and how she would feel
-with all their simple sorrows, and find a pleasure in all their simple
-joys, remembering her own child-life, and the happy summer days.
-
-
-THE END
-
-
-
-
- ILLUSTRATIONS REPRODUCED BY HENTSCHEL COLOURTYPE
- TEXT PRINTED BY BALLANTYNE & COMPANY LTD
- AT THE BALLANTYNE PRESS
- TAVISTOCK STREET
- LONDON
-
- * * * * *
-
-Transcriber's Notes:
-
-Page 8, opening quote added to text (doorway; "and even if)
-
-Page 33, "she" changed to "she's" (And she's such a)
-
-Page 37, "quiet" changed to "quite" (I'm quite tired of)
-
-Page 41, colon changed to period (arm, yer honour.)
-
-Page 42, "wont" changed to "want" (want to stay)
-
-Page 66, closing quotation mark added (to-morrow----")
-
-Page 69, single quotation mark changed to double (cat," said the
-Duchess)
-
-Page 91, word "to" added to text (minute or two to)
-
-Page 103, word "as" added to the text (just as she had)
-
-Page 104, "hedge-hog" changed to "hedgehog" (send the hedgehog to)
-
-Page 126, end parenthesis added ("No, never")
-
-Page 153, added an apostrophe (What's in it?)
-
-
-
-
-
-
-End of Project Gutenberg's Alice's Adventures in Wonderland, by Lewis Carroll
-
-*** END OF THIS PROJECT GUTENBERG EBOOK ALICE'S ADVENTURES IN WONDERLAND ***
-
-***** This file should be named 28885-8.txt or 28885-8.zip *****
-This and all associated files of various formats will be found in:
- http://www.gutenberg.org/2/8/8/8/28885/
-
-Produced by Jana Srna, Emmy and the Online Distributed
-Proofreading Team at http://www.pgdp.net (This file was
-produced from images generously made available by the
-University of Florida Digital Collections.)
-
-
-Updated editions will replace the previous one--the old editions
-will be renamed.
-
-Creating the works from public domain print editions means that no
-one owns a United States copyright in these works, so the Foundation
-(and you!) can copy and distribute it in the United States without
-permission and without paying copyright royalties. Special rules,
-set forth in the General Terms of Use part of this license, apply to
-copying and distributing Project Gutenberg-tm electronic works to
-protect the PROJECT GUTENBERG-tm concept and trademark. Project
-Gutenberg is a registered trademark, and may not be used if you
-charge for the eBooks, unless you receive specific permission. If you
-do not charge anything for copies of this eBook, complying with the
-rules is very easy. You may use this eBook for nearly any purpose
-such as creation of derivative works, reports, performances and
-research. They may be modified and printed and given away--you may do
-practically ANYTHING with public domain eBooks. Redistribution is
-subject to the trademark license, especially commercial
-redistribution.
-
-
-
-*** START: FULL LICENSE ***
-
-THE FULL PROJECT GUTENBERG LICENSE
-PLEASE READ THIS BEFORE YOU DISTRIBUTE OR USE THIS WORK
-
-To protect the Project Gutenberg-tm mission of promoting the free
-distribution of electronic works, by using or distributing this work
-(or any other work associated in any way with the phrase "Project
-Gutenberg"), you agree to comply with all the terms of the Full Project
-Gutenberg-tm License (available with this file or online at
-http://gutenberg.net/license).
-
-
-Section 1. General Terms of Use and Redistributing Project Gutenberg-tm
-electronic works
-
-1.A. By reading or using any part of this Project Gutenberg-tm
-electronic work, you indicate that you have read, understand, agree to
-and accept all the terms of this license and intellectual property
-(trademark/copyright) agreement. If you do not agree to abide by all
-the terms of this agreement, you must cease using and return or destroy
-all copies of Project Gutenberg-tm electronic works in your possession.
-If you paid a fee for obtaining a copy of or access to a Project
-Gutenberg-tm electronic work and you do not agree to be bound by the
-terms of this agreement, you may obtain a refund from the person or
-entity to whom you paid the fee as set forth in paragraph 1.E.8.
-
-1.B. "Project Gutenberg" is a registered trademark. It may only be
-used on or associated in any way with an electronic work by people who
-agree to be bound by the terms of this agreement. There are a few
-things that you can do with most Project Gutenberg-tm electronic works
-even without complying with the full terms of this agreement. See
-paragraph 1.C below. There are a lot of things you can do with Project
-Gutenberg-tm electronic works if you follow the terms of this agreement
-and help preserve free future access to Project Gutenberg-tm electronic
-works. See paragraph 1.E below.
-
-1.C. The Project Gutenberg Literary Archive Foundation ("the Foundation"
-or PGLAF), owns a compilation copyright in the collection of Project
-Gutenberg-tm electronic works. Nearly all the individual works in the
-collection are in the public domain in the United States. If an
-individual work is in the public domain in the United States and you are
-located in the United States, we do not claim a right to prevent you from
-copying, distributing, performing, displaying or creating derivative
-works based on the work as long as all references to Project Gutenberg
-are removed. Of course, we hope that you will support the Project
-Gutenberg-tm mission of promoting free access to electronic works by
-freely sharing Project Gutenberg-tm works in compliance with the terms of
-this agreement for keeping the Project Gutenberg-tm name associated with
-the work. You can easily comply with the terms of this agreement by
-keeping this work in the same format with its attached full Project
-Gutenberg-tm License when you share it without charge with others.
-
-1.D. The copyright laws of the place where you are located also govern
-what you can do with this work. Copyright laws in most countries are in
-a constant state of change. If you are outside the United States, check
-the laws of your country in addition to the terms of this agreement
-before downloading, copying, displaying, performing, distributing or
-creating derivative works based on this work or any other Project
-Gutenberg-tm work. The Foundation makes no representations concerning
-the copyright status of any work in any country outside the United
-States.
-
-1.E. Unless you have removed all references to Project Gutenberg:
-
-1.E.1. The following sentence, with active links to, or other immediate
-access to, the full Project Gutenberg-tm License must appear prominently
-whenever any copy of a Project Gutenberg-tm work (any work on which the
-phrase "Project Gutenberg" appears, or with which the phrase "Project
-Gutenberg" is associated) is accessed, displayed, performed, viewed,
-copied or distributed:
-
-This eBook is for the use of anyone anywhere at no cost and with
-almost no restrictions whatsoever. You may copy it, give it away or
-re-use it under the terms of the Project Gutenberg License included
-with this eBook or online at www.gutenberg.net
-
-1.E.2. If an individual Project Gutenberg-tm electronic work is derived
-from the public domain (does not contain a notice indicating that it is
-posted with permission of the copyright holder), the work can be copied
-and distributed to anyone in the United States without paying any fees
-or charges. If you are redistributing or providing access to a work
-with the phrase "Project Gutenberg" associated with or appearing on the
-work, you must comply either with the requirements of paragraphs 1.E.1
-through 1.E.7 or obtain permission for the use of the work and the
-Project Gutenberg-tm trademark as set forth in paragraphs 1.E.8 or
-1.E.9.
-
-1.E.3. If an individual Project Gutenberg-tm electronic work is posted
-with the permission of the copyright holder, your use and distribution
-must comply with both paragraphs 1.E.1 through 1.E.7 and any additional
-terms imposed by the copyright holder. Additional terms will be linked
-to the Project Gutenberg-tm License for all works posted with the
-permission of the copyright holder found at the beginning of this work.
-
-1.E.4. Do not unlink or detach or remove the full Project Gutenberg-tm
-License terms from this work, or any files containing a part of this
-work or any other work associated with Project Gutenberg-tm.
-
-1.E.5. Do not copy, display, perform, distribute or redistribute this
-electronic work, or any part of this electronic work, without
-prominently displaying the sentence set forth in paragraph 1.E.1 with
-active links or immediate access to the full terms of the Project
-Gutenberg-tm License.
-
-1.E.6. You may convert to and distribute this work in any binary,
-compressed, marked up, nonproprietary or proprietary form, including any
-word processing or hypertext form. However, if you provide access to or
-distribute copies of a Project Gutenberg-tm work in a format other than
-"Plain Vanilla ASCII" or other format used in the official version
-posted on the official Project Gutenberg-tm web site (www.gutenberg.net),
-you must, at no additional cost, fee or expense to the user, provide a
-copy, a means of exporting a copy, or a means of obtaining a copy upon
-request, of the work in its original "Plain Vanilla ASCII" or other
-form. Any alternate format must include the full Project Gutenberg-tm
-License as specified in paragraph 1.E.1.
-
-1.E.7. Do not charge a fee for access to, viewing, displaying,
-performing, copying or distributing any Project Gutenberg-tm works
-unless you comply with paragraph 1.E.8 or 1.E.9.
-
-1.E.8. You may charge a reasonable fee for copies of or providing
-access to or distributing Project Gutenberg-tm electronic works provided
-that
-
-- You pay a royalty fee of 20% of the gross profits you derive from
- the use of Project Gutenberg-tm works calculated using the method
- you already use to calculate your applicable taxes. The fee is
- owed to the owner of the Project Gutenberg-tm trademark, but he
- has agreed to donate royalties under this paragraph to the
- Project Gutenberg Literary Archive Foundation. Royalty payments
- must be paid within 60 days following each date on which you
- prepare (or are legally required to prepare) your periodic tax
- returns. Royalty payments should be clearly marked as such and
- sent to the Project Gutenberg Literary Archive Foundation at the
- address specified in Section 4, "Information about donations to
- the Project Gutenberg Literary Archive Foundation."
-
-- You provide a full refund of any money paid by a user who notifies
- you in writing (or by e-mail) within 30 days of receipt that s/he
- does not agree to the terms of the full Project Gutenberg-tm
- License. You must require such a user to return or
- destroy all copies of the works possessed in a physical medium
- and discontinue all use of and all access to other copies of
- Project Gutenberg-tm works.
-
-- You provide, in accordance with paragraph 1.F.3, a full refund of any
- money paid for a work or a replacement copy, if a defect in the
- electronic work is discovered and reported to you within 90 days
- of receipt of the work.
-
-- You comply with all other terms of this agreement for free
- distribution of Project Gutenberg-tm works.
-
-1.E.9. If you wish to charge a fee or distribute a Project Gutenberg-tm
-electronic work or group of works on different terms than are set
-forth in this agreement, you must obtain permission in writing from
-both the Project Gutenberg Literary Archive Foundation and Michael
-Hart, the owner of the Project Gutenberg-tm trademark. Contact the
-Foundation as set forth in Section 3 below.
-
-1.F.
-
-1.F.1. Project Gutenberg volunteers and employees expend considerable
-effort to identify, do copyright research on, transcribe and proofread
-public domain works in creating the Project Gutenberg-tm
-collection. Despite these efforts, Project Gutenberg-tm electronic
-works, and the medium on which they may be stored, may contain
-"Defects," such as, but not limited to, incomplete, inaccurate or
-corrupt data, transcription errors, a copyright or other intellectual
-property infringement, a defective or damaged disk or other medium, a
-computer virus, or computer codes that damage or cannot be read by
-your equipment.
-
-1.F.2. LIMITED WARRANTY, DISCLAIMER OF DAMAGES - Except for the "Right
-of Replacement or Refund" described in paragraph 1.F.3, the Project
-Gutenberg Literary Archive Foundation, the owner of the Project
-Gutenberg-tm trademark, and any other party distributing a Project
-Gutenberg-tm electronic work under this agreement, disclaim all
-liability to you for damages, costs and expenses, including legal
-fees. YOU AGREE THAT YOU HAVE NO REMEDIES FOR NEGLIGENCE, STRICT
-LIABILITY, BREACH OF WARRANTY OR BREACH OF CONTRACT EXCEPT THOSE
-PROVIDED IN PARAGRAPH F3. YOU AGREE THAT THE FOUNDATION, THE
-TRADEMARK OWNER, AND ANY DISTRIBUTOR UNDER THIS AGREEMENT WILL NOT BE
-LIABLE TO YOU FOR ACTUAL, DIRECT, INDIRECT, CONSEQUENTIAL, PUNITIVE OR
-INCIDENTAL DAMAGES EVEN IF YOU GIVE NOTICE OF THE POSSIBILITY OF SUCH
-DAMAGE.
-
-1.F.3. LIMITED RIGHT OF REPLACEMENT OR REFUND - If you discover a
-defect in this electronic work within 90 days of receiving it, you can
-receive a refund of the money (if any) you paid for it by sending a
-written explanation to the person you received the work from. If you
-received the work on a physical medium, you must return the medium with
-your written explanation. The person or entity that provided you with
-the defective work may elect to provide a replacement copy in lieu of a
-refund. If you received the work electronically, the person or entity
-providing it to you may choose to give you a second opportunity to
-receive the work electronically in lieu of a refund. If the second copy
-is also defective, you may demand a refund in writing without further
-opportunities to fix the problem.
-
-1.F.4. Except for the limited right of replacement or refund set forth
-in paragraph 1.F.3, this work is provided to you 'AS-IS' WITH NO OTHER
-WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
-WARRANTIES OF MERCHANTIBILITY OR FITNESS FOR ANY PURPOSE.
-
-1.F.5. Some states do not allow disclaimers of certain implied
-warranties or the exclusion or limitation of certain types of damages.
-If any disclaimer or limitation set forth in this agreement violates the
-law of the state applicable to this agreement, the agreement shall be
-interpreted to make the maximum disclaimer or limitation permitted by
-the applicable state law. The invalidity or unenforceability of any
-provision of this agreement shall not void the remaining provisions.
-
-1.F.6. INDEMNITY - You agree to indemnify and hold the Foundation, the
-trademark owner, any agent or employee of the Foundation, anyone
-providing copies of Project Gutenberg-tm electronic works in accordance
-with this agreement, and any volunteers associated with the production,
-promotion and distribution of Project Gutenberg-tm electronic works,
-harmless from all liability, costs and expenses, including legal fees,
-that arise directly or indirectly from any of the following which you do
-or cause to occur: (a) distribution of this or any Project Gutenberg-tm
-work, (b) alteration, modification, or additions or deletions to any
-Project Gutenberg-tm work, and (c) any Defect you cause.
-
-
-Section 2. Information about the Mission of Project Gutenberg-tm
-
-Project Gutenberg-tm is synonymous with the free distribution of
-electronic works in formats readable by the widest variety of computers
-including obsolete, old, middle-aged and new computers. It exists
-because of the efforts of hundreds of volunteers and donations from
-people in all walks of life.
-
-Volunteers and financial support to provide volunteers with the
-assistance they need are critical to reaching Project Gutenberg-tm's
-goals and ensuring that the Project Gutenberg-tm collection will
-remain freely available for generations to come. In 2001, the Project
-Gutenberg Literary Archive Foundation was created to provide a secure
-and permanent future for Project Gutenberg-tm and future generations.
-To learn more about the Project Gutenberg Literary Archive Foundation
-and how your efforts and donations can help, see Sections 3 and 4
-and the Foundation web page at http://www.pglaf.org.
-
-
-Section 3. Information about the Project Gutenberg Literary Archive
-Foundation
-
-The Project Gutenberg Literary Archive Foundation is a non profit
-501(c)(3) educational corporation organized under the laws of the
-state of Mississippi and granted tax exempt status by the Internal
-Revenue Service. The Foundation's EIN or federal tax identification
-number is 64-6221541. Its 501(c)(3) letter is posted at
-http://pglaf.org/fundraising. Contributions to the Project Gutenberg
-Literary Archive Foundation are tax deductible to the full extent
-permitted by U.S. federal laws and your state's laws.
-
-The Foundation's principal office is located at 4557 Melan Dr. S.
-Fairbanks, AK, 99712., but its volunteers and employees are scattered
-throughout numerous locations. Its business office is located at
-809 North 1500 West, Salt Lake City, UT 84116, (801) 596-1887, email
-business@pglaf.org. Email contact links and up to date contact
-information can be found at the Foundation's web site and official
-page at http://pglaf.org
-
-For additional contact information:
- Dr. Gregory B. Newby
- Chief Executive and Director
- gbnewby@pglaf.org
-
-
-Section 4. Information about Donations to the Project Gutenberg
-Literary Archive Foundation
-
-Project Gutenberg-tm depends upon and cannot survive without wide
-spread public support and donations to carry out its mission of
-increasing the number of public domain and licensed works that can be
-freely distributed in machine readable form accessible by the widest
-array of equipment including outdated equipment. Many small donations
-($1 to $5,000) are particularly important to maintaining tax exempt
-status with the IRS.
-
-The Foundation is committed to complying with the laws regulating
-charities and charitable donations in all 50 states of the United
-States. Compliance requirements are not uniform and it takes a
-considerable effort, much paperwork and many fees to meet and keep up
-with these requirements. We do not solicit donations in locations
-where we have not received written confirmation of compliance. To
-SEND DONATIONS or determine the status of compliance for any
-particular state visit http://pglaf.org
-
-While we cannot and do not solicit contributions from states where we
-have not met the solicitation requirements, we know of no prohibition
-against accepting unsolicited donations from donors in such states who
-approach us with offers to donate.
-
-International donations are gratefully accepted, but we cannot make
-any statements concerning tax treatment of donations received from
-outside the United States. U.S. laws alone swamp our small staff.
-
-Please check the Project Gutenberg Web pages for current donation
-methods and addresses. Donations are accepted in a number of other
-ways including including checks, online payments and credit card
-donations. To donate, please visit: http://pglaf.org/donate
-
-
-Section 5. General Information About Project Gutenberg-tm electronic
-works.
-
-Professor Michael S. Hart is the originator of the Project Gutenberg-tm
-concept of a library of electronic works that could be freely shared
-with anyone. For thirty years, he produced and distributed Project
-Gutenberg-tm eBooks with only a loose network of volunteer support.
-
-
-Project Gutenberg-tm eBooks are often created from several printed
-editions, all of which are confirmed as Public Domain in the U.S.
-unless a copyright notice is included. Thus, we do not necessarily
-keep eBooks in compliance with any particular paper edition.
-
-
-Most people start at our Web site which has the main PG search facility:
-
- http://www.gutenberg.net
-
-This Web site includes information about Project Gutenberg-tm,
-including how to make donations to the Project Gutenberg Literary
-Archive Foundation, how to help produce our new eBooks, and how to
-subscribe to our email newsletter to hear about new eBooks.
diff --git a/ult/ult_4/marks.txt b/ult/ult_4/marks.txt deleted file mode 100644 index f97b743..0000000 --- a/ult/ult_4/marks.txt +++ /dev/null @@ -1,5 +0,0 @@ -89 92 85 -98 47 67 -67 82 76 -78 97 60 -67 68 69 diff --git a/ult/ult_4/marks1.txt b/ult/ult_4/marks1.txt deleted file mode 100644 index 9a5299d..0000000 --- a/ult/ult_4/marks1.txt +++ /dev/null @@ -1,5 +0,0 @@ -5 89 92 85 -4 98 47 67 -1 67 82 76 -2 78 97 60 -3 67 68 69 diff --git a/ult/ult_4/script.rst b/ult/ult_4/script.rst deleted file mode 100644 index 09de00e..0000000 --- a/ult/ult_4/script.rst +++ /dev/null @@ -1,409 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. Understand what is Redirection and Piping. - .. 2. Learn various features of shell. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 -.. 3. Using Linux tools - Part 3 - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 4'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Understand what is Redirection and Piping. - #. Learn various features of the shell. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial, we would suggest you to complete the -tutorial on "Using Linux tools from Part 1 to Part 3". - -.. R4 - -Let us begin with the concept of 'Redirection and Piping' which -performs the same operations as the ``cut`` and ``paste`` commands. - -Consider the files ``marks.txt`` and ``students.txt``.The contents of -the files are as following: - -.. L4 - -{{{ Open the terminal }}} -:: - - cat marks1.txt - cat students.txt - -.. R5 - -Now, let us view the contents of both these files side-by-side. - -.. L5 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - - -.. R6 - -Now, in order to view the same output in a new file at an other -location, we say, - -.. L6 -:: - - cut -d " " -f 2- marks1.txt > /tmp/m_tmp.txt - paste -d " " students.txt m_tmp.txt - -.. R7 - -First, let us try to understand the second solution,which is a two -step approach. -Later, we shall look at the first solution. - -.. L7 - -.. L8 - -{{{ Show slide, with Redirection }}} - -.. R8 - -The standard output, in general, goes to the display. -Hence, the output of the commands that we type, come out to the display. -This may not be what we always require. - -For instance, in the solution above, we use the cut command and get only -the required columns of the file and write the output to a new temporary -file. The ``>`` character is used to state that we wish to redirect the -output, and it is followed by the location to which we wish to redirect. -For example, - - command > file1 - -.. L9 - -{{{ Show slide, with Redirection... }}} - -.. R9 - -Similarly, the standard input (stdin) can be redirected as, - - command < file1 - -The input and the output redirection could be combined in a single command, -as, - - command < infile > outfile - -There is actually a third kind of standard stream, called the Standard -error (stderr). Any error messages that you get, are coming through this -stream. Like ``stdout``, ``stderr`` also streams to the display by default, -but it could be redirected to a file, as well. - -.. R10 - -For instance, let's reproduce an error using the ``cut`` command used -before. We shall change the ``-f`` option to ``-c`` - -.. L10 - -{{{ Switch to terminal }}} -:: - - cut -d " " -c 2- marks1.txt > /tmp/m_tmp.txt - -.. R11 - -This displays an error saying that the delimiter option should be used -with the fields option only. You may verify this by looking at the -``m_tmp.txt`` file, which is now empty.We can now, redirect the -``stderr`` also to a file, instead of showing it on the display. - -.. L11 -:: - - cut -d " " -f 2- marks1.txt 1> /tmp/m_tmp.txt 2> /tmp/m_err.txt - -.. R12 - -The above command redirects all the errors to the ``m_err.txt`` file -and the output to the ``m_tmp.txt`` file. When redirecting, 1 stands -for ``stdout`` and 2 stands for ``stderr``. - -Let us complete the solution by using the ``paste`` command. - -.. L12 -:: - - paste -d " " students.txt m_tmp.txt - -.. R13 - -So, in two steps we solved the problem of getting rid of the roll numbers -from the marks file and displaying the marks along with the names of the -students. Now, that we know how to redirect output, we could choose to -write the output to a file, instead of showing on the display. - -Let us now look at the first solution. - -.. L13 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - - -.. L14 - -{{{ Show slide, with Piping }}} - -.. R14 - -First of all, the hyphen at the end is to ask the paste command to -read the standard input, instead of looking for a FILE. The ``man`` -page of ``paste`` command gives us this information. - -The character ``|`` is called a pipe. -Now, let us observe the ``cut`` command. If we look at the command only -upto the ``|`` character, it appears as a normal ``cut`` command . -So, the ``|`` character here, seems -to be joining the two commands in some way. -Essentially, what we are doing is, to redirect the output of the first -command to ``stdin`` and the second command takes the input from the ``stdin``. - -More generally, - - command1 | command2 - -executes ``command1`` and sends it's output to the ``stdin``, which is then -used as the input for ``command2``. This activity is commonly called piping. - -.. L15 - -{{{ Show slide, with Piping... }}} - -.. R15 - -This is roughly equivalent to using two redirects and a temporary file. - - command1 > tempfile - command2 < tempfile - rm tempfile - -Also, given that a pipe is just a way to send the output of a command to -the ``stdin``, it should be obvious to you that we can use a chain of -pipes. Any number of commands can be piped together and therefore it should - be noted that it is not restricted to only two commands. - -The Bash shell has some nice features, that make our job of using the shell -easier and much more pleasant. Let us have a look at few of them here. - -Bash provides the feature of 'tab completion'. What does tab completion mean? -When you are typing a word, bash helps you to complete the word. -This can be done by entering some portion of the word and thereafter, -pressing the tab key. - -If you do not get the desired word on pressing the tab key, it implies that -either the word doesn't exist or the word cannot be decided unambiguously. -In the latter case, pressing the tab key for a second time,will list out -all the possibilities. - -.. L16 - -{{{ Show slide, with Tab-completion }}} - -.. R16 - -Bash provides tab completion for the following. - - 1. File Names - 2. Directory Names - 3. Executable Names - 4. User Names (when they are prefixed with a ~) - 5. Host Names (when they are prefixed with a @) - 6. Variable Names (when they are prefixed with a $) - -.. R17 - -For example, - -.. L17 - -{{{ Switch to terminal }}} -:: - - pas<TAB><TAB> - ~/<TAB><TAB> - -.. R18 - -Bash also saves the history of the commands you have typed earlier. -This feature enables you to goto the previously typed commands and -use them as and when necessary. The up and down arrow keys will help -you to navigate -through these commands in the bash history. - -.. L18 -:: - - <UP-ARROW> - -.. R19 - -You may also search incrementally, for commands in your bash history. -``Ctrl-r`` searches for the commands that you have typed earlier. However, -it should be noted that the number of commands saved in the history is -limited, generally upto a 1000 commands. - -.. L19 -:: - - <Ctrl-r> pas - -.. R20 - -Unix recognizes certain special characters, called "meta characters", as -command directives. The shell meta characters are recognized anywhere they -appear in the command line, even if they are not surrounded by a blank space. -For this reason, it is always recommended to use only the characters A-Z, -a-z, 0-9, period, dash and underscore, when naming files and -directories on Unix. If your file or directory has a shell meta character -in the name, you may find it difficult to use this name in a shell command. - -.. L20 - -.. L21 - -{{{ Show slide, with Shell Meta Characters }}} - -.. R21 - -The characters that you see on the slide are the shell meta characters - -.. R22 - -Lets take an example, - -.. L22 - -{{{ Switch to terminal }}} -:: - - ls file.? - -.. R23 - -It means, run on a directory containing the files file, file.c, file.lst, -and myfile would list the files file.c and file.lst. However, - -.. L23 -:: - - ls file.? - -.. R24 - -Run on the same directory would only list file.c because the ? only matches -one character, no more, no less. This helps you save time, while typing. - -For example, if there is a file called -california_cornish_hens_with_wild_rice and no other files whose names begin -with 'c', you could view the file without typing the whole name by typing -this - -.. L24 -:: - - more c* - -.. R25 - -Here, the c* matches that long file name. -File-names containing meta characters can pose many problems and should -never be intentionally created. - -.. L25 - -.. L26 - -{{{ Switch to Summary slide }}} - -.. R26 - -This brings us to the end of the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Use the ``cut`` and ``paste`` commands in redirection. - 2. Use the pipe ( | ) character. - 3. Implement features of shell, like tab-completion and history. - -.. L27 - -{{{ Show self assessment questions slide }}} - -.. R27 - -Here are some self assessment questions for you to solve: - - 1. Bash does not provide tab completion for Host Names. - True of False? - - 2. In a file /home/test.txt ,first line is "data:myscripts:20:30". How do we - view only the minutes (last field, 30). - - - cut -d : -f 4 /home/test.txt - - cut -f 3 /home/test.txt - - cut -d : -f 3 /home/test.txt - - None of these - -.. L28 - -{{{ Solutions for the self assessment questions on slide }}} - -.. R28 - -And the answers: - - 1. False. Bash provides tab completion for Host Names when they are prefixed - with a @ sign. - - 2. The correct option would be -:: - - cut -d : -f 4 /home/test.txt - -.. L29 - -{{{ Show the Thank you slide }}} - -.. R29 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - diff --git a/ult/ult_4/students.txt b/ult/ult_4/students.txt deleted file mode 100644 index ddacd6b..0000000 --- a/ult/ult_4/students.txt +++ /dev/null @@ -1,5 +0,0 @@ -Hussain -Dilbert -Anne -Raul -Sven diff --git a/ult/ult_4/ult4.tex b/ult/ult_4/ult4.tex deleted file mode 100644 index 7181db5..0000000 --- a/ult/ult_4/ult4.tex +++ /dev/null @@ -1,243 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools\\Part IV} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Understand what is Redirection and Piping. -\item Learn various features of the shell. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\item Using Linux tools -- Part III -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Redirection} - - \begin{itemize} - \item The standard output (stdout) stream goes to the display - \item Not always, what we need - \item First solution, redirects output to a file - \item \texttt{>} states that output is redirected; It is - followed by location to redirect - \end{itemize} - \begin{lstlisting} - $ command > file1 - \end{lstlisting} % $ - \begin{itemize} - \item \texttt{>} creates a new file at specified location - \item \texttt{>>} appends to a file at specified location - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Redirection \ldots} - \begin{itemize} - \item Similarly, the standard input (stdin) can be redirected - \end{itemize} - \begin{lstlisting} - $ command < file1 - \end{lstlisting} % $ - \begin{itemize} - \item input and the output redirection could be combined - \end{itemize} - \begin{lstlisting} - $ command < infile > outfile - \end{lstlisting} % $ - \begin{itemize} - \item Standard error (stderr) is the third standard stream - \item All error messages come through this stream - \item \texttt{stderr} can also be redirected - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Piping} - \begin{lstlisting} - $ cut -d " " -f 2- marks1.txt \ - | paste -d " " students.txt - - \end{lstlisting} % $ - \begin{itemize} - \item \texttt{-} instead of FILE asks \texttt{paste} to read from - \texttt{stdin} - \item \texttt{cut} command is a normal command - \item the \texttt{|} seems to be joining the two commands - \item Redirects output of first command to \texttt{stdin}, which - becomes input to the second command - \item This is called piping; \texttt{|} is called a pipe - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Piping \ldots} - \begin{itemize} - \item Roughly same as -- 2 redirects and a temporary file - \end{itemize} - \begin{lstlisting} - $ command1 > tempfile - $ command2 < tempfile - $ rm tempfile - \end{lstlisting} % $ - \begin{itemize} - \item Any number of commands can be piped together - \end{itemize} -\end{frame} - -\subsection{Features of the Shell} - -\begin{frame}[fragile] - \frametitle{Tab-completion} - \begin{itemize} - \item Bash provides tab completion for the following. - \begin{enumerate} - \item File Names - \item Directory Names - \item Executable Names - \item User Names (when they are prefixed with a \~{}) - \item Host Names (when they are prefixed with a @) - \item Variable Names (when they are prefixed with a \$) - \end{enumerate} - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Shell Meta Characters} - \begin{itemize} - \item ``meta characters'' are special command directives - \item File-names shouldn't have meta-characters - \item The following are the shell meta characters -- - \begin{itemize} - \item \verb+/<>!$%^&*|{}[]"'`~;+ - \end{itemize} - \end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Use the ``cut'' and ``paste'' commands in redirection. -\item Use the pipe ( | ) character. -\item Implement features of shell like tab-completion and history. -\end{itemize} -\end{frame} -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item Bash does not provide tab completion for Host Names. \\ - True or False? -\vspace{12pt} -\item In a file /home/test.txt ,first line is "data:myscripts:20:30".How to - view only minutes(last field, 30). -\vspace{5pt} -\begin{itemize} -\item cut -d : -f 4 /home/test.txt -\item cut -f 3 /home/test.txt -\item cut -d : -f 3 /home/test.txt -\item None of these -\end{itemize} -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item False -\vspace{15pt} -\item cut -d : -f 4 /home/test.txt -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - diff --git a/ult/ult_5/foo.txt b/ult/ult_5/foo.txt deleted file mode 100644 index 1fe9426..0000000 --- a/ult/ult_5/foo.txt +++ /dev/null @@ -1,9 +0,0 @@ -FOO is an abbreviation of Forward Observation Officer, a British Army -term in use as early as the First World War. The etymology of foo is -explored in the Internet Engineering Task Force (IETF) Request for -Comments 3092, which notes usage of foo in 1930s cartoons including -The Daffy Doc (with Daffy Duck) and comic strips, especially Smokey -Stover and Pogo. From there the term migrated into military slang, -where it merged with FUBAR. - -source: wikipedia diff --git a/ult/ult_5/marks1.txt b/ult/ult_5/marks1.txt deleted file mode 100644 index 9a5299d..0000000 --- a/ult/ult_5/marks1.txt +++ /dev/null @@ -1,5 +0,0 @@ -5 89 92 85 -4 98 47 67 -1 67 82 76 -2 78 97 60 -3 67 68 69 diff --git a/ult/ult_5/script.rst b/ult/ult_5/script.rst deleted file mode 100644 index e112ff7..0000000 --- a/ult/ult_5/script.rst +++ /dev/null @@ -1,347 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. - .. 2. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 -.. 3. Using Linux tools - Part 3 -.. 4. Using Linux tools - Part 4 - - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 5'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Sort lines of text files - #. Print lines matching a pattern - #. Translate or delete characters - #. Omit repeated lines. - - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial,we would suggest you to complete the -tutorial on "Using Linux tools from Part 1 to Part 4". - -.. R4 - -In this tutorial, we shall learn about text processing. -TO begin with, consider data kept in two files, namely marks1.txt and -students.txt -Let us see what data they contain. Open a terminal and type, - -.. L4 - -{{{ Open the terminal }}} -:: - - cat marks1.txt - cat students.txt - -.. R5 - -Let's say we wish to sort the output in the alphabetical order -of the names of the files. We can use the ``sort`` command for this -purpose. - -We just pipe the previous output to the ``sort`` command as, - -.. L5 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt -| sort - -.. R6 - -Let's say we wish to sort the names, based on the marks in the first -subject i.e. the first column after the name. ``sort`` command also allows us to -specify the delimiter between the fields and sort the data on a particular -field. ``-t`` option is used to specify the delimiter and ``-k`` option -is used to specify the field. - -.. L6 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt -| sort -t " " -k 2 - -.. L7 - -{{{ Show slide with, Sort... }}} - -.. R7 - -This command give us a sorted output as required. But, what if we would -like the output to appear in the reverse order. ``-r`` option allows the output -to be sorted in the reverse order and the ``-n`` option is used to choose -a numerical sorting. - -.. R8 - -Let us do it on the terminal and see for ourselves, - -.. L8 - -{{{ Switch to the terminal }}} -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt -| - sort -t " " -k 2 -rn - -.. R9 - -Suppose, While you are compiling the student marklist, Anne walks up to you and -wants to know her marks. You, being a kind person that you are, oblige. -But you do not wish to her to see the marks that others have scored. What -do you do? Here, the ``grep`` command comes to your rescue. - -``grep`` is a command line text search utility. You can use it to search -for Anne and show her, what she scored. ``grep`` allows us to search for a -search string in files. But we could, like any other command, pipe the -output of other commands to it. So, we shall use the previous combination -of cut and paste that we had, to get the marks of students along with their -names and search for Anne in that. - -.. L9 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | grep Anne - -.. R10 - -This will give us only the line containing the word Anne as the output. -The grep command is by default case-sensitive. So, we wouldn't have got -the result if we had searched for anne, with a small a, instead of -Anne, with a capital a. But, what if we didn't know, whether the name was -capitalized or not? ``grep`` allows you to do case-insensitive searches -by using the ``-i`` option. - -.. L10 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | grep -i Anne - -.. R11 - -Now, in another scenario, if we wished to print all the lines, which do -not contain the word Anne, we could use the ``-v`` option. - -.. L11 -:: - - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | grep -iv Anne - -.. R12 - -grep allows us to do more complex searches, for instance, searching for -sentences starting or ending with a particular pattern and regular -expression based searches. - -{{{ Show slide with, tr }}} - -``tr`` is a command that takes two sets of characters as parameters, and -replaces occurrences of the characters in the first set with the -corresponding elements from the other set. It reads from the standard -output and writes to the standard output. - -For instance, if we wish to replace all the lower case letters in the -students file with upper case, we can do it as, - -.. L12 - -{{{ Switch to the terminal }}} -:: - - cat students.txt | tr a-z A-Z - -.. R13 - -A common task is to remove empty newlines from a file. The ``-s`` flag -causes ``tr`` to compress sequences of identical adjacent characters in its -output to a single token. For example, - -.. L13 -:: - - tr -s '\n' '\n' - -.. R14 - -Hit enter 2-3 times and see that every time we hit enter we get a newline. - -.. L14 -:: - - <Enter> - <Enter> - -.. R15 - -It replaces sequences of one or more newline characters with a single newline. - -The ``-d`` flag causes ``tr`` to delete all tokens of the specified set of -characters from its input. In this case, only a single character set -argument is used. The following command removes carriage return characters, -thereby converting a file in DOS/Windows format to the Unix format. - -.. L15 -:: - - cat foo.txt | tr -d '\r' > bar.txt - -.. R16 - -The ``-c`` flag complements the first set of characters. - -.. L16 -:: - - tr -cd '[:alnum:]' - -.. R17 - -It therefore removes all non-alphanumeric characters. - -Let us consider one more scenario.Suppose we have a list of items, say books, -and we wish to obtain a list which names of all the books only once, without -any duplicates. To achieve this, we use the ``uniq`` command. Let us first -have a look at our file - -.. L17 -:: - - cat items.txt - -.. R18 - -Now, let us try and get rid of the duplicate lines from this file using -the ``uniq`` command. - -.. L18 -:: - - uniq items.txt - -.. R19 - -Nothing happens! Why? The ``uniq`` command removes duplicate lines only when -they are next to each other. So, henceforth, we get a sorted file from the -original file and work with that file. - -.. L19 -:: - - sort items.txt | uniq - -.. R20 - -``uniq -u`` command gives the lines which are unique and do not have any -duplicates in the file. ``uniq -d`` outputs only those lines which -have duplicates. - -.. L20 -:: - - uniq -u items-sorted.txt - -.. R21 - -The ``-c`` option displays the number of times each line occurs in the file. - -.. L21 -:: - - uniq -dc items-sorted.txt - -.. L22 - -{{{ Show summary slide }}} - -.. R22 - -This brings us to the end of the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Use the ``sort`` command to sort lines of text files. - #. Use the ``grep`` command to search text pattern. - #. Use the ``tr`` command to translate and/or delete characters. - #. Use the ``uniq`` command to omit repeated lines in a text. - -.. L23 - -{{{ Show self assessment questions slide }}} - -.. R23 - -Here are some self assessment questions for you to solve - - 1. To obtain patterns; one per line, which of the following command is used ? - - - grep -f - - grep -i - - grep -v - - grep -e - - 2. Translate the word 'linux' to upper-case. - - 3. Sort the output of the ``ls -al`` command. - -.. L24 - -{{{ Solution of self assessment questions on slide }}} - -.. R24 - -And the answers, - - 1. In order to obtain patterns one per line, we use the ``grep`` command - alongwith the -f option. - - 2. We use the tr command to change the word into uppercase -:: - - echo 'linux' | tr a-z A-Z - - - 3. We use the sort command as, -:: - - ls -al | sort -n -k5 -The -n means "sort numerically", and the -k5 option means to key off of -column five. - -.. L25 - -{{{ Show the Thank you slide }}} - -.. R25 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! diff --git a/ult/ult_5/students.txt b/ult/ult_5/students.txt deleted file mode 100644 index ddacd6b..0000000 --- a/ult/ult_5/students.txt +++ /dev/null @@ -1,5 +0,0 @@ -Hussain -Dilbert -Anne -Raul -Sven diff --git a/ult/ult_5/ult5.tex b/ult/ult_5/ult5.tex deleted file mode 100644 index 293b76f..0000000 --- a/ult/ult_5/ult5.tex +++ /dev/null @@ -1,178 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Sort lines of text files. -\item Print lines matching a pattern. -\item Translate or delete characters. -\item Omit repeated lines. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\item Using Linux tools -- Part III -\item Using Linux tools -- Part IV -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{sort} \ldots} - \begin{itemize} - \item The command below sorts, based on marks in first subject - \end{itemize} - \begin{lstlisting} - $ cut -d " " -f 2- marks1.txt \ - | paste -d " " students.txt -\ - | sort -t " " -k 2 -rn - \end{lstlisting} % $ - \begin{itemize} - \item \texttt{-t} specifies the delimiter between fields - \item \texttt{-k} specifies the field to use for sorting - \item \texttt{-r} for sorting in the reverse order - \item \texttt{-n} to choose numerical sorting - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{tr}} - \begin{itemize} - \item Translates or deletes characters - \item Reads from \texttt{stdin} and outputs to \texttt{stdout} - \item Given, two sets of characters, replaces one with other - \item The following, replaces all lower-case with upper-case - \end{itemize} - \begin{lstlisting} - $ cat students.txt | tr a-z A-Z - \end{lstlisting} % $ -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Use the ``sort'' command to sort lines of text files. -\item Use the ``grep'' command to search text pattern. -\item Use the ``tr'' command to translate and/or delete characters. -\item Use the ``uniq'' command to omit repeated lines in a text. -\end{itemize} -\end{frame} -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item To obtain patterns; one per line, which of the following command is used ? -\vspace{3pt} -\begin{itemize} -\item grep -f -\item grep -i -\item grep -v -\item grep -e -\end{itemize} -\vspace{8pt} -\item Translate the word `linux' to upper-case. -\vspace{8pt} -\item Sort the output of the ``ls -al'' command. -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item grep -f -\vspace{15pt} -\item \$ echo `linux' | tr a-z A-Z -\vspace{15pt} -\item \$ ls -al | sort -n -k5 -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - diff --git a/ult/ult_6/script.rst b/ult/ult_6/script.rst deleted file mode 100644 index 33f144e..0000000 --- a/ult/ult_6/script.rst +++ /dev/null @@ -1,278 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. Prepare a simple shell script. - .. 2. Run a script successfully and print it's result. - .. 3. Understand what an environment variable is. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 -.. 3. Using Linux tools - Part 3 -.. 4. Using Linux tools - Part 4 -.. 5. Using Linux tools - Part 5 - - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 6'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Prepare a simple shell script. - #. Run a script successfully and print it's result. - #. Understand what an environment variable is. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial,we would suggest you to complete the -tutorial on "Using Linux tools from Part 1 to Part 5". - -Let us start with creating a simple shell script. -A shell script is simply a sequence of commands, that are put into a file, -instead of entering them one by one onto the shell. The script can then be -run, to run the sequence of commands in a single shot instead of manually -running, each of the individual commands. -For instance, let's say we wish to create a directory called ``marks`` in the -home folder and save the results of the students into a file -``results.txt``. - -.. R4 - -We open our editor and save the following text to ``results.sh`` - -.. L4 - -{{{ Open an editor and type the following }}} -:: - - #!/bin/bash - mkdir ~/marks - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | sort > ~/marks/results.txt - -.. R5 - -We can now run the script as, - -.. L5 - -{{{ Open the terminal }}} -:: - - ./results.sh - -.. R6 - -We get an error saying, Permission denied! Why? Can you think of the -reason? Yes, the file doesn't have execute permissions. -We make the file executable and then run it. - -.. L6 -:: - - chmod u+x results.sh - ./results.sh - -.. R7 - -We get back the prompt. We can check the contents of the file -``results.txt`` to see if the script has run. - -So, here, we have our first shell script. The first line of the script is used -to specify the interpreter or shell which should be used to execute the script. -In this case, we are asking it to use the bash shell. -Once, the script has run, we get back the prompt. Here, we had to manually check, -if the contents of the file are correct. It would be useful to have our script -print out messages. For this, we can use the ``echo`` command. We can edit our -``results.sh`` script, as follows. - -.. L7 - -{{{ Open an editor and type the following }}} -:: - - #!/bin/bash - mkdir ~/marks - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | sort > ~/marks/results.txt - echo "Results generated." - -.. R8 - -Now, on running the script, we get a message on the screen informing us, -when the script has run. - -Let's now say, that we wish to let the user decide the file to which the -results should be written to. The results file, should be specifiable by an -argument in the command line. We can do so, by editing the file, as below. - -.. L8 - -{{{ Make the necessary changes in the previous script }}} - -:: - - #!/bin/bash - mkdir ~/marks - cut -d " " -f 2- marks1.txt | paste -d " " students.txt - | sort > ~/marks/$1 - echo "Results generated." - - -{{{ Highlight the text ``$1`` }}} - -.. R9 - -The ``$1`` above, corresponds to the first command line argument to the -script. So, we can run the script as shown below, to save the results to -``grades.txt``. - -.. L9 -:: - - ./results.sh grades.txt - -.. R10 - -When we run the ``results.sh`` file, we are specifying the location of the -script by using ``./``. But for any of the other commands, -we didn't have to specify their locations. Why? The -shell has a set of locations where it searches, for the command that we are -trying to run. - -.. L10 - -.. L11 - -{{{ Show slide, PATH }}} - -.. R11 - -These set of locations are saved in an "environment" -variable called PATH.let us look at what the value of the PATH variable is. To view the -values of variables, we can use the echo command. - -.. L12 - -{{{ Switch to the terminal }}} -:: - - echo $PATH - -.. R12 - -So, these are all the paths that are searched, when looking to execute a -command. If we put the results.sh script in one of these locations, we -could simply run it, without using the ``./`` at the beginning. - -.. L13 - -{{{ Show slide, variables & comments }}} - -.. R13 - -As expected, it is possible to define our own variables inside our shell -scripts. For example, - -.. L14 - -{{{ Switch to the terminal }}} -:: - - name="FOSSEE" - -.. R14 - -It creates a new variable ``name`` whose value is ``FOSSEE``. To refer to this -variable, inside our shell script, we would refer to it, as ``$name``. -Note that, there is no space around the ``=`` sign. - -.. L15 -:: - - ls $name* - -.. R15 - -.. R16 - -It is possible to store the output of a command in a variable, by enclosing -the command in back-quotes. - -.. L16 -:: - - count=`wc -l wonderland.txt` - -.. R17 - -It saves the number of lines in the file ``wonderland.txt`` in the variable -count. - -The ``#`` character is used to comment out content from a shell script. -Anything that appears after the ``#`` character in a line, is ignored by -the bash shell. - -.. L18 - -.. L19 - -{{{ Switch to 'Summary' slide }}} - -.. R19 - -This brings us to the end of the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Prepare a shell script. - #. Display the result of a script, using the ``echo`` command. - #. Use the environment variable ``PATH``. - #. Create variables and comment out content using the ``#`` sign. - -.. L20 - -{{{ Show self assessment questions slide }}} - -.. R20 - -Here are some self assessment questions for you to solve - -.. L21 - -{{{ Solution of self assessment questions on slide }}} - -.. R21 - -And the answers, - -.. L22 - -{{{ Show the Thank you slide }}} - -.. R22 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - - diff --git a/ult/ult_6/ult6.tex b/ult/ult_6/ult6.tex deleted file mode 100644 index 016c2d1..0000000 --- a/ult/ult_6/ult6.tex +++ /dev/null @@ -1,169 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Prepare a simple shell script. -\item Run a script successfully and print it's result. -\item Understand what an environment variable is. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\item Using Linux tools -- Part III -\item Using Linux tools -- Part IV -\item Using Linux tools -- Part V -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{PATH}} - \begin{itemize} - \item The shell searches in a set of locations, for the command - \item Locations are saved in ``environment'' variable called PATH - \item \texttt{echo} can show the value of variables - \end{itemize} - \begin{lstlisting} - $ echo $PATH - \end{lstlisting} % $ - \begin{itemize} - \item Put \texttt{results.sh} in one of these locations - \item It can then be run without \texttt{./} - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Variables \& Comments} - \begin{lstlisting} - $ name=FOSSEE - $ count=`wc -l wonderland.txt` - $ echo $count # Shows the value of count - \end{lstlisting} % $ - \begin{itemize} - \item It is possible to create variables in shell scripts - \item Variables can be assigned with the output of commands - \item \alert{NOTE:} There is no space around the \texttt{=} sign - \item All text following the \texttt{\#} is considered a comment - \end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Prepare a shell script. -\item Display the result of a script, using the ``echo'' command. -\item Use the environment variable ``PATH''. -\item Create variables and comment out content using the ``\#'' sign. -\end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item -\item -\item -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item -\vspace{15pt} -\item -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - diff --git a/ult/ult_7/06- track.mp3 b/ult/ult_7/06- track.mp3 deleted file mode 100644 index e69de29..0000000 --- a/ult/ult_7/06- track.mp3 +++ /dev/null diff --git a/ult/ult_7/clause.sh b/ult/ult_7/clause.sh deleted file mode 100644 index 23017f2..0000000 --- a/ult/ult_7/clause.sh +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -# Script to greet the user according to time of day -hour=`date | cut -c12-13` -now=`date +"%A, %d of %B, %Y (%r)"` -if [ $hour -lt 12 ] -then - mess="Good Morning $LOGNAME, Have a nice day!" -fi - -if [ $hour -gt 12 -a $hour -le 16 ] -then - mess="Good Afternoon $LOGNAME" -fi - -if [ $hour -gt 16 -a $hour -le 18 ] -then - mess="Good Evening $LOGNAME" -fi -echo -e "$mess\nIt is $now" - diff --git a/ult/ult_7/dir-test.sh b/ult/ult_7/dir-test.sh deleted file mode 100644 index 11479ff..0000000 --- a/ult/ult_7/dir-test.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash -if test -d $1 -then - echo "Yes, the directory" $1 "is present" -fi diff --git a/ult/ult_7/emerald.mp3 b/ult/ult_7/emerald.mp3 deleted file mode 100644 index e69de29..0000000 --- a/ult/ult_7/emerald.mp3 +++ /dev/null diff --git a/ult/ult_7/for-1.sh b/ult/ult_7/for-1.sh deleted file mode 100644 index 86545b7..0000000 --- a/ult/ult_7/for-1.sh +++ /dev/null @@ -1,4 +0,0 @@ -for i in {5..10} -do - echo $i -done diff --git a/ult/ult_7/for-2.sh b/ult/ult_7/for-2.sh deleted file mode 100644 index ad34c9a..0000000 --- a/ult/ult_7/for-2.sh +++ /dev/null @@ -1,4 +0,0 @@ -for i in `ls *.mp3` -do - echo "$i" -done diff --git a/ult/ult_7/for-3.sh b/ult/ult_7/for-3.sh deleted file mode 100644 index 8bb9f8d..0000000 --- a/ult/ult_7/for-3.sh +++ /dev/null @@ -1,4 +0,0 @@ -for i in *.mp3 -do - echo "$i" -done diff --git a/ult/ult_7/for-5.sh b/ult/ult_7/for-5.sh deleted file mode 100644 index dc17f64..0000000 --- a/ult/ult_7/for-5.sh +++ /dev/null @@ -1,4 +0,0 @@ -for i in *.mp3 -do - mv $i `echo $f|tr -s " " "-"|cut -d - -f 2-` -done diff --git a/ult/ult_7/premier.mp3 b/ult/ult_7/premier.mp3 deleted file mode 100644 index e69de29..0000000 --- a/ult/ult_7/premier.mp3 +++ /dev/null diff --git a/ult/ult_7/script.rst b/ult/ult_7/script.rst deleted file mode 100644 index 4efdfd9..0000000 --- a/ult/ult_7/script.rst +++ /dev/null @@ -1,401 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. Prepare scripts using 'Control Operators'. - .. 2. Understand what 'Environment Variables' are. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 -.. 3. Using Linux tools - Part 3 -.. 4. Using Linux tools - Part 4 -.. 5. Using Linux tools - Part 5 -.. 6. Using Linux tools - Part 6 - - - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 7'. - -.. L2 - -{{{ Show the 'Objectives' slide }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Prepare scripts using 'Control Operators'. - 2. Understand what 'Environment Variables' are. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial, we suggest you to complete the -tutorials, "Using Linux tools, Part 1 to Part 6". - -.. R4 - -We have many 'Control Structures and Operators' available in the linux bash. -Let us look at how to use them. -To write an 'if', or an 'if-else' construct, we need to check or test for a -condition(s). The ``test`` command allows us to test for condition(s). It has -a whole range of tests that can be performed. The man page of ``test`` -gives you the complete listing of various types of tests that can be performed -with it. - -Let's write a simple script with an ``if`` condition that tests whether a -directory with a particular name, exists or not. - -.. L4 - -.. L5 - -{{{ Show slide, 'if' }}} - -.. R5 - -Let us create a script named ``dir-test.sh`` with this code. - - #!/bin/bash - if test -d $1 - then - echo "Yes, the directory" $1 "is present" - fi - -When the script is run with an argument, it will print a message, if a -directory with the said name exists in the current working directory. - -.. R6 - -Let's write a simple script which returns back whether the argument passed -is negative or not. - -.. L6 - -{{{ Open the file sign.sh and show }}} -:: - - #!/bin/bash - if test $1 -lt 0 - then - echo "number is negative" - else - echo "number is non-negative" - fi - -.. R7 - -We can run the file with a set of different inputs and see if it works. - -.. L7 - -{{{ Switch to terminal }}} -:: - - ./sign.sh -11 - -.. R8 - -Instead of using the ``test`` command, square brackets may also be used. - -.. L8 - -.. L9 - -{{{ Show slide, [ ] - alias for test }}} - -.. R9 - -Note that the spacing is important, when using the square brackets. -The left square bracket ( ``[`` ) should be followed by a space and the right -square bracket ( ``]`` ) should be preceded by a space. - -Let's create something interesting using the 'if-else' clause. Let's write a -script, that greets the user, based on the time. - -.. L10 - -{{{ Open the file clause.sh and show }}} -{{{ Highlight the required content wherever necessary, while narrating }}} - -.. R10 - -There are a couple of new things in this script. ``$LOGNAME`` is another -'environment variable', which has the login name of the user. The variables, -``hour`` and ``now`` are actually taking the output of the commands that -are placed in the back quotes. - -Now, let us see how to run loops in bash. We shall look at the ``for`` and -the ``while`` loops. - -.. L11 - -{{{ Show slide, 'for' }}} - -.. R11 - -Suppose we have a set of files, whose file-names contain numbers before the -text, say ``08 - Society.mp3``. We would like to rename these files by -removing the numbers before the text. How would we go about doing that? - -It is clear from the problem statement that we could loop over the list of -files and rename each of them. - -.. R12 - -First, let us look at a simple ``for`` loop, to understand how it works. - -.. L12 - -{{{ Switch to terminal }}} -:: - - for animal in rat cat dog man - do - echo $animal - done - -.. R13 - -We just wrote a list of animals, each name separated by a space -and then printed each name on a separate line. The variable ``animal`` is a -'dummy' or a 'loop variable'. It can then be used to refer to the element of -the list that is currently being dealt with. We could, obviously, use -something as lame as ``i`` in place of ``animal``. - -.. L13 - -.. R14 - -To generate a range of numbers and iterate over them, we do the following. - -.. L14 - -{{{ Open the script ``for-1.sh`` and show }}} - -.. R15 - -Now, let us run the script and see what we get, - -.. L15 - -{{{ Switch to terminal }}} -:: - - sh for-1.sh - -.. R16 - -Now, we use a ``for`` loop to list the files that we are interested in. - -.. L16 - -{{{ Open the script ``for-2.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh for-2.sh - -.. R17 - -If the file-names contain spaces, ``for`` assumes, each word separated by a -space,to be a single item in the list and prints it in a separate line. We -could modify the script slightly to overcome this problem. - -.. L17 - -{{{ Open the script ``for-3.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh for-3.sh - -.. R18 - -Now, we have each file name printed on a separate line. The file names are -in the form ``dd - Name.mp3`` and it has to be changed to the format -``Name.mp3``. Also, if the name has spaces, we wish to replace it with -hyphens. - -.. L18 - -{{{ Open the script ``for-4.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh for-4.sh - -.. R19 - -Now, we simply replace the echo command with a ``mv`` command. - -.. L19 - -{{{ Open the script ``for-5.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh for-5.sh - -.. R20 - -We see that we get our required output. All the files have been renamed and -the spaces are removed. -Now let us move ahead with ``while`` loop. -The ``while`` command allows us to continuously execute a block of commands -until the command that is controlling the loop is executing successfully. - -.. L20 - -.. R21 - -Let's start with the lamest example of a ''while'' loop. - -.. L21 - -{{{ Open the script ``while-1.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh while-1.sh - -.. R22 - -This, as you can see, is an infinite loop that prints ``True``. - -Say, we wish to write a simple program that takes input from the user -and prints it back, until the input is ``quit``, which then quits the program. - -.. L22 - -{{{ Open the script ``while-2.sh`` and show }}} -{{{ Switch to terminal }}} -:: - - sh while-2.sh - -.. L23 - -{{{ Show slide, Environment Variables }}} - -.. R23 - -'Environment variables' are a way of passing information from the shell to the -programs that are run in it. Standard UNIX variables are split into two -categories,'Environment variables' and 'Shell variables'. In broad terms, -'Shell variables' apply only to the current instance of the shell and are -used to set short-term working conditions; 'Environment variables' have a -farther reaching significance, and are set at login, valid for the duration of -the session. By convention, 'Environment variables' have UPPER CASE and 'Shell -variables' have lower case names. - -You can see an example of environment variables in the slide. - -.. R24 - -To see all the variables and their values, we could use any of the -following, - -.. L24 - -{{{ Switch to terminal }}} -:: - - printenv | less - env - -.. R25 - -We have looked at the 'PATH' variable, in the previous tutorial. We shall now -use the ``export`` command to change it's value. - -.. L25 -:: - - export PATH=$PATH:$HOME/bin - -.. R26 - -Observe the difference in the value of 'PATH' variable before and after -modifying it. - -``export`` command is used to export a variable to the environment of all -the processes that are started from that shell. - -.. L26 - -.. L27 - -{{{ Switch to 'Summary' slide }}} - -.. R27 - -This brings us to the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Prepare scripts using control structures like ``if``, ``if-else``, - ``for`` and ``while``. - 2. Use 'environment variables'. - 3. Export a variable to the environment of all the processes, using - the ``export`` command. - -.. L28 - -{{{ Show self assessment questions slide }}} - -.. R28 - -Here are some self assessment questions for you to solve: - - 1. Print the text ``dog man`` in such a way that the prompt - continues after the text. - - 2. How can you add a new path variable ``/data/myscripts`` to $PATH variable ? - -.. L30 - -{{{ Solutions of self assessment questions on slide }}} - -.. R30 - -And the answers, - - 1. We print the given text using the ``echo`` command by using an additional - option -n as, -:: - - $echo -n dog man - - 2. We can add a new path variable by using the export command as, - -:: - - $export PATH=$PATH://data/myscripts - -.. L31 - -{{{ Show the Thank you slide }}} - -.. R31 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - diff --git a/ult/ult_7/sign.sh b/ult/ult_7/sign.sh deleted file mode 100644 index 246150d..0000000 --- a/ult/ult_7/sign.sh +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/bash -if test $1 -lt 0 -then - echo "number is negative" -else - echo "number is non-negative" -fi diff --git a/ult/ult_7/society.mp3 b/ult/ult_7/society.mp3 deleted file mode 100644 index e69de29..0000000 --- a/ult/ult_7/society.mp3 +++ /dev/null diff --git a/ult/ult_7/ult7.tex b/ult/ult_7/ult7.tex deleted file mode 100644 index a306272..0000000 --- a/ult/ult_7/ult7.tex +++ /dev/null @@ -1,202 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools\\Part VII} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Prepare scripts using 'Control Operators'. -\item Understand what 'Environment Variables' are. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\item Using Linux tools -- Part III -\item Using Linux tools -- Part IV -\item Using Linux tools -- Part V -\item Using Linux tools -- Part VI -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{if}} - \begin{itemize} - \item Print message if directory exists in \texttt{pwd} - \end{itemize} - \begin{lstlisting} - #!/bin/bash - if test -d $1 - then - echo "Yes, the directory" \ - $1 "is present" - fi - \end{lstlisting} % $ -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{[ ]} - alias for \texttt{test}} - \begin{itemize} - \item Square brackets (\texttt{[]}) can be used instead of - \texttt{test} - \item - \end{itemize} - \begin{lstlisting} - #!/bin/bash - if [ $1 -lt 0 ] - then - echo "number is negative" - else - echo "number is non-negative" - fi - \end{lstlisting} % $ - \begin{itemize} - \item \alert{spacing is important, when using the square brackets} - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{for}} - \begin{block}{Problem} - Given a set of \texttt{.mp3} files, that have names beginning with - numbers followed by their names --- \texttt{08 - Society.mp3} --- - rename the files to have just the names. Also replace any spaces - in the name with hyphens. - \end{block} - \begin{itemize} - \item Loop over the list of files - \item Process the names, to get new names - \item Rename the files - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Environment Variables} - \begin{itemize} - \item Pass information from shell to programs running in it - \item Behavior of programs can change based on values of variables - \item Environment variables vs. Shell variables - \item Shell variables -- only current instance of the shell - \item Environment variables -- valid for the whole session - \item Convention -- environment variables are UPPER CASE - \end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item Prepare scripts using control structures like ``if'', ``if-else'', - ``for'' and ``while''. -\item Use 'environment variables'. -\item Export a variable to the environment of all the processes, using - the ``export'' command. -\end{itemize} -\end{frame} -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item Print the text ``dog man'' in such a way that the prompt - continues after the text. -\vspace{8pt} -\item How can you add a new path variable ``/data/myscripts'' to \$PATH variable ? -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} -\label{sec-10} - - -\begin{enumerate} -\item \$ echo -n dog man -\vspace{15pt} -\item \$ export PATH=\$PATH://data/myscripts -\end{enumerate} -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - diff --git a/ult/ult_7/while-1.sh b/ult/ult_7/while-1.sh deleted file mode 100644 index 485e167..0000000 --- a/ult/ult_7/while-1.sh +++ /dev/null @@ -1,4 +0,0 @@ -while true -do - echo "True" -done diff --git a/ult/ult_7/while-2.sh b/ult/ult_7/while-2.sh deleted file mode 100644 index 5fbdd11..0000000 --- a/ult/ult_7/while-2.sh +++ /dev/null @@ -1,7 +0,0 @@ -while [ "$variable" != "quit" ] -do - read variable - echo "Input - $variable" -done -exit 0 - diff --git a/ult/ult_8/script.rst b/ult/ult_8/script.rst deleted file mode 100644 index ca2c5ec..0000000 --- a/ult/ult_8/script.rst +++ /dev/null @@ -1,339 +0,0 @@ -.. Objectives -.. ---------- - - .. At the end of this tutorial, you will be able to: - - .. 1. - .. 2. - -.. Prerequisites -.. ------------- - -.. 1. Using Linux tools - Part 1 -.. 2. Using Linux tools - Part 2 -.. 3. Using Linux tools - Part 3 -.. 4. Using Linux tools - Part 4 -.. 5. Using Linux tools - Part 5 -.. 6. Using Linux tools - Part 6 -.. 7. Using Linux tools - Part 7 - - -Script ------- - -.. L1 - -{{{ Show the first slide containing title, name of the production -team along with the logo of MHRD }}} - -.. R1 - -Hello friends and Welcome to the tutorial on -'Using linux tools - Part 8'. - -.. L2 - -{{{ Show slide with objectives }}} - -.. R2 - -At the end of this tutorial, you will be able to, - - 1. Search for files in many different ways. - #. Compare files with same names. - #. Create and extract an archive. - #. Customize a shell. - -.. L3 - -{{{ Switch to the pre-requisite slide }}} - -.. R3 - -Before beginning this tutorial,we would suggest you to complete the -tutorial on "Using Linux tools from Part 1 to Part 7". - -There are a bunch of tools, that will prove to be handy in your day -to day work. These tools will help you quickly perform tasks like searching -for files, comparing files and checking if they are the same, viewing the -exact differences between them, etc. - -.. L4 - -{{{ Show slide, find }}} - -.. R4 - -Let us start with the first tool - 'find' . -The ``find`` command lets you find files in a directory hierarchy. It -offers a very complex feature set allowing you to search for files with a -wide range of restrictions. We shall only look at some of the most -frequently used ones. - -.. R5 - -To find the files, which end with an extension, ``.pdf``, saved in the current -folder and all it's subfolders, we say - -.. L5 - -{{{ Open the terminal }}} -:: - - find . -name "*.pdf" - -.. R6 - -The ``find`` command also lists out the directory and sub-directory names -To list them, we say, - -.. L6 -:: - - find . -type d - -.. R7 - -In short, ``find`` allows you to set limits on file-size, modification time -and whole lot of other things which you can explore on seeing the man page -of ``find``. - -.. L7 - -.. R8 - -Let us now move on to the next tool, the compare tool. - -To compare two files, whether they are identical or not, we can use the -``cmp`` command. Let us consider some situation. Suppose, we run the ``find`` -command to locate some file, and it turns out that we have a file with same -name in different location. - -In this case, if we are unsure, whether both the files are the same, we can use -the ``cmp`` command to check if the files are identical. - -.. L8 -:: - - find . -name quick.c - ./Desktop/programs/quick.c - ./c-folder/quick.c - cmp Desktop/programs/quick.c c-folder/quick.c - -.. L9 - -{{{ Show slide, cmp }}} - -.. R9 - -If the cmp command doesn't return any output, it means that both files are -exactly identical. If there are any differences in the file, it gives you -the exact byte location at which the first difference occurred. - -.. R10 - -Let us now make a small change in one of quick.c file and run the ``cmp`` -command again. - -.. L10 -{{{ Switch to the terminal }}} - -:: - - cmp Desktop/programs/quick.c c-folder/quick.c - -.. R11 - -As we can see, it gives the exact location as to where a change is made. - -Now, we may not be happy with just the knowledge that the files are -different. We may want to see the exact differences between the two files. -The ``diff`` command can be used to find the exact differences between the -files. - -.. L11 - -.. L12 -:: - - diff Desktop/programs/quick.c c-folder/quick.c - -.. R12 - -We get back a line by line difference between the two files. - -.. L13 - -{{{ Show slide, diff }}} - -.. R13 - -The ``>`` mark indicates the content that has been added to the second file, -which was not present in the first file. The ``<`` mark indicates the lines -that were present in the first file, but are not existent in the second file. - -.. L14 - -{{{ Show slide, tar }}} - -.. R14 - -You would often come across (archive) files which are called *tarballs*. A -tar ball is essentially a collection of files, which may or may not be -compressed. Essentially, it eases the job of storing, backing up and -transporting multiple files, at once. - -.. R15 - -The following set of commands extracts the contents of the ``allfiles.tar`` -tarball to the directory extract. - -.. L15 - -{{{ Switch to terminal }}} -:: - - mkdir extract - cp allfiles.tar extract/ - cd extract - tar -xvf allfiles.tar - -.. L16 - -{{{ Show slide, extracting an archive }}} - -.. R16 - -The option, ``x`` tells ``tar`` to extract the files in the archive file -specified by the ``f`` option. The ``v`` option tells ``tar`` to give out a -verbose output. - -.. R17 - -Similarly, if we wish to create a ``tar`` archive, we use the ``c`` option -instead of the ``x`` option. For instance, the command below creates an -archive from all the files with the ``.txt`` extension. - -.. L17 - -{{{ Switch to terminal }}} -:: - - tar -cvzf newarchive.tar *.txt - -.. R18 - -You can also create and extract compressed archives using ``tar``. It -supports a wide variety of compressions like gzip, bzip2, lzma, etc. - -We need to add an additional option to ``tar`` to handle these -compressions. - - -+-------------+------------+ -| Compression | Option | -+-------------+------------+ -| gzip | ``-z`` | -| bzip2 | ``-j`` | -| lzma | ``--lzma`` | -+-------------+------------+ - -.. L18 - -.. R19 - -So, if we wished to create a gzip archive in the previous command, we -change it to the following - -.. L19 -:: - - tar -cvzf newarchive.tar.gz *.txt - -.. L20 - -{{{ Show slide, customizing your shell }}} - -.. R20 - -What would you do, if you want bash to execute a particular command each -time you start it up? For instance, say you want the current directory to -be your Desktop instead of your home folder, each time bash starts up. -Bash reads and executes commands in a whole bunch -of files called start-up files, when it starts up. - -When bash starts up as an interactive login shell, it reads the files -``/etc/profile``, ``~/.bash_profile``, ``~/.bash_login``, and -``~/.profile`` in that order. - -When an interactive shell that is not a login shell is started, bash reads -and executes commands from ~/.bashrc. This can be prevented using the ``--norc`` -option. Instead of using the ``~/.bashrc`` file on start-up, we can force -the bash to use another file, for which the ``--rcfile`` option may be used. - -Now, you know what you should do, to change the current directory to you -Desktop. Just put a ``cd ~/Desktop`` into your ``~/.bashrc`` and you are -set! -But as you know that the start-up files are used for a lot more complex things -than this. You could set (or unset) aliases and a whole bunch of environment -variables in the ``.bashrc``, like changing environment variables etc. - -.. L21 - -{{{ Switch to 'Summary' slide }}} - -.. R21 - -This brings us to the end of the end of this tutorial. -In this tutorial, we have learnt to, - - 1. Make use of the ``find`` command to find files in a directory hierarchy. - #. Find the differences between files with the same name, using the - ``cmp`` and ``diff`` commands. - #. Extract and create compressed archive's using the ``tar`` command. - #. Customize one's shell according to one's choice. - -.. L22 - -{{{ Show self assessment questions slide }}} - -.. R22 - -Here are some self assessment questions for you to solve - - 1. Look at the man page of ``find`` and state the options which - deal with symbolic links. - - 2. How do you append tar files to an archive? - -.. L23 - -{{{ Solution of self assessment questions on slide }}} - -.. R23 - -And the answers, - -1. The -H, -L and -P options with the ``find`` command control - the treatment of symbolic links. - - 2. To append tar files to an archive, we can use the ``tar`` command - either with the ``-A`` option or the ``-r`` option, as, -:: - - $ tar -Af <tar_file> <tar_file_to_be_added> - OR - $ tar -rf <tar_file> <tar_file_to_be_added> - - -.. L24 - -{{{ Show the Thank you slide }}} - -.. R24 - -Hope you have enjoyed this tutorial and found it useful. -Thank you! - - - diff --git a/ult/ult_8/ult8.tex b/ult/ult_8/ult8.tex deleted file mode 100644 index a34bf53..0000000 --- a/ult/ult_8/ult8.tex +++ /dev/null @@ -1,248 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Using Linux Tools -% -% Author: FOSSEE -% Copyright (c) 2009, FOSSEE, IIT Bombay -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\documentclass[12pt,compress]{beamer} - -\mode<presentation> -{ - \usetheme{Warsaw} - \useoutertheme{infolines} - \setbeamercovered{transparent} -} - -\usepackage[english]{babel} -\usepackage[latin1]{inputenc} -%\usepackage{times} -\usepackage[T1]{fontenc} - -% Taken from Fernando's slides. -\usepackage{ae,aecompl} -\usepackage{mathpazo,courier,euler} -\usepackage[scaled=.95]{helvet} - -\definecolor{darkgreen}{rgb}{0,0.5,0} - -\usepackage{listings} -\lstset{language=sh, - basicstyle=\ttfamily\bfseries, - commentstyle=\color{red}\itshape, - stringstyle=\color{darkgreen}, - showstringspaces=false, - keywordstyle=\color{blue}\bfseries} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% DOCUMENT STARTS -\begin{document} - -\begin{frame} - -\begin{center} -\vspace{12pt} -\textcolor{blue}{\huge Using Linux Tools} -\end{center} -\vspace{18pt} -\begin{center} -\vspace{10pt} -\includegraphics[scale=0.95]{../images/fossee-logo.png}\\ -\vspace{5pt} -\scriptsize Developed by FOSSEE Team, IIT-Bombay. \\ -\scriptsize Funded by National Mission on Education through ICT\\ -\scriptsize MHRD,Govt. of India\\ -\includegraphics[scale=0.30]{../images/iitb-logo.png}\\ -\end{center} -\end{frame} -\begin{frame} -\frametitle{Objectives} -\label{sec-2} - -At the end of this tutorial, you will be able to, -\begin{itemize} -\item Search for files in many different ways. -\item Compare files with same names. -\item Create and extract an archive. -\item Customize a shell. -\end{itemize} -\end{frame} - -\begin{frame} -\frametitle{Pre-requisite} -\label{sec-3} - -Spoken tutorial on - -\begin{itemize} -\item Using Linux tools -- Part I -\item Using Linux tools -- Part II -\item Using Linux tools -- Part III -\item Using Linux tools -- Part IV -\item Using Linux tools -- Part V -\item Using Linux tools -- Part VI -\item Using Linux tools -- Part VII -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{`find'}} - \begin{itemize} - \item `find' command helps to find files in a directory hierarchy - \item Offers a very complex feature set\\ For eg: search files by name, owner, date,etc. - \item Look at the \texttt{man} page of `find' - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{`cmp'}} - \begin{itemize} - \item Compare two files - \end{itemize} - \begin{lstlisting} - $ find . -name quick.c - ./Desktop/programs/quick.c - ./c-folder/quick.c - $ cmp Desktop/programs/quick.c \ - c-folder/quick.c - \end{lstlisting} % $ - \begin{itemize} - \item No output when the files are exactly the same - \item Else, gives location where the first difference occurs - \end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{\texttt{`diff'}} - \begin{itemize} - \item We know the files are different, but want exact differences - \end{itemize} - \begin{lstlisting} - $ diff Desktop/programs/quick.c \ - c-folder/quick.c - \end{lstlisting} % $ - \begin{itemize} - \item line by line difference between files - \item \texttt{>} indicates content only in second file - \item \texttt{<} indicates content only in first file - \end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{\texttt{`tar'}} -\begin{itemize} -\item \emph{tarball} -- essentially a collection of files -\item May or may not be compressed -\item Eases the job of storing, backing-up \& transporting files -\end{itemize} -\end{frame} - -\begin{frame}[fragile] -\frametitle{Extracting an archive} - -\begin{lstlisting} -$ mkdir extract -$ cp allfiles.tar extract/ -$ cd extract -$ tar -xvf allfiles.tar -\end{lstlisting} %$ - -\begin{itemize} -\item \texttt{-x} --- Extract files within the archive -\item \texttt{-f} --- Specify the archive file -\item \texttt{-v} --- Be verbose -\end{itemize} -\end{frame} - -\begin{frame}[fragile] - \frametitle{Compressed archives} - \begin{itemize} - \item \texttt{tar} can create and extract compressed archives - \item Supports compressions like gzip, bzip2, lzma, etc. - \item Additional option to handle compressed archives - \begin{center} - \begin{tabular}{|l|l|}\hline - Compression & Option \\\hline - gzip & \texttt{-z} \\\hline - bzip2 & \texttt{-j} \\\hline - lzma & \texttt{-{}-lzma} \\\hline - \end{tabular} - \end{center} - \end{itemize} - \begin{lstlisting} - $ tar -cvzf newarchive.tar.gz *.txt - \end{lstlisting} % $ -\end{frame} - - -\begin{frame} -\frametitle{Customizing your shell} -\begin{itemize} -\item Bash reads \texttt{/etc/profile}, - \texttt{\textasciitilde{}/.bash\_profile}, - \texttt{\textasciitilde{}/.bash\_login}, and - \texttt{\textasciitilde{}/.profile} in that order, when starting - up as a login shell. -\item \texttt{\textasciitilde{}/.bashrc} is read, when not a login - shell -\item Put any commands that you want to run when bash starts, in this - file. -\end{itemize} -\end{frame} - - -\begin{frame} -\frametitle{Summary} -\label{sec-8} - - In this tutorial, we have learnt to, - - -\begin{itemize} -\item To make use of the ``find'' command find files in a directory hierarchy. -\item To find the differences between files with the same name, using the - ``cmp'' and ``diff'' commands. -\item To extract and create compressed archive's using the ``tar'' command. -\item Customize one's shell according to one's choice. -\end{itemize} -\end{frame} -\begin{frame}[fragile] -\frametitle{Evaluation} -\label{sec-9} - - -\begin{enumerate} -\item Look at the man page of ``find'' and state the options which - deal with symbolic links. -\vspace{8pt} -\item How do you append tar files to an archive ? -\end{enumerate} -\end{frame} -\begin{frame} -\frametitle{Solutions} - -\begin{enumerate} -\item -H, -L and -P options with the ``find'' command -\vspace{15pt} -\item tar -Af <tar\_file> <tar\_file\_to\_be\_added> -\end{enumerate} - -\end{frame} -\begin{frame} - - \begin{block}{} - \begin{center} - \textcolor{blue}{\Large THANK YOU!} - \end{center} - \end{block} -\begin{block}{} - \begin{center} - For more Information, visit our website\\ - \url{http://fossee.in/} - \end{center} - \end{block} -\end{frame} - -\end{document} - - - |