stage_unix
. Ce répertoire n’existant pas, pensez à le créer.Faire glisser la fenêtre à gauche, ou à droite, ou en haut.
Pour changer de bureau: Ctrl - Alt - fleches
Vous trouverez des informations bien utiles sur latex ici
petit-prince
dans votre maison.cd petit-prince
)petit-prince.tex
à l’aide d’emacs\documentclass[a4paper,10pt]{article} % Appel a une classe de document
\usepackage{amsmath} % Appel a un paquet optionnel de math
\usepackage{graphicx} % Ajouter le paquet de gestion des images
\usepackage[utf8]{inputenc} % Reconnaissance de l'UTF-8
\usepackage[T1]{fontenc} % Chargement de fontes truetype (caractères accentués)
\usepackage[french]{babel} % Localisation en français
% Personnalisation du style global
\pagestyle{empty}
\begin{document}
% Contenu du document
Bonjour le monde de LaTeX !
\end{document}
Ctrl+x 1
, Ctrl+x 2
, Ctrl+x 3
, on peut partitionner son emacs. Partitionnez votre éditeur en trois parties. Revenir à une seule.pdflatex petit-prince.tex
petit-prince.tex
Commande fill-paragraph
ou fill-region
, raccourci M-q
Rajouter une page de garde (l’auteur est “Antoine De Saint-Exupéry” et le titre “Le petit prince”)
\maketitle
Si on veut obtenir une page de garde sur un page à part, il faudra changer la classe de document, par exemple en report
. Pour cela: \documentclass[a4paper,10pt]{article}
Pour l’imprimer en deux par page et le laisser lisible, essayez d’augmenter la taille de la fonte de base.
Changer la taille de police dans documentclass
Voici quelques commandes utiles en latex :
Commande | Effet |
---|---|
emph |
mise en emphase (italique) |
textbf |
mise en gras (bold font) |
$ |
mettre une formule |
$$ |
ouvrir un environnement math |
label |
créer une étiquette |
ref |
afficher la valeur d’une référence |
input |
insérer un autre fichier |
includegraphics |
insérer une image |
Rajouter les images qui vont bien dans le premier chapitre.
\includegraphics[scale=0.8]{mon_image.jpg}
Nom (à droite) | Prénom (Aligné à gauche) | Date (centrée) |
---|---|---|
Rollet | Antoine | 29/02 |
Morandat | Floréal | 21/12 |
Bienvenu | Jean-Luc | 21/12 |
Renault | David | 21/12 |
\begin{tabular}{rgc}
Rollet & Antoine & 29/02\\
Morandat & Floréal & 21/12\\
Bienvenu & Jean-Luc & 21/12\\
Mystérion & Sauveur & 21/12\\
\end{tabular}
\begin{tabular}{|r|g|c|}
\hline
Rollet & Antoine & 29/02\\
\hline
Morandat & Floréal & 21/12\\
Bienvenu & Jean-Luc & 21/12\\
Mystérion & Sauveur & 21/12\\
\hline
\end{tabular}
\[E \not= \frac{MC^2}{\Pi}\]
$$ E \neq \frac{MC^2}{\Pi}$$
Utiliser la commande \input
Normalement ça a déjà été fait pour pouvoir obtenir une page de garde.
\documentclass{report}
\tableofcontents
\begin{figure}
\includegraphics[width=\linewidth]{image.jpg}
\caption{Une belle image}
\label{fig:monimage}
\end{figure}
Figure \ref{fig:monimage} présente une superbe image.
\listoffigures
\begin{itemize}
\item Un premier item
\item un autre
\item et encore un
\end{itemize}
Dans emacs: M-x ispell-change-dictionnary
choisir la langue (francaise ici)
puis M-x flyspell-mode
C-s
M-x query-replace
C-_
M-x goto-line
C-x C-s
puis C-x C-c
Plusieurs possibilités: utiliser des petites programmes d’édition comme nano
, vi
, ou encore emacs en mode “no window”: emacs -nw
mkdir init_unix
init_unix
, créer l’arborescence suivante (convention: le nœuds terminant par des slashs sont des répertoires, les autres sont des fichiers). Utiliser la commande touch
pour créer des fichiers vides.
foo/
|-- bar
|-- quux/
| |-- baz
|-- rny/
|-- heak
|-- gpq
Plusieurs possibilités selon l’endroit où on se place, et qu’on utilise des chemins absolus ou relatifs. Par exemple, en se plaçant dans le répertoire foo
(cd foo
):
~~~
mkdir quux
mkdir rny
touch bar
touch quux/baz
touch rny/heak
touch rny/gpq
~~~
ou en condensé
~~~
mkdir quux rny
touch quux/baz rny/heak rny/gqp
~~~
/home/username/init_unix/foo/bar
(sur un distribution Unix standard, à adapter dans le cas de l’Enseirb-Matmeca)
../bar
cd
ou cd ~
cd /
puis cd -
; ou encore pushd /
puis popd
dans /home/
(sur une distribution Unix standard, à adapter dans le cas de l’Enseirb-Matmeca)
pwd
echo
, sans option, puis avec l’option -n
man man
-k
Utiliser la commande man
. Rappel: pour recherche une chaîne dans le man
: shift /
(la touche shift
)
Utiliser la commande man
(que l’on traduit parfois par “rtfm” pour “read the f*** man”)
Utiliser la commande man
Ouvrir un interpréteur de commande. Créer un répertoire init_unix
dans votre répertoire utilisateur HOME
. Placez vous dans ce répertoire.
Taper la commande echo "Hello tout le monde" > hello.txt
qui permet de créer un fichier texte hello.txt
contenant le texte Hello tout le monde. Vérifier son contenu.
Par exemple cat hello.txt
ou more hello.txt
ou less hello.txt
hello.pdf
à partir de hello.txt
(penser à utiliser a2ps
avec l’option -o
et ps2pdf
)
a2ps hello.txt -o hello.ps ; ps2pdf hello.ps
evince hello.pdf
L’interpréteur de commandes “rend la main”. En fait, le &
permet de lancer la commande en arrière-plan.
Ouvrez deux interpréteurs de commande.
- Dans le premier, exécutez sleep 10000
- Dans le deuxième, essayez de trouver le PID du premier processus
- Dans le premier terminal: faites passer le programme en arrière plan, puis revenir au premier plan
C-z bg
(pour “background”) puis C-z fg
(pour “foreground”)
sleep 10000
semble bloqué. Proposez deux solutions pour le terminer, une depuis le premier interpréteur, l’autre depuis le deuxième
C-c
ou kill -9 PID
Les questions ci-dessous concernent les wildcards (ou jokers) en shell (à ne pas confondre avec les expressions régulières).
Soit l’expression ab[ab]*a
, parmi les mots suivants, lesquels sont
reconnus par cette expression?
abababa
Soit l’expression a?c
, parmi les mots suivants, lesquels sont
reconnus par cette expression?
abc
Soit l’expression a?[bc]*
, parmi les mots suivants, lesquels sont
reconnus par cette expression?
abc |
ac |
atccbbbcccc |
abc
et atccbbbcccc
ls -al
puis ls -alh
cp
, copier le répertoire foo/rny
vers foo/ohka
(on souhaite le renommer).
Est-ce qu’on aurait pu s’y prendre autrement?
cp -r foo/rny foo/ohka
Attention, ça déplace et renomme le répertoire; on aurait pu aussi faire par exemple:
cp -r foo/rny/ foo ; mv foo/rny foo/ohka
mv foo/quux/baz foo/ohka/zab
ln -s ../rny/gpq foo/quux/zanb
rm -rf quux
find
, trouvez tous les fichier .tex
contenus dans votre répertoire utilisateur (et ses sous répertoires).
find ~ -name "*.tex"
fichier.txt
. Interdisez le en écriture, et essayer d’écrire dedans.chmod a-w fichier.txt
; puis chmod a-r fichier.txt
; puis chmod a+rw fichier.txt
Utiliser la commande chmod
pour donner successivement les droits suivants. A chaque fois vérifier avec ls -l
que les droits sont bien ceux voulus:
rwxrwxrwx |
r-x------ |
r--r--r-- |
rwxrwxr-x |
r--r----- |
rw-rw-rw- |
rwxr-xr-x |
rw-r--r-- |
rwx------ |
chmod a+rwx fichier.txt |
chmod u=rx fichier.txt |
chmod ugo=r fichier.txt |
chmod ugo=rwx,o-w fichier.txt |
chmod ug=r fichier.txt |
chmod ugo=rw fichier.txt |
chmod u+rwx,go=rx fichier.txt |
chmod u=rw,go=r fichier.txt |
chmod u+rwx fichier.txt |
ls -al
et qui redirige la sortie standard dans sortie.txt
.ls -al > sortie.txt
; puis cat sortie.txt | sort
commande env
ou commande set
(plus détaillée)
On peut à nouveau utiliser les commandes env
ou set
. Possible d’utiliser un filtre: env | grep PWD
. On peut aussi afficher le contenu de la variable avec echo
:
echo $PWD
VAR=12345 ; echo $VAR ; unset VAR
On peut aussi utiliser la commande set
pour affecter et affcher les contenu de VAR
Commande alias
alias ll='ls -l'
alias ls='ls --color'
ou alias ls='ls --color=auto'
unalias ls
.bash_alias
. Vérifiez qu’il a bien été pris en compte.wc /etc/group
ou cat /etc/group | wc
ls -al | wc (penser à retirer les trois premiers du décompte), ou mieux `ls -al |
tail -n +4 |
grep
sur le fichier /etc/group
trouvez toutes les lignes qui contiennent un s
, puis toutes celles qui commencent par s
. Enfin retirez celles qui comportent des d
.
grep "s" /etc/group
grep "^s" /etc/group
grep -v "d" /etc/group
grep -ri <login> ~/
tar czf foo.tar.gz foo/
puis tar tf foo.tar.gz
puis tar xf foo.tar.gz
find
, trouvez tous les fichiers dans foo
(y compris dans les sous-répertoires) qui ont un a
dans leur nom
find foo/ -type f -name "*a*"
find
, trouvez tous les répertoires vides de votre compte utilisateur.
find ~/ -type d -empty
sort /etc/group
ou cat /etc/group | sort
/etc/group
en extrayant les noms de groupe (i.e. en n’affichant pas le reste)
cat /etc/group | cut -d':' -f1
A la racine, on tape: ls -al | grep rwxrwxrwx
/etc/group
en remplaçant tous les a
par des @
et tous les i
par des !
cat /etc/group | tr a @ | tr i !
cat /etc/group | sed s/:x:/:iks:/g
C-r
(plusieurs fois pour faire défiler) ouhistory
puis !numero
pour relancer la commande (remplacer numero
par le nombre correspondant à la commande