Je sais que Linux est un système d'exploitation basé sur des fichiers texte. Ce que je voudrais faire, c'est créer un fichier en utilisant vi
toutes les différentes commandes que j'ai apprises. De cette façon , je pouvais trouver chaque commande très facilement en utilisant l' /
en vi
. Mais je ne veux le faire que si cela ne change pas le fonctionnement de mon ordinateur. Serait-ce une bonne idée?
command-line
vi
BJsgoodlife
la source
la source
vi
(par rapport à, disonsgedit
) ou vouliez-vous simplement dire "un éditeur de texte"?sudo
.Réponses:
Écrire un fichier texte ne va pas "changer le fonctionnement de votre ordinateur".
En particulier, pour faire quelque chose comme ça, vous devez faire l'une des
Puisque vous n'allez pas explicitement faire quelque chose comme ça, il n'y a rien à craindre. En particulier, l'autre réponse va à des longueurs inutiles en suggérant que vos fichiers texte doivent commencer par des hachages sur chaque ligne. Bien sûr que non. Le simple stockage d'un fichier texte quelque part dans un répertoire de base normal ne fera rien.
la source
#
pour que rien d'accidentel ne soit exécuté par hasard. Je pense que c'est toujours mieux d'être du côté le plus sûr.You won't have permission to do this
. sudo me fait un sandwich.Aye, aye, sir!
exit
?Vous pouvez enregistrer toutes les commandes que vous avez apprises dans un fichier mais quelques points importants à noter:
source
le fichierLa meilleure façon serait de mettre un
#
au début de toutes les commandes pour commenter toutes les commandes afin qu'elles ne soient pas exécutées accidentellement. De cette façon, vous pouvez réellement rechercher la commande dont vous avez besoin et sans risque. Vous pouvez ajouter#
au début de chaque ligne par la commande suivante:sed -i 's/^/#/' <file_name>
EDIT: J'ai donné le troisième point comme une mesure de sécurité extrême, comme "neon_overload" et "David Z" ont souligné que mettre des hachages dans toutes les lignes est trop étendu et donc pas nécessaire, je les soutiendrais dans ce contexte. Comme indiqué par "random832", une bien meilleure alternative à mon troisième point serait de démarrer le fichier
exit
, car aucune commande ultérieure ne sera alors exécutée.EDIT-2: "Rinzwind" a mentionné deux points importants:
Ne pas écraser un fichier existant
Stockez le fichier dans le répertoire personnel de l'utilisateur (
/home/$USER/
).la source
put a # in the beginning of all the commands to comment out all the commands so they don't get executed accidentally
Je ne sais pas trop si c'est censé être une suggestion sérieuse ou une blague. Mon détecteur de sarcasme m'a échoué aujourd'hui.#!
- justeexit
; De cette façon, vous êtes également protégé contresh yourfile
lequel un shebang invalide ne vous aidera pas.neon_overload a une très bonne réponse.
Je vais développer un peu une certaine facette de votre question - je voudrais en faire un commentaire, mais je n'ai pas assez de réputation ici.
Linux, en tant que système d'exploitation, n'est PAS basé sur des fichiers texte. Cela dit, je peux voir d'où vous venez. Pour un observateur extérieur, il y a pas mal de choses à faire avec l'édition et le lancement de fichiers "texte", surtout par rapport à Windows.
Cela a plusieurs raisons, dont certaines sont:
la source
La réponse courte est non, vous ne changerez pas votre ordinateur en créant un fichier texte dans vi. Cependant, si vous ne faites pas attention, la création de ce premier fichier texte pourrait changer votre vie . Apprendre à la manière Unix peut être une pratique profondément enrichissante.
la source
vi
est un éditeur de texte , donc si tout ce que vous voulez, c'est simplement stocker des extraits de texte dans un fichier texte et le rechercher, vous pouvez tout faire directement à partir du terminal avec les commandes intégrées.Écrivez une note dans un fichier texte (créera le fichier s'il n'existait pas):
note d'écho avec des données importantes >> info.txt
IMPORTANT: faites attention aux guillemets simples et doubles et préfixez-les avec des barres obliques si vous souhaitez les inclure.
Recherchez dans le fichier du texte (par exemple
important
):grep --color -i important info.txt
Pour éviter de taper
--color -i
cela devrait être aliasé dans votre~/.bashrc
.Vous pouvez également ajouter du texte multiligne à des fichiers texte existants ou non existants:
puis tapez ou collez le texte, puis appuyez sur CTR+Z
Quant à changer le système, non, cela ne changera pas la façon dont votre système fonctionne tant que vous créez des fichiers dans votre propre dossier de départ et ne les exécutez pas (vous pouvez exécuter un fichier même s'il n'est pas exécutable, par exemple avec
bash myFile
) . Assurez-vous également que vous n'utilisez les privilèges root que lorsque vous en avez besoin.Et enfin, votre interprétation du système basé sur des fichiers vous a quelque peu induit en erreur: la plupart des systèmes d'exploitation ont des fichiers qui stockent des paramètres importants qui affectent profondément le fonctionnement du système, mais ils sont situés dans des emplacements prédéfinis et sont généralement protégés des modifications par les utilisateurs réguliers.
Il est cependant possible de se tirer une balle dans le pied, par exemple, si en tant qu'utilisateur normal vous avez un dossier `` exécutable '' local que vous avez ajouté à
PATH
, et si dans ce dossier vous avez des fichiers exécutables qui ont les mêmes noms que ceux construits -dans les services communs ou les mots clés de bash, tels quetest
,echo
,cat
,for
,cut
, etc.la source