<!DOCTYPE html>
<html lang="fr">
<head>
	<title>agreugreu is here</title>
	<meta charset="UTF-8">
	<meta name="keywords" content="SHELL, Command, Command Line, Command Line Interface, CLI">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<link rel="stylesheet" href="agreugreu.css">
</head>
<body>
	<div class="navbar">
		<nav>
			<ul>
				<li>
					<a href="#Terminal">Terminal</a>
				</li>
				<li>
					<a href="#Vim">Vim</a>
				</li>
				<li>
					<a href="#Git">Git</a>
				</li>
				<li>
					<a href="#Fun">Fun commands</a>
				</li>
				<li>
					<a href="#Autre">Autre</a>
				</li>
				
			</ul>
		</nav>
	</div>
	
<h2 id="Terminal">Terminal</h2>
	<h3>Raccourcis clavier</h3>
		<ul>
			<li>
				<p>controle + a = Aller au debut de ligne</p>
			</li>
			<li>
				<p>controle + u = Supprimer tout ce qu'il y a avant le curseur</p>
			</li>
			<li>
				<p>controle l = clear</p>
			</li>
			<li>
				<p>controle + z = Passer le processus arriere plan et le mettre en pause</p>
			</li>
			<li>
				<p>controle + r = Chercher une commande déjà utiliser</p>
			</li>	
		</ul>
	<h3>Commandes utiles</h3>
		<ul>
			<li>
				<p>sudo -i = ROOT environment<br>
				su - = ROOT environment (faire juste "su" permet d'avoir les permissions ROOT mais garde l'environement user)
				</p>
			</li>
			<li>
				<p>sudo !! = Dernière commande en root</p>
			</li>
			<li>
				<p>fg = Passage le processus au premier plan</p>
			</li>
			<li>
				<p>bg = Continuer la tache en arriere plan (fait continuer la tache mis en arrière plan et pause par ctrl z)</p>
			</li>
			<li>
				<p>systemctl stop &lt;service&gt; (fonctionne aussi avec start/status/restart et reload le cas échéant)</p>
			</li>
			<li>
				<p>/sbin/shutdown -h 0 = éteindre le pc</p>
			</li>
			<li>
				<p>/sbin/reboot = Redémarrer le pc</p>
			</li>
			<li>
        <p>ln -s &lt;vrai-fichier&gt; &lt;fichier-lien-symbolique&gt; = lien symbolique</p>
			</li>
			<li>
        <p>scp &lt;envoi&gt; &lt;reception&gt; = Copier des fichiers à distance (pour chemin distant faire user@ip:/chemin )</p>
			</li>
			<li>
				<p>dmesg = Montrer tous les peripheriques</p>
			</li>
			<li>
				<p>umount = Ejecter une cle USB ou autre</p>
			</li>
			<li>
				<p>htop ou top = Permet de voir les ressources hardware (CPU, RAM en autre) </p>
			</li>
			<li>
        <p>find [chemin] -name "texte" = Trouver un ficher avec son nom </p>
			</li>
			<li>
				<p>grep -ril &quot;&lt;texte&gt;&quot; [chemin] = Chercher un texte dans les fichier du dossier/sous-dossier du chemin indiquer</p>
			</li>
			<li>
        <p>tail -f &lt;fichier&gt; = Lire les dernières ligne d'un fichier et print aussi les appends qui se feront<br>
				PS: faire "less" puis faire "F" (maj + f) pour faire la même chose en plus pratique</p>
			</li>
			<li>
				<p>tar -czvf &lt;nom-archive&gt; &lt;fichier&gt; = Compresser en gzip</p>
			</li>
			<li>
				<p>tar -xzvf &lt;fichier&gt; = Extrairer un fichier gzip</p>
			</li>
			<li>
				<p>pgp -c &lt;nom-du-fichier&gt; = Chiffrer un fichier</p>
			</li>
			<li>
				<p>pgp -d &lt;nom-du-fichier-a-dechiffre&gt; = Dechiffrer un fichier</p>
			</li>
			<li>
				<p>ssh-keygen -t rsa -b 4096 = clée privé/publique ssh<br>
				ssh-keygen -t ed25519 = pareil en mieux
				</p>
			</li>
		</ul>
		
<!--
<p>
du lore, bravo à toi pour l'avoir trouvé 
<br>
<br>
<br>
<br>
<br>
<br>
<br>
pour ta récompence je vais te donner .......      euh ......... pas trop d'idée ........ , nah ba au final j'taurai juste pris du temps :D
</p>
-->

