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
8696642b
Verified
Commit
8696642b
authored
Jan 21, 2019
by
Stephane Bonnet
Browse files
find
parent
94b1b601
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/cli/semi-adv.tex
View file @
8696642b
...
...
@@ -18,8 +18,9 @@
Joker le plus utilisé.
Remplace toute suite de caractères dans un motif. S'il est utilisé seul, remplace tout mot.
\begin{exampleblock}
{
Cré
e
ons des fichiers
}
\begin{exampleblock}
{
Créons des fichiers
}
\cmd
{
cd ; mkdir api ; cd api
}
\cmd
{
touch here that there this
}
\end{exampleblock}
...
...
@@ -381,9 +382,87 @@ $ locate issue
\begin
{
frame
}
[
fragile
]
{
\cmd
{
find
}}
\begin
{
block
}{}
\begin
{
description
}
\item
[
\cmd
{
find
}
]
recherche un fichier en parcourant l'arborescence
\end
{
description
}
\end
{
block
}
Il suffit de spécifier le point de départ et ce qu'on cherche.
\begin
{
beamercolorbox
}
[
rounded
=
true,shadow
=
true
]
{
terminal
}
\begin
{
Verbatim
}
$
find . -name file
_
1
./api/file
_
1
\end{Verbatim}
\end{beamercolorbox}
On peut utiliser des jokers dans le nom
\begin{beamercolorbox}
[rounded=true,shadow=true]
{
terminal
}
\begin{Verbatim}
$
find .
-
name 'file
_
1
*
'
-
print
.
/
api
/
file
_
11
.
/
api
/
file
_
18
.
/
api
/
file
_
1
[
...
]
\end
{
Verbatim
}
\end
{
beamercolorbox
}
\begin
{
alertblock
}{
Attention aux quotes
}
Le motif doit être entre quotes, sinon il sera interprété par le
shell.
\end
{
alertblock
}
\end
{
frame
}
\begin
{
frame
}
[
fragile
]
{
Filtrer avec
\cmd
{
find
}}
\begin
{
block
}{}
\cmd
{
find
}
est capable de filtrer la recherche
\begin
{
itemize
}
\item
{
Par type de fichier
}
\item
{
Par taille
}
\item
{
Par date de modification
}
\item
...
\end
{
itemize
}
\end
{
block
}
\begin
{
exampleblock
}{
Cherchons les fichiers de plus de
10
Mo
}
\cmd
{
find
/
-
size
+
10
M
-
print
}
\end
{
exampleblock
}
\begin
{
alertblock
}{
Il y a plein d'erreurs
!
}
Elles sont dûes au permissions d'accès à certains fichiers.
On peut les supprimer en redirigeant la sortie d'erreur vers
le périphérique 'poubelle'
\cmd
{
/
dev
/
null
}
:
\cmd
{
find
/
-
size
+
10
M
-
print
2
>
/
dev
/
null
}
\end
{
alertblock
}
\end
{
frame
}
\begin
{
frame
}
[
fragile
]
{
Exécuter des commandes avec
\cmd
{
find
}}
\cmd
{
find
}
peut exécuter une commande sur chaque fichier trouvé
avec l'option
\cmd
{
-
exec
}
.
\begin
{
exampleblock
}{
Créer un backup de chaque fichier
}
\cmd
{
find api
-
name 'file
*
'
-
exec cp
\{\}
\{\}
.bak
\textbackslash
;
}
\end
{
exampleblock
}
\begin
{
block
}{
Explication
}
\begin
{
itemize
}
\item
\cmd
{
cp
}
]
est exécutée pour chaque fichier trouvé
\item
\cmd
{
\{\}
}
est remplacé par le nom du fichier trouvé
\item
\cmd
{
\textbackslash
;
}
indique la fin de la commande.
\end
{
itemize
}
\end
{
block
}
\begin
{
alertblock
}{}
\begin
{
itemize
}
\item
\cmd
{
-
exec
}
n'autorise qu'une seule commande.
\item
On peut avoir plusieurs
\cmd
{
-
exec
}
.
\end
{
itemize
}
\end
{
alertblock
}
\end
{
frame
}
\subsection
{
Chercher à l'intérieur des fichiers
}
...
...
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