Bash linux 5 : La manipulation des fichiers

in #utopian-io6 years ago

La manipulation des fichiers

Introduction

This article will be devoted to commands and their options that we can use on files and directories in order to make ,copy, remove,move ,rename a file or a directory.

image.png

Création d'un répertoire

Linux organise son système de fichiers suivant une hiérarchie. Au fil du temps tu vas tendre à accumuler une certaine quantité d'informations (les capacités de stockage sont en augmentation continue). Il est important donc de créer une structure de répertoire qui va nous aider à organiser ces informations d'une manière raisonnable.

La création d'un répertoire est facile. la commande dont on a besoin est mkdir qui est courte pour la création d'un répertoire.

mkdir[options]<Directory>

Sous sa forme la plus basique, on peut exécuter **mkdir **en fournissant seulement le répertoire et celui-ci va être créé.

user@bash: pwd
/home/nick
user@bash:
user@bash: ls
bin Documents public_html
user@bash:
user@bash: mkdir logicieldebases
user@bash:
user@bash: ls
bin Documents logicieldebases public_html

l'interprétation des lignes:

  • Line 1 : pwd est pour s'assurer ou on se trouve (dans cet exemple ci-dessus je suis dans le répertoire home)

  • Line 2 : on liste ce qui se trouve dans le répertoire.

  • Line 7 :on exécute la commande mkdir et on crée le répertoire logicieldebases.

Il y'a peu d'options valable pour mkdir: la première est -p qui se charge de créer les répertoires parents dont on a besoin, la deuxième est -v qui permet la description de l'opération actuelle.

user@bash: mkdir -p logicieldebases/exam/corriges
user@bash:
user@bash: cd logicieldebases/exam/corriges
user@bash: pwd
/home/nick/logicieldebases/exam/corriges

et maintenant la même commande mais avec l'option -v

user@bash: mkdir -pv logicieldebases/exam/corriges
mkdir: created directory 'logicieldebases/exam'
mkdir: created directory 'logicieldebases/exam/corriges'
user@bash:
user@bash: cd logicieldebases/exam/corriges
user@bash: pwd
/home/nick/logicieldebases/exam/corriges

Suppression d'un répertoire

Pour supprimer un répertoire, on utilise la command rmdir

rmdir[options]<Directory>   

Deux choses à noter. La première est que rmdir juste comme mkdir a les options -v et -p . La deuxième des choses c'est que le répertoire doit être vide avant de le supprimer.

user@bash: rmdir logicieldebases/exam/corriges
user@bash:
user@bash: ls logicieldebases/exam

Création d'un fichier vierge

Pour créer un fichier vierge , on utilise la commande touch

touch[options]<nomdufichier>
user@bash: pwd
/home/nick/logicieldebases
user@bash:
user@bash: ls
exam
user@bash:
user@bash: touch exemple
user@bash:
user@bash: ls
exemple exam

touch est une commande qu'on peut utiliser pour modifier l'accès et les temps du modification d'un fichier.

Copie d'un fichier ou d'un répertoire

Pour copier un fichier ou un répertoire ,on utilise la commande cp qui veut dire copy.

cp [options]<source><destination>

Il existe beaucoup d'options valables pour cp, par exemple:

user@bash: ls
exemple exam
user@bash: cp exemple fic
user@bash: ls
fic exemple exam

Noter que la source et la destination sont tous les deux des chemins d'accès. Cela veut dire qu'on peut référer à celles-ci en utilisant des chemins d'accès absolus ou relatifs.

Quand on utilise cp, la destination peut être un chemin d'accès à un répertoire ou à un fichier. Si la destination est un fichier alors une copie de la source sera créé mais le nom de la copie sera le nom du fichier spécifié dans la destination. Si la destination est un répertoire alors une copie de fichier sera créé dans ce répertoire et la copie aura comme nom le meme nom que la source.

En utilisant l'option -r , qui veut dire récursive, on peut copier des répertoires. Récursive veut dire qu'on veut voir le répertoire et tous les fichiers et répertoires qui sont dedans, et qu'on veut allez aux sous-repertoires et faire la meme chose.

user@bash: ls
fic exemple exam
user@bash: cp exam exam1
cp: omitting directory 'exam'
user@bash: cp -r exam exam1
user@bash: ls
fic exemple exam exam1

dans l'exemple ci-dessus ,tout fichier et répertoire dans le répertoire exam sera copié dans exam1.

Déplacer un fichier ou un répertoire

Pour déplacer un fichier ou un répertoire , on utilise la commande mv, elle travaille selon le meme principe que cp.

mv[options]<source><destination>
user@bash: ls
fic exemple exam exam1
user@bash: mkdir sauvegarde
user@bash: mv exam1 sauvegarde/exam2
user@bash: mv fic sauvegarde/
user@bash: ls
sauvegarde exemple exam

l'interpretation des lignes:

  • Line1:création d'un nouveau répertoire appelé sauvegarde.
  • Line4:on a déplacé le répertoire exam1 vers le répertoire sauvegarde et on l'a renommé exam2.
  • Line7: on a déplacé le fichier fic vers sauvegarde. Et comme on a pas fournit le nom de destination ,il a gardé son nom.

Suppression d'un fichier (et des répertoires non vides)

Pour supprimer un fichier ,on utilise la commande rm.

rm [options]<file>
user@bash: ls
sauvegarde exemple exam2 marie
user@bash: rm exemple
user@bash: ls
sauvegarde exam2 marie

Suppression de répertoires non vides:

comme beaucoup d'autre commandes rm a pas mal d'options qui définissent son comportement comme -r, quand **rm ** est exécutée avec l'option -r, ça nous permet de supprimer des répertoires et tous les fichiers et répertoires qui sont dedans.

user@bash: ls
sauvegarde exam3 marie
user@bash: rmdir sauvgarde
rmdir: failed to remove 'backups':Directory not empty
user@bash: rm sauvegarde
rm: cannot remove 'sauvegarde',Is a direcory
user@bash: rm -r sauvegarder
user@bash: ls
exam2 marie



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Congratulations @raptorjesus! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes received

Click on any badge to view your own Board of Honor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

By upvoting this notification, you can help all Steemit users. Learn how here!

Thank you for the contribution. It has been approved.

You can contact us on Discord.
[utopian-moderator]

Hey @raptorjesus I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Coin Marketplace

STEEM 0.30
TRX 0.11
JST 0.033
BTC 64223.84
ETH 3158.34
USDT 1.00
SBD 4.29