<h2 id="Vim">Vim</h2>
	<ul>
		<li>
			<p>maj+v = mode "visuel"</p>
		</li>
		<li>
			<p>x pour couper</p>
		</li>
		<li>
			<p>p pour coller</p>
		</li>
		<li>
			<p>u pour revenir en arriere</p>
		</li>
		<li>
			<p>i pour passer en édition/insertion</p>
		</li>
		<li>
			<p>échap pour quitter</p>
		</li>
		<li>
			<p>q pour quitter</p>
		</li>
		<li>
			<p>w pour sauvegarder</p>
		</li>
		<li>
			<p>q! pour quitter sans enregistrer</p>
		</li>
		<li>
			<p>wq pour sauvegarder et quitter</p>
		</li>
		<li>
			<p>:set number = numéroter les lignes</p>
		</li>
		<li>
			<p>pour cherche dans un man/vim/less = /"cherche"</p>
		</li>
		<li>
      <p>sous vim pour rechercher et remplacer = :%s/"ancien truc"/"nouveau truc"/g <br>
      (très ressemblant à la commande sed, dans tout le document utiliser l'exemple, pour fiare que sur un mot il faut retirer le "%" et le "g" de fin, et pour ne faire qu'une ligne il faut aussi retirer le "%"mais laisser le "g" de fin)
      </p>
		</li>
		<li>
			<p>pour installer space vim = curl -sLf https://spacevim.org/install.sh | bash</p>
		</li>
	</ul>
	
	
<h2 id="Git">Git</h2>
  <ul>
    <li>
      <p>git clone &lt;adress&gt; = Copier le dépot git depuis son repository
    </li>
    <li>
      <p>git init = Permet de créer un nouveau dépot git localement (nouveau projet)</p>
    </li>
    <li>
      <p>git status = Permet de voir les modifications faites qui seront prises en compte (rouge non ajouté, vert ajouté), permet aussi d'avoir des informations par rapport à la branche distante (ex: 2 commit behind)</p>
    </li>
    <li>
      <p>git add &lt;.&gt; = Permet d'ajouter les fichiers pour enregistrer leur modifications</p>
    </li>
    <li>
      <p>git diff = Permet de voir les modifications ajoutés précedemment avec git add</p>
    </li>
    <li>
      <p>git commit -m &quot;first commit&quot; </p>
    </li>
    <li>
      <p>git push = Permet d'envoyer les modifications enregistrés par git commit au dépot distant </p>
    </li>
    <li>
      <p>Site incroyable pour les commandes git : <a href="https://gitexplorer.com">https://gitexplorer.com</a></p>
    </li>
  </ul>

<h2 id="Fun">Fun commands</h2>
	<ul>
    <li>
      <p>oneko</p>
    </li>
		<li>
			<p>cmatrix -rb</p>
		</li>
		<li>
			<p>sl = train</p>
		</li>
		<li>
			<p>train fou:</p>
			<div class="code">
			<p>alias nomcommande='while true;do<br>
			sl -aF<br>
			done'
			</p>
			</div>
		</li>
		<li>
			<p>sudo apt install oneko cmatrix sl</p>
		</li>
	</ul>
	


<h2 id="Autre">Autre</h2>
	<ul>
		<li>
			<p>apt install zsh = installer zsh (souvent couplé avec ohmyzsh)</p>
		</li>
		<li>
			<p>sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)" = installer ohmyzsh</p>
		</li>
		<li>
			<p>pour changer le theme de zsh = vim .zshrc et change le theme avec "ys" pareil pour root (su -) (sudo -i)</p>
		</li>
		<li>
			<p>windows + l = verrouiller la session</p>
		</li>
		<li>
			<p>deepl = site de traduction</p>
		</li>
		<li>
			<p>add-apt-repository non-free = ajout dépot non libre pour driver</p>
			<p>souvent suivi de "apt update" puis "apt install firmware-iwlwifi"
		</li>
		<li>
			<p>maj+fleche pour selection un texte (firefox ou autre)</p>
		</li>
		<li>
			<p>tilix = cool terminal emulator</p>
		</li>
		<li>
			<p>DISPLAY:0.0 = redirection sur une autre interface graphique(ssh)  </p>
		</li>
	</ul>



</body>
</html>