Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Picasoft
APIs
Init
Linux
Commits
f49f9e84
Verified
Commit
f49f9e84
authored
Jan 20, 2019
by
Stephane Bonnet
Browse files
tty et devices
parent
98f75f2a
Pipeline
#33737
passed with stage
in 21 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
src/cli/basics.tex
View file @
f49f9e84
...
...
@@ -573,15 +573,13 @@ $ cat erreurs
ls: impossible d'accéder à 'foo': Aucun fichier ou dossier de ce type
\end
{
Verbatim
}
\end
{
beamercolorbox
}
\end
{
frame
}
\begin
{
frame
}{
Redirection vers un descripteur
}
On peut indiquer optionnellement le descripteur de destination
\begin
{
block
}{
Redirection vers un descripteur
}
Il suffit d'indiquer le numéro de descripteur préfixé par
\cmd
{
\&
}
Il suffit d'indiquer le numéro de descripteur préfixé par
\cmd
{
\&
}
\end
{
block
}
\begin
{
exampleblock
}{
Redirection de
\cmd
{
stderr
}
vers
\cmd
{
stdout
}}
...
...
@@ -592,10 +590,75 @@ ls: impossible d'accéder à 'foo': Aucun fichier ou dossier de ce type
\end
{
exampleblock
}
\begin
{
alertblock
}{
Attention à l'ordre
}
\cmd
{
ls
-
lR
/
2
>
\&
1
>filelist
}
ne produit pas le même résultat
\cmd
{
ls
-
lR
/
2
>
\&
1
>filelist
}
ne produit pas le même résultat
\end
{
alertblock
}
\end
{
frame
}
\begin
{
frame
}
[
fragile
]
{
Les fichiers stdin, stdout, stderr existent
-
ils?
}
Sous Unix, tout est un fichier : données, programmes, périphériques comme le
clavier et l'écran sont des fichiers.
\begin
{
block
}{
\cmd
{
tty
}}
La commande
\cmd
{
tty
}
permet de voir à quel fichier sont associés les entrées et sorties standard.
Il s'agit du terminal de contrôle du shell
(
\emph
{
controlling tty
}
)
\end
{
block
}
\begin
{
beamercolorbox
}
[
rounded
=
true,shadow
=
true
]
{
terminal
}
\begin
{
Verbatim
}
$
tty
/dev/pts/0
\end{Verbatim}
\end{beamercolorbox}
\end{frame}
\begin{frame}
{
Les fichiers de périphérique
}
Les fichiers de périphériques (
\emph
{
device files
}
) comme
\cmd
{
/dev/pts/0
}
sont des interfaces avec le noyau
Linux.
Y accéder déclenche l'exécution d'un service du noyau, comme lire des caractères depuis le clavier ou afficher
des caractères à l'écran, au travers d'un sous-système du noyau ou d'un pilote de périphérique.
\begin{block}
{
\cmd
{
/dev
}}
Le répertoire
\cmd
{
/dev
}
contient tous les fichiers de périphériques.
Ils peuvent être créés à la volée, par exemple après connexion d'une clé USB.
\end{block}
\end{frame}
\begin{frame}
[fragile]
{
Jouons avec /dev/pts
}
\begin{exampleblock}
{}
Ouvrez deux terminaux. Dans chaque, lancez
\cmd
{
tty
}
pour observer leur terminal de contrôle.
\end{exampleblock}
\vspace
{
10pt
}
\begin{columns}
[b]
\begin{column}
{
.45
\textwidth
}
Ecrivez dans le terminal en redirigeant vers le terminal de contrôle de
\textbf
{
l'autre
}
terminal
\begin{beamercolorbox}
[rounded=true,shadow=true]
{
terminal
}
\begin{Verbatim}
$
tty
/
dev
/
pts
/
0
$
echo Salut >
\textcolor
{
yellow
}{
/dev/pts/1
}
\end{Verbatim}
\end{beamercolorbox}
\vspace
{
0pt
}
\end{column}
\begin{column}
{
.45
\textwidth
}
Le texte tapé dans l'autre terminal s'affiche ici!
\begin{beamercolorbox}
[rounded=true,shadow=true]
{
terminal
}
\begin{Verbatim}
$
tty
\textcolor
{
yellow
}{
/
dev
/
pts
/
1
}
$
Salut
\end{Verbatim}
\end{beamercolorbox}
\vspace
{
0pt
}
\end{column}
\end{columns}
\end{frame}
\subsection
{
Économiser le clavier
}
\begin{frame}
{
L'autocomplétion
}
...
...
@@ -603,10 +666,10 @@ ls: impossible d'accéder à 'foo': Aucun fichier ou dossier de ce type
Accessible par
\cmd
{
TAB
}
après avoir tapé le début de ce qu'on cherche.
\begin{block}
{
Autocomplétion dans le système de fichiers
}
\begin
{
enumerate
}
\begin{
description
}
\item
[\cmd{TAB}]
complète les première lettres s'il n'y a pas d'ambiguïté
\item
[\cmd{TAB TAB}]
affiche une liste des possibilités d'autocomplétion
\end
{
enumerate
}
\end{
description
}
\end{block}
\begin{block}
{
Autocomplétion en général
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment