<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archives des Bash - Xavki</title>
	<atom:link href="https://xavki.blog/category/bash/feed/" rel="self" type="application/rss+xml" />
	<link></link>
	<description>Open your Sources..</description>
	<lastBuildDate>Wed, 07 Aug 2019 20:29:23 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Raspberry et Kubernetes : tuto de montage et installation</title>
		<link>https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/</link>
					<comments>https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/#comments</comments>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Wed, 07 Aug 2019 20:29:23 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=931</guid>

					<description><![CDATA[<p>Avant toute chose je tiens à remercier toute la communauté de xavki qui a participée à ce projet par le biais de dons. Pour récapituler voici le matériel utilisé : 3 Raspberry Pi 3 Modèle B 3 Raspberry Pi 4... <a href="https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/">Raspberry et Kubernetes : tuto de montage et installation</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Avant toute chose je tiens à remercier toute la communauté de xavki qui a participée à ce projet par le biais de dons.</p>
<p>Pour récapituler voici le matériel utilisé :</p>
<ul>
<li>3 Raspberry Pi 3 Modèle B</li>
<li>3 Raspberry Pi 4 4G ram</li>
<li>6 dissipateurs</li>
<li>Plaque cluster 6</li>
<li>Transfo USB</li>
<li>Swith 8 ports</li>
<li>10 Cable RJ45</li>
<li>6 Cables USB</li>
</ul>
<p>Remarques :</p>
<ul>
<li>les raspberry 4 s&#8217;alimente à partir d&#8217;usb c à la différence des Pi3</li>
<li>les pi 4 utilisent des connectiques micro-hdmi</li>
</ul>
<h2>1ère étape : le montage</h2>
<p>L&#8217;étape la plus fun surement avec un petit jeu de lego. Dans cette vidéo, je vous explique les astuces et la manière d&#8217;assembler le tout.</p>
<p><iframe title="KubPi - 1. Montage de la tour de raspberry et cablage" width="625" height="352" src="https://www.youtube.com/embed/zNp1ExLQBh4?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<h2>2ème étape : l&#8217;installation de l&#8217;OS</h2>
<p>Pour l&#8217;OS, j&#8217;ai choisi de faire simple avec un raspbian. Concernant la version j&#8217;ai préféré partir vers une stretch. En effet, lors de l&#8217;installation de docker celle-ci est la 18.09 avec la stretch et cette version est la maximum acceptée pour le moment par kubernetes.</p>
<p>Autre élément à retenir, la possibilité d&#8217;activé le ssh sans écrant et de configurer l&#8217;ip statique. Pour cela je vous explique tout dans la vidéo.</p>
<p><iframe title="Kubpi - 2. Installation OS, ssh et ip statique (astuce sans écran)" width="625" height="352" src="https://www.youtube.com/embed/l-HXKa39_e0?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<h2>3ème étape : l&#8217;installation automatisée de kubernetes</h2>
<p>Ansible est reconnu. J&#8217;ai pu confectionner un rôle à partir des informations recueillies à droite et à gauche. Vous pouvez trouver ce playbook <a href="https://gitlab.com/xavki/ansible-kubpi">dans ce dépôt</a>.</p>
<p><iframe title="KubPi - 3. Kubernetes par ansible sur les Raspberry" width="625" height="352" src="https://www.youtube.com/embed/MseiMBXmNzY?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>Et voilà l&#8217;installation est terminée. Finalement elle est plutôt simple et relativement accessible.</p>
<p>&nbsp;</p>
<p>L’article <a href="https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/">Raspberry et Kubernetes : tuto de montage et installation</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xavki.blog/raspberry-et-kubernetes-tuto-de-montage-et-installation/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Netcat &#8211; envoyer des fichiers entre 2 machines</title>
		<link>https://xavki.blog/netcat-envoyer-des-fichiers-entre-2-machines/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Mon, 13 May 2019 20:08:24 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Netcat]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=913</guid>

					<description><![CDATA[<p>Avant de commencer, il faut le rappeler la meilleure manière et la plus sécurisée pour envoyer des fichiers entre 2 serveurs c&#8217;est scp. SCP s&#8217;appuie sur SSH on peut donc lui faire largement confiance. Mais il faut savoir que parfois... <a href="https://xavki.blog/netcat-envoyer-des-fichiers-entre-2-machines/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/netcat-envoyer-des-fichiers-entre-2-machines/">Netcat &#8211; envoyer des fichiers entre 2 machines</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Avant de commencer, il faut le rappeler la meilleure manière et la plus sécurisée pour envoyer des fichiers entre 2 serveurs c&#8217;est scp. SCP s&#8217;appuie sur SSH on peut donc lui faire largement confiance.</p>
<p>Mais il faut savoir que parfois on peut utiliser netcat pour envoyer et recevoir des fichiers.</p>
<p><iframe loading="lazy" title="Netcat - 3. Envoi et réception de fichiers | tutos fr" width="625" height="352" src="https://www.youtube.com/embed/wKReZ4iBIoM?list=PLn6POgpklwWr5BceQz8UuB8wDFxLDYoE2" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>Premier cas, on veut récupérer le fichier via un curl :</p>
<pre class="code highlight"><span id="LC2" class="line" lang="shell"><span class="c"># envoi d'un fichier</span></span>
<span id="LC3" class="line" lang="shell"></span><span id="LC4" class="line" lang="shell">netcat <span class="nt">-l</span> <span class="nt">-p</span> 81 &lt; toto.txt</span>
<span id="LC5" class="line" lang="shell"></span>
<span id="LC6" class="line" lang="shell"><span class="c"># interrogation</span></span>
<span id="LC7" class="line" lang="shell"><span class="c"># curl 172.17.0.2:81</span></span></pre>
<p>Autre méthode avec un netcat à l&#8217;écoute qui écrit dans un fichier. Puis un envoi via netcat.</p>
<pre><span id="LC12" class="line" lang="shell"><span class="c">#réception</span></span>
<span id="LC13" class="line" lang="shell">netcat <span class="nt">-l</span> <span class="nt">-p</span> 6666 <span class="o">&gt;</span>x.file</span>
<span id="LC14" class="line" lang="shell"></span>
<span id="LC15" class="line" lang="shell"><span class="c">#envoi</span></span>
<span id="LC16" class="line" lang="shell">netcat <span class="nt">-w</span> 3 172.17.0.1 6666 &lt;toto.txt</span>
</pre>
<p>L’article <a href="https://xavki.blog/netcat-envoyer-des-fichiers-entre-2-machines/">Netcat &#8211; envoyer des fichiers entre 2 machines</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Netcat &#8211; Comment réaliser une connexion HTTP ?</title>
		<link>https://xavki.blog/netcat-comment-realiser-une-connexion-http/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Sun, 05 May 2019 14:00:02 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Netcat]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=909</guid>

					<description><![CDATA[<p>Netcat est un outil méconnu, il est souvent utiliser pour tester l&#8217;ouverture d&#8217;un port et c&#8217;est presque tout. Mais pourtant netcat permet de faire bien plus. Certains black hat l&#8217;utilisent pour disposer d&#8217;une backdoor le temps de faire quleques opérations... <a href="https://xavki.blog/netcat-comment-realiser-une-connexion-http/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/netcat-comment-realiser-une-connexion-http/">Netcat &#8211; Comment réaliser une connexion HTTP ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align:justify;">Netcat est un outil méconnu, il est souvent utiliser pour tester l&#8217;ouverture d&#8217;un port et c&#8217;est presque tout. Mais pourtant netcat permet de faire bien plus.</p>
<p style="text-align:justify;">Certains black hat l&#8217;utilisent pour disposer d&#8217;une backdoor le temps de faire quleques opérations par exemple. Sans aller aussi loin je vous propose en quelques articles de découvrir comment en faire plus avec ce vrai couteau suisse du système linux.</p>
<p style="text-align:justify;">Aujourd&#8217;hui nous allons commencer très simplement avec une simple connexion HTTP avec un serveur comme apache ou nginx par exemple.</p>
<p>Vous pouvez décourir cela dans cette vidéo :</p>
<p><iframe loading="lazy" title="Netcat - 1. Connexion HTTP | tutos fr" width="625" height="352" src="https://www.youtube.com/embed/6EE1yB9yqMo?list=PLn6POgpklwWr5BceQz8UuB8wDFxLDYoE2" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>Pour résumer très simplement :</p>
<p><code>netcat <span class="nt">-v</span> 172.17.0.2 80</code></p>
<p>Puis pour tester notre connexion, nous pouvons passer :</p>
<p><code>GET / HTTP/1.0</code></p>
<p>Avec celle-ci on demande au serveur web de nous fournir la page d&#8217;accueil &#8220;/&#8221;.</p>
<p>L’article <a href="https://xavki.blog/netcat-comment-realiser-une-connexion-http/">Netcat &#8211; Comment réaliser une connexion HTTP ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Iptables &#8211; première règle : dropper les ping</title>
		<link>https://xavki.blog/iptables-premiere-regle-dropper-les-ping/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Wed, 01 May 2019 16:50:49 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Iptables]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=898</guid>

					<description><![CDATA[<p>Dans les précédents articles, nous avons découvert l&#8217;intérêt d&#8217;utiliser iptables et ses principales options. Aujourd&#8217;hui je vous propose d&#8217;utiliser iptables pour créer une première règle. C&#8217;est souvent un cas d&#8217;école, nous allons chercher à empêcher les ping. Pour cela nous... <a href="https://xavki.blog/iptables-premiere-regle-dropper-les-ping/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/iptables-premiere-regle-dropper-les-ping/">Iptables &#8211; première règle : dropper les ping</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Dans les précédents articles, nous avons découvert l&#8217;intérêt d&#8217;utiliser iptables et ses principales options. Aujourd&#8217;hui je vous propose d&#8217;utiliser iptables pour créer une première règle.</p>
<p>C&#8217;est souvent un cas d&#8217;école, nous allons chercher à empêcher les ping. Pour cela nous allons créer une règle de DROP :</p>
<pre>iptables -I INPUT -p icmp --icmp-type 8 -j DROP
</pre>
<p>Pour lister les règles :</p>
<pre>
iptables -L
</pre>
<p> </p>
<p>Je vous propose de découvrir cela en vidéo</p>
<p><iframe loading="lazy" title="IPTABLES - 3. PREMIERES REGLES (EX: PING)" width="625" height="352" src="https://www.youtube.com/embed/jxZ9qXtOt7o?list=PLn6POgpklwWrI_ri_djf3R3RCyDOsyKoC" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>L’article <a href="https://xavki.blog/iptables-premiere-regle-dropper-les-ping/">Iptables &#8211; première règle : dropper les ping</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Iptables &#8211; principales options</title>
		<link>https://xavki.blog/iptables-principales-options/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Mon, 22 Apr 2019 16:05:00 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Iptables]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=894</guid>

					<description><![CDATA[<p>Iptables comme tout bon outil linux permet de recevoir de nombreuses options. Balayons ensemble les principales options. Ces options nombreuses peuvent se combiner. Bien souvent il peut être utile d&#8217;avoir recours à un fichier pour créer ces règles iptables. Cela... <a href="https://xavki.blog/iptables-principales-options/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/iptables-principales-options/">Iptables &#8211; principales options</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Iptables comme tout bon outil linux permet de recevoir de nombreuses options. Balayons ensemble les principales options. Ces options nombreuses peuvent se combiner. Bien souvent il peut être utile d&#8217;avoir recours à un fichier pour créer ces règles iptables. Cela permet d&#8217;organiser les règles et de les commenter surtout (les gitter également).</p>
<p>Découvrons ces options en vidéo :</p>
<p><iframe loading="lazy" title="IPTABLES - 2. OPTIONS ET CHAINES" width="625" height="352" src="https://www.youtube.com/embed/ZcxY_vx6pW4?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<ul>
<li>-L : liste les règles (&#8211;line-numbers : numéros de règles) * -t : type (NAT&#8230;)<br />
-&gt; Type d&#8217;actions chaines/règles Actions sur les chaines : INPUT / OUTPUT / FORWARD en majuscules</li>
<li>
<p>-A : ajout de règle à une chaine (-A INPUT)</p>
</li>
<li>
<p>-D : suppression de règle (-D INPUT 1 &#8211; numéro de la règle dans la chaine INPUT )</p>
</li>
<li>
<p>-R : remplace la règle (-R INPUT)</p>
</li>
<li>
<p>-I : insertion d&#8217;une règle (sans chiffre au début de la chaine (ex: INPUT 1)</p>
</li>
<li>
<p>-F : flush les règles pour une chaine (-F INPUT)</p>
</li>
<li>
<p>-N : création de chaîne</p>
</li>
<li>
<p>-X : drop de chaine</p>
</li>
<li>
<p>-P : définition de la policy d&#8217;une chaine (par défaut &#8211; ex: -P INPUT DROP)</p>
</li>
</ul>
<hr />
<p dir="auto">-&gt; Caractéristiques &lt;-</p>
<ul>
<li>
<p>-p : protocole (-p tcp)</p>
</li>
<li>
<p>-s : la source (ip, réseau)</p>
</li>
<li>
<p>-j : action à faire (DROP/ACCEPT)</p>
</li>
<li>
<p>-d : la destination (ip, réseau)</p>
</li>
<li>
<p>-i : interface d&#8217;entrée (eth0&#8230;)</p>
</li>
<li>
<p>-o : interface de sortie</p>
</li>
<li>
<p>&#8211;sport 80 : un port</p>
</li>
<li>
<p>-m multiport &#8211;sport 80,443 : plusieurs ports</p>
</li>
<li>
<p>-t : type (NAT&#8230;)</p>
</li>
</ul>
<p>L’article <a href="https://xavki.blog/iptables-principales-options/">Iptables &#8211; principales options</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Linux &#8211; chercher puis archiver des fichiers avec cpio</title>
		<link>https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/</link>
					<comments>https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/#comments</comments>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Wed, 09 Jan 2019 12:36:04 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=882</guid>

					<description><![CDATA[<p><img width="1880" height="1134" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-300x181.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-768x463.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-1024x618.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-1568x946.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Personnellement, j&#8217;aime bien me faire des backups facile à utiliser qui regroupent des type de fichiers. Par exemple cela peut être des photos, des scripts, des logs&#8230; Généralement pour archiver des masses de fichiers on a tendance à utiliser la... <a href="https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/">Linux &#8211; chercher puis archiver des fichiers avec cpio</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1134" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-300x181.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-768x463.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-1024x618.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-893895-1568x946.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Personnellement, j&#8217;aime bien me faire des backups facile à utiliser qui regroupent des type de fichiers. Par exemple cela peut être des photos, des scripts, des logs&#8230; Généralement pour archiver des masses de fichiers on a tendance à utiliser la commande tar mais dans ce cas de figure ce n&#8217;est pas forcément adapté. Effet tar fonctionne par répertoire.</p>
<p>CPIO est une très bonne alternative dans ce cas. En effet, cpio accepte que l&#8217;on lui fournisse des fichiers et s&#8217;occupe de les ajouter dans un fichier d&#8217;archives. On peut l&#8217;utiliser avec un pipe à la suite d&#8217;un ls mais le plus sympa c&#8217;est avec un find.</p>
<p>Par exemple, comment lister les fichiers &#8220;.sh&#8221; et les archiver ?</p>
<pre>find . -name "*.sh" | cpio -o --format=tar &gt; compil.tar</pre>
<p>Le pipe facilite donc grandement les choses.</p>
<p>Si vous le souhaitez, vous pouvez retrouver cette article en vidéo.</p>
<p><iframe loading="lazy" title="Sysadmin - 4. Rechercher et ARCHIVER dans un fichier | tutos fr" width="625" height="352" src="https://www.youtube.com/embed/UaqMdfrbzGk?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>L’article <a href="https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/">Linux &#8211; chercher puis archiver des fichiers avec cpio</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xavki.blog/linux-chercher-puis-archiver-des-fichiers-avec-cpio/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Shell : commandes internes vs externes ?</title>
		<link>https://xavki.blog/shell-commandes-internes-vs-externes/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Fri, 04 Jan 2019 16:13:51 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=878</guid>

					<description><![CDATA[<p><img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Hello les xavkistes !  Dans cet article nous allons revenir sur une vidéo que j&#8217;ai publié sur la chaine youtube. Il s&#8217;agit de découvrir les deux types de fonctions de shell : les commandes internes les commandes externes Les premières... <a href="https://xavki.blog/shell-commandes-internes-vs-externes/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/shell-commandes-internes-vs-externes/">Shell : commandes internes vs externes ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-60088-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Hello les xavkistes !  Dans cet article nous allons revenir sur une vidéo que j&#8217;ai publié sur la chaine youtube. Il s&#8217;agit de découvrir les deux types de fonctions de shell :</p>
<ul>
<li>les commandes internes</li>
<li>les commandes externes</li>
</ul>
<p><iframe loading="lazy" title="Sysadmin - 3. COMMANDES bash internes ou externes ?? | tutos fr" width="625" height="352" src="https://www.youtube.com/embed/ZrRDNvHa4qE?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>Les premières ont pour caractéristiques d&#8217;être présente dans le shell de manière implicite sans avoir besoin de préciser leur localisation à travers le $PATH. On peut lister ses celles-ci si on tape dans la ligne de commandes : help. On y retrouve des commandes comme echo, time, fg&#8230;</p>
<p>Les secondes sont donc différentes car il est nécessaire que le PATH soit chargé pour pouvoir les utiliser sinon votre shell ne saura pas où les trouver.</p>
<p>Mais qu&#8217;est-ce que cela change ? tout simplement la rapidité pour les appeler. Dans la vidéo ci-dessous je fais un test pour comparer deux calculs similaires mais avec des binaires internes ou externes.</p>
<p>Le résultat semble sans appel. Quand on ne passe par le PATH cela va beaucoup plus vite. Néanmoins il faut modéré ces propos par le fait que nous n&#8217;utilisons pas le même binaire et de fait ces derniers ne sont pas faits pour faire la même chose. Donc des performance différentes.</p>
<p>&nbsp;</p>
<p>L’article <a href="https://xavki.blog/shell-commandes-internes-vs-externes/">Shell : commandes internes vs externes ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[Linux] : pdftk pour fusionner des pdf  et d&#8217;autres actions</title>
		<link>https://xavki.blog/linux-pdftk-pour-fusionner-des-pdf-et-dautres-actions/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Wed, 02 Jan 2019 09:22:59 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">https://xavki.wordpress.com/?p=317</guid>

					<description><![CDATA[<p><img width="225" height="225" src="https://xavki.blog/wp-content/uploads/2018/07/images.png" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/images.png 225w, https://xavki.blog/wp-content/uploads/2018/07/images-150x150.png 150w" sizes="auto, (max-width: 225px) 100vw, 225px" />J&#8217;aime beaucoup les petits outils linux qui une fois installés permettent en une ligne de faire pas mal de trucs. Souvent on peut ensuite les enchainer avec d&#8217;autres outils et le tout fait des trucs sur-puissants sur quelque sligne ou... <a href="https://xavki.blog/linux-pdftk-pour-fusionner-des-pdf-et-dautres-actions/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/linux-pdftk-pour-fusionner-des-pdf-et-dautres-actions/">[Linux] : pdftk pour fusionner des pdf  et d&#8217;autres actions</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="225" height="225" src="https://xavki.blog/wp-content/uploads/2018/07/images.png" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/images.png 225w, https://xavki.blog/wp-content/uploads/2018/07/images-150x150.png 150w" sizes="auto, (max-width: 225px) 100vw, 225px" /><p>J&#8217;aime beaucoup les petits outils linux qui une fois installés permettent en une ligne de faire pas mal de trucs. Souvent on peut ensuite les enchainer avec d&#8217;autres outils et le tout fait des trucs sur-puissants sur quelque sligne ou même une seule.</p>
<p>pdftk fait partie de ces outils pratiques. Il permet de faire des actions sur des fichiers pdf, notamment la fusion de pdf.</p>
<p>Ainsi avec :</p>
<pre>pdftk fichier1.pdf fichier2.pdf fichier3.pdf cat output fusion.pdf</pre>
<p>Donc on merge 3 fichiers pdf en un seul.</p>
<p>On peut aussi supprimer des pages :</p>
<pre>pdftk fichier1.pdf cat 1-4 6-end output fusion.pdf</pre>
<p>avec cela on supprime la page 5.</p>
<p>Pratiquer une rotation de 90 degrés :</p>
<pre>pdftk fichier1.pdf cat 1east 2-end output fusion.pdf</pre>
<p>Extraire les metadata d&#8217;un fichier pdf :</p>
<pre>pdftk fichier1.pdf dump_data output metadata.txt</pre>
<p>L’article <a href="https://xavki.blog/linux-pdftk-pour-fusionner-des-pdf-et-dautres-actions/">[Linux] : pdftk pour fusionner des pdf  et d&#8217;autres actions</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[Bash] : le bloc note de Wget</title>
		<link>https://xavki.blog/bash-le-bloc-note-de-wget/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Mon, 17 Dec 2018 13:05:08 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=710</guid>

					<description><![CDATA[<p><img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Un article pour retenir l&#8217;essentiel dans la commande wget. C&#8217;est une commande que l&#8217;on utilise souvent mais trop rarement on s&#8217;y intéresse en détails. Quelques essentiels : Télécharger simplement un fichier wget http://google.fr Pour savoir où vous en êtes en... <a href="https://xavki.blog/bash-le-bloc-note-de-wget/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/bash-le-bloc-note-de-wget/">[Bash] : le bloc note de Wget</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/09/vacuum-cleaner-carpet-cleaner-housework-housekeeping-38325-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Un article pour retenir l&#8217;essentiel dans la commande wget. C&#8217;est une commande que l&#8217;on utilise souvent mais trop rarement on s&#8217;y intéresse en détails.</p>
<p>Quelques essentiels :</p>
<ul>
<li>Télécharger simplement un fichier</li>
</ul>
<pre>wget http://google.fr</pre>
<ul>
<li>Pour savoir où vous en êtes en cas de crash lors du téléchargement</li>
</ul>
<pre>wget -c http://google.fr</pre>
<ul>
<li>Télécharger en arrière plan</li>
</ul>
<pre>wget -b http://google.fr</pre>
<ul>
<li>Limiter la vitesse de téléchargement</li>
</ul>
<pre>wget --limit-rate=200k http://google.fr</pre>
<ul>
<li>Télécharger à partir d&#8217;un fichier contenant une liste d&#8217;url</li>
</ul>
<pre>wget -i liste.txt</pre>
<ul>
<li>Aspirer la totalité d&#8217;un site</li>
</ul>
<pre>wget --mirror -p --convert-links -P ./madestination/ https://xavki.blog</pre>
<ul>
<li>Aspirer un ftp avec user/password</li>
</ul>
<pre>wget --ftp-user=user --ftp-password=motdepasse ftp://url</pre>
<p>L’article <a href="https://xavki.blog/bash-le-bloc-note-de-wget/">[Bash] : le bloc note de Wget</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[Bash] : comment remettre en place le bashrc ou le bash_profile par défaut ?</title>
		<link>https://xavki.blog/bash-comment-remettre-en-place-le-bashrc-par-defaut/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Wed, 12 Dec 2018 07:32:14 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=671</guid>

					<description><![CDATA[<p><img width="1733" height="1300" src="https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg 1733w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-300x225.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-768x576.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1024x768.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1568x1176.jpeg 1568w" sizes="auto, (max-width: 1733px) 100vw, 1733px" />Un article très court aujourd&#8217;hui pour revenir sur une situation qui m&#8217;est déjà arrivée. Tout heureux d&#8217;avoir trouvé une nouvelle fonction à mettre en place dans mon bahsrc, je décide de modifier celui-ci. Donc je faic un vim sur mon... <a href="https://xavki.blog/bash-comment-remettre-en-place-le-bashrc-par-defaut/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/bash-comment-remettre-en-place-le-bashrc-par-defaut/">[Bash] : comment remettre en place le bashrc ou le bash_profile par défaut ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1733" height="1300" src="https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg 1733w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-300x225.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-768x576.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1024x768.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1568x1176.jpeg 1568w" sizes="auto, (max-width: 1733px) 100vw, 1733px" /><p>Un article très court aujourd&#8217;hui pour revenir sur une situation qui m&#8217;est déjà arrivée. Tout heureux d&#8217;avoir trouvé une nouvelle fonction à mettre en place dans mon bahsrc, je décide de modifier celui-ci. Donc je faic un vim sur mon fichier favori et je le source.</p>
<p>Et là paff le chien. Mon bashrc ne fonctionne plus donc je reste bloqué sur mon terminal. Et là ce cas est assez facile pour revenir dessus car je sais quelles modifications j&#8217;ai fait. Mais cela peut arriver avec des comptes d&#8217;exploitation que l&#8217;on pousse sur un parc de serveur. Et alors imaginez cela sur un bastion c&#8217;est un peu balot.</p>
<p>Parfois on peut avoir besoin de restaurer un bashrc fonctionnel très rapidement. Dans ce cas la solution est de restaurer le bashrc par défaut à partir des squelettes à votre disposition dans /etc/skel :</p>
<pre>20:33:33 - oki @ doki /etc/skel
└─ $ ▶ ls -larth
total 28K
-rw-r--r-- 1 root root 3,7K sept. 1 2015 .bashrc
-rw-r--r-- 1 root root 220 sept. 1 2015 .bash_logout
-rw-r--r-- 1 root root 655 mai 16 2017 .profile
cp /etc/skel/.bashrc ~/</pre>
<p>Une fois ce copier/coller réalisé, vous devez sourcer le fichier si vous volez :</p>
<pre>source ~/.bashrc</pre>
<div id="attachment_672" style="width: 1743px" class="wp-caption alignnone"><img loading="lazy" decoding="async" aria-describedby="caption-attachment-672" class="alignnone size-full wp-image-672" src="http://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg" alt="board game business challenge chess" width="1733" height="1300" srcset="https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052.jpeg 1733w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-300x225.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-768x576.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1024x768.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/08/pexels-photo-277052-1568x1176.jpeg 1568w" sizes="auto, (max-width: 1733px) 100vw, 1733px" /><p id="caption-attachment-672" class="wp-caption-text">Photo by Pixabay on <a href="https://www.pexels.com/photo/board-game-business-challenge-chess-277052/" rel="nofollow">Pexels.com</a></p></div>
<p>L’article <a href="https://xavki.blog/bash-comment-remettre-en-place-le-bashrc-par-defaut/">[Bash] : comment remettre en place le bashrc ou le bash_profile par défaut ?</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[Bash] : couper un fichier en plusieurs avec split</title>
		<link>https://xavki.blog/bash-couper-fichier-avec-split/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Thu, 11 Oct 2018 13:14:14 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=606</guid>

					<description><![CDATA[<p><img width="1880" height="1258" src="https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife.jpg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife.jpg 1880w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-300x201.jpg 300w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-768x514.jpg 768w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-1024x685.jpg 1024w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-1568x1049.jpg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Fichier trop gros ou besoin de découper votre fichier en parts égales ou splitter toutes les X lignes, c&#8217;est possible. Split est un binaire que j&#8217;utilise peu mais qui peu s&#8217;avérer très efficace. Voyons un peu comment celui-ci fonctionne avec... <a href="https://xavki.blog/bash-couper-fichier-avec-split/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/bash-couper-fichier-avec-split/">[Bash] : couper un fichier en plusieurs avec split</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1258" src="https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife.jpg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife.jpg 1880w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-300x201.jpg 300w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-768x514.jpg 768w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-1024x685.jpg 1024w, https://xavki.blog/wp-content/uploads/2018/08/food-vegetables-wood-knife-1568x1049.jpg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Fichier trop gros ou besoin de découper votre fichier en parts égales ou splitter toutes les X lignes, c&#8217;est possible. Split est un binaire que j&#8217;utilise peu mais qui peu s&#8217;avérer très efficace. Voyons un peu comment celui-ci fonctionne avec quelques exemples.</p>
<p>Créons tout d&#8217;abord un fichier de test :</p>
<pre>└─ $ ▶ for i in {0..100000};do echo "ligne ${i}"&gt;&gt;texte.txt; done</pre>
<p>Avec ceci nous avons donc un fichier texte de 100 000 lignes.</p>
<p>Lançons un split sans option :</p>
<pre>split texte.txt</pre>
<p>Nous obtenons de nombreux fichiers de 1000 lignes chacun.</p>
<pre>└─ $ ▶ wc -l x*
   1000 xaa
   1000 xab
   1000 xac</pre>
<p>Remarquez que tous commence par un x.</p>
<p>Utilisons l&#8217;option -l pour définir le nombre de ligne par fichier :</p>
<pre>└─ $ ▶ split -l50000 texte.txt 


└─ $ ▶ wc -l x*
50000 xaa
50000 xab</pre>
<p>De la me manière nous aurions pu découper par taille de fichier en bytes avec l&#8217;option -b.</p>
<p>La nomenclature imposé dans le nommage du fichier est pas très fun mais on peut la retoucher en définissant un suffix numérique par exemple avec l&#8217;option -d. On a alors des fichiers nomé x01, x02&#8230;</p>
<p>Mais ce qui est le plus intéressant c&#8217;est de combiner l&#8217;utilisation d&#8217;un suffix et d&#8217;une numérotation numérique. Pour cela utilisons :</p>
<pre>└─ $ ▶ split -d -l50000 texte.txt suffix-
└─ $ ▶ wc -l suffix*
50000 suffix-00
50000 suffix-01</pre>
<p>Jusqu&#8217;ici je dirais que ce qui est embêtant c&#8217;est de se poser la questionde quel pas pour splitter les fichiers et combien vais-je en obtenir ? et bien au lieu de définir une taille ou un nombre de ligne, on peut définir le nombre de fichiers à la sortie avec l&#8217;option -n.</p>
<pre>└─ $ ▶ split -d -n4 texte.txt suffix-
└─ $ ▶ wc -l suffix*
25694 suffix-00
24769 suffix-01
24769 suffix-02
24769 suffix-03</pre>
<p>Comment fusionner tous les fichiers à l&#8217;arrivée si on a besoin du fichier d&#8217;origine ?</p>
<pre>└─ $ ▶ md5sum texte.txt 
d4da8315d007541dfdcf61e2ea2fbecd texte.txt
└─ $ ▶ cat suffix-* | md5sum
d4da8315d007541dfdcf61e2ea2fbecd -</pre>
<p>Un cat suffit et vous le voyez vous pouvez faire des vérifications sur le contenu avec le fameux md5sum.</p>
<p>L’article <a href="https://xavki.blog/bash-couper-fichier-avec-split/">[Bash] : couper un fichier en plusieurs avec split</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Top commandes linux #10 : apg, tar.gz, mariadb galera, comm, rpm, vim</title>
		<link>https://xavki.blog/top-commandes-linux-10-apg/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Mon, 01 Oct 2018 08:12:10 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=745</guid>

					<description><![CDATA[<p>Nouvelle semaine, nouveau tour de quelques binaires et informations que j&#8217;ai découvert au cours de la semaine. Je vous rappelle que vous pouvez les retrouver sur cette page. Par ailleurs, si vous ne voulez pas manquer les prochains articles, inscrivez-vous... <a href="https://xavki.blog/top-commandes-linux-10-apg/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/top-commandes-linux-10-apg/">Top commandes linux #10 : apg, tar.gz, mariadb galera, comm, rpm, vim</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Nouvelle semaine, nouveau tour de quelques binaires et informations que j&#8217;ai découvert au cours de la semaine. Je vous rappelle que <a href="https://xavki.blog/top-commandes/">vous pouvez les retrouver sur cette page</a>. Par ailleurs, si vous ne voulez pas manquer les prochains articles, <strong>inscrivez-vous aux publications (zéro spam, pas de ebook et autres perturbations)</strong>.</p>
<p><strong># rpm</strong></p>
<p>Lister les 100 plus gros paquets installés sur une redhat sauf kernel, glib&#8230;</p>
<pre>rpm -qa --queryformat "%10{SIZE} %{NAME}\n" | grep -Ev "(kernel|glibc|perl$|python-libs$|coreutils|hwdata$|glib2|grub2$|yum$|binutils$)" | sort -rn | head -100</pre>
<p># vim</p>
<p>Ajout du nom du fichier en cours d&#8217;édition</p>
<pre>:%p</pre>
<p><strong># apg</strong></p>
<p>Petit binaire pour générer un mot de passe simplement.</p>
<pre>21:48:52 - oki @ doki ~ 
└─ $ ▶ apg

Please enter some random data (only first 16 are significant)
(eg. your old password):&gt;
anFiwiorj6 (an-Fi-wi-orj-SIX)
leffIttOlv7 (leff-Itt-Olv-SEVEN)
Piewgeeb0 (Piewg-eeb-ZE
fegBetEv4 (feg-Bet-Ev-FOUR)</pre>
<p><strong># tar.gz</strong></p>
<p>Comment conserver les propriétaires et les permissions ?</p>
<pre>tar -zcvf /destination.monfichier.tar.gz
--same-owner --same-permissions /repertoire/source/</pre>
<p><strong># comm</strong></p>
<p>Comparer deux répertoires sur 2 colonnes</p>
<pre id=":5ai" class="hP">comm -3 &lt;(ls olddir) &lt;(ls newdir)</pre>
<p>Article de  la semaine :</p>
<ul>
<li><a href="https://www.developpez.com/actu/224656/Le-projet-Linux-adopte-a-son-tour-le-contributor-Covenant-Code-of-Conduct-pour-promouvoir-un-environnement-inclusif-et-accueillant-sans-toxicite/">Le projet Linux adopte le contributor Covenant Code of Conduct</a></li>
</ul>
<p>Vidéo de la semaine :</p>
<ul>
<li>Installer Maria Galera Cluster sur une centos : <a href="https://raw.githubusercontent.com/itlabvn/share/master/install-config-galera-cluster-text-guide.txt">fichier texte guide</a></li>
</ul>
<p><iframe loading="lazy" title="How to install and configuration MariaDB Galera Cluster on CentOS" width="625" height="352" src="https://www.youtube.com/embed/PuYKc4uxeC0?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>L’article <a href="https://xavki.blog/top-commandes-linux-10-apg/">Top commandes linux #10 : apg, tar.gz, mariadb galera, comm, rpm, vim</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[Python][Bash] : comment piper (combiner) du bash dans du python -c en une ligne ? façon oneliner</title>
		<link>https://xavki.blog/python-bash-comment-piper-combiner-du-bash-dans-du-python-c-en-une-ligne/</link>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Thu, 06 Sep 2018 09:42:42 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<category><![CDATA[Python]]></category>
		<guid isPermaLink="false">http://xavki.blog/?p=434</guid>

					<description><![CDATA[<p><img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Peut-être un peu pour la frime et d&#8217;autres pour tester certainement. Nombreux sommes nous à vouloir faire un truc bizare en combinant, comme le fait si bien perl, du bash et du python. Mais python n&#8217;est pas un animal facile.... <a href="https://xavki.blog/python-bash-comment-piper-combiner-du-bash-dans-du-python-c-en-une-ligne/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/python-bash-comment-piper-combiner-du-bash-dans-du-python-c-en-une-ligne/">[Python][Bash] : comment piper (combiner) du bash dans du python -c en une ligne ? façon oneliner</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-943101-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Peut-être un peu pour la frime et d&#8217;autres pour tester certainement. Nombreux sommes nous à vouloir faire un truc bizare en combinant, comme le fait si bien perl, du bash et du python. Mais python n&#8217;est pas un animal facile. Vous allez le voir il faut faire preuve d&#8217;imagination.</p>
<p>Voici par exemple comment faire un cat et le reprendre dans python pour extraire.</p>
<pre>cat /var/log/syslog | python -c "import sys;
import re;
reg=re.compile('(21:.*)');
[ligne for ligne in sys.stdin if sys.stdout.write(reg.search(ligne).group(1))+'\n']"
</pre>
<p>C&#8217;est chaud un peu non ?</p>
<p>Expliquons ce &#8220;oneline&#8221;, un peu tiré par les cheveux :</p>
<ul>
<li>le cat on revient pas dessus avec un pipe pour passer les données à la commande suivante</li>
<li>python -c : -c pour passer des commandes (on est pas dans un fichier de script)</li>
<li>import sys : pour le module système</li>
<li>import re : pour les regex</li>
<li>re.compile pour compiler le pattern de la regex</li>
<li>ensuite on récupère ligne par ligne sys.stdin (la sortie stdin correspond au pipe du cat)</li>
<li>puis on écrit dans stdout le résultat de la regex (group 1)</li>
</ul>
<p>On peut faire un peu plus simple par exemple pour reprendre un cat :</p>
<pre>ps aux | python -c "import sys; print sys.stdin.read()"
</pre>
<p>Alors est-ce que vous êtes toujours chaud pour faire du one line avec Python ? un peu moins ? Perso je préfère largement perl pour faire ce genre d&#8217;action si nécessaire. Awk est aussi pas mal dans son genre.</p>
<pre>## en perl :
cat /var/log/syslog |
perl -nle 'm{(21.*)} and print $1'

## en awk
cat /var/log/syslog |
awk 'match($0, /(21.*)/){print substr($0, RSTART, RLENGTH)}'
</pre>
<p>Il faut savoir qu&#8217;il existe <a href="http://jagt.github.io/python-single-line-convert/">aussi des scripts python qui permettent de simplifier le travail</a> mais bon c&#8217;est pas classe intellectuellement lol.</p>
<p>et vous vous pratiquez ce genre de commande ? partagez vos oneline</p>
<p>L’article <a href="https://xavki.blog/python-bash-comment-piper-combiner-du-bash-dans-du-python-c-en-une-ligne/">[Python][Bash] : comment piper (combiner) du bash dans du python -c en une ligne ? façon oneliner</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>[bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence</title>
		<link>https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/</link>
					<comments>https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/#comments</comments>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Fri, 31 Aug 2018 09:04:57 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">https://xavki.wordpress.com/?p=326</guid>

					<description><![CDATA[<p><img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Pour gagner du temps l&#8217;idéal est de personnaliser votre .bashrc en y créant des alias. Mais pour aller encore un peu plus loin vous pouvez y ajouter des fonctions cela permet d&#8217;aller un peu plus loin que les alias. Par... <a href="https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/">[bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-2341711-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Pour gagner du temps l&#8217;idéal est de personnaliser votre .bashrc en y créant des alias. Mais pour aller encore un peu plus loin vous pouvez y ajouter des fonctions cela permet d&#8217;aller un peu plus loin que les alias.</p>
<p>Par exemple, je vous propose une fonction qui vous permettra de remonter facilement dans une arborescence. Vous pouvez la nommer comme vous voulez prenons par exemple up.</p>
<pre>up() { if [ "${1/[^0-9]/}" == "$1" ]; 
then p=./; for i in $(seq 1 $1); 
do p=${p}../; done; cd $p; 
else echo 'usage: up N'; fi }
export -f up
</pre>
<p>Cete fonction peut-être lancée soit en tapant un simple &#8220;up&#8221; dans ce cas vous remontez d&#8217;un niveau (1 directory) ou &#8220;up 3&#8221; pour remonter de 3 niveaux directement. Très efficace.</p>
<p>Donc plus expliciter un peu cette ligne de code :</p>
<ul>
<li>avec le if on vérifie si on a un argument ou pas</li>
<li>si on a un arguement on fait une séquence sui va permettre de répéter &#8220;../&#8221;</li>
<li>sinon on remonte d&#8217;un niveau seulement</li>
<li>on oublie pas d&#8217;exporter cette fonction pour qu&#8217;elle soit utilisable</li>
<li>et surtout après ajout on source .bashrc</li>
</ul>
<p>&nbsp;</p>
<p>L’article <a href="https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/">[bash] : créer une fonction pour monter de 1 ou plusieurs niveaux dans une arborescence</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xavki.blog/bash-creer-une-fonction-pour-monter-de-1-ou-plusieurs-niveaux-dans-une-arborescence/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>[Bash] : template de script avec parsage d&#8217;arguments</title>
		<link>https://xavki.blog/bash-template-de-script-avec-parsage-arguments/</link>
					<comments>https://xavki.blog/bash-template-de-script-avec-parsage-arguments/#comments</comments>
		
		<dc:creator><![CDATA[xavki]]></dc:creator>
		<pubDate>Tue, 28 Aug 2018 12:48:27 +0000</pubDate>
				<category><![CDATA[Bash]]></category>
		<guid isPermaLink="false">https://xavki.wordpress.com/?p=280</guid>

					<description><![CDATA[<p><img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" />Créer un script bash c&#8217;est toujours un peu le même principe. On peut donc s&#8217;oirenter vers un squelette, une sorte de template. Le principe étant d&#8217;avoir toujours une trame permettant de passer comme arguments : le mode verbeux, un fichier... <a href="https://xavki.blog/bash-template-de-script-avec-parsage-arguments/" class="suite"><i class="fal fa-long-arrow-right"></i></a></p>
<p>L’article <a href="https://xavki.blog/bash-template-de-script-avec-parsage-arguments/">[Bash] : template de script avec parsage d&#8217;arguments</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></description>
										<content:encoded><![CDATA[<img width="1880" height="1253" src="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714.jpeg" class="attachment- size- wp-post-image" alt="" style="float:left; margin:0 15px 15px 0;" decoding="async" loading="lazy" srcset="https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714.jpeg 1880w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-300x200.jpeg 300w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-768x512.jpeg 768w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-1024x682.jpeg 1024w, https://xavki.blog/wp-content/uploads/2018/07/pexels-photo-259714-1568x1045.jpeg 1568w" sizes="auto, (max-width: 1880px) 100vw, 1880px" /><p>Créer un script bash c&#8217;est toujours un peu le même principe. On peut donc s&#8217;oirenter vers un squelette, une sorte de template. Le principe étant d&#8217;avoir toujours une trame permettant de passer comme arguments : le mode verbeux, un fichier ou une aide.</p>
<p>Ainsi vous n&#8217;aurez plus besoin de chercher comment parser les arguments, quoi écrire pour commencer et comment le faire pour mettre en place le &#8211;help.</p>
<p>Voici donc <a href="https://github.com/priximmo/oneliner/blob/master/bash_arguments_template.sh">ce bout de code</a> qui j&#8217;espère vous sera utile :</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-281" src="http://xavki.blog/wp-content/uploads/2018/07/screenshot-from-2018-07-24-14-46-15.png" alt="Screenshot from 2018-07-24 14-46-15" width="570" height="525" srcset="https://xavki.blog/wp-content/uploads/2018/07/screenshot-from-2018-07-24-14-46-15.png 570w, https://xavki.blog/wp-content/uploads/2018/07/screenshot-from-2018-07-24-14-46-15-300x276.png 300w" sizes="auto, (max-width: 570px) 100vw, 570px" /></p>
<p>L’article <a href="https://xavki.blog/bash-template-de-script-avec-parsage-arguments/">[Bash] : template de script avec parsage d&#8217;arguments</a> est apparu en premier sur <a href="https://xavki.blog">Xavki</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://xavki.blog/bash-template-de-script-avec-parsage-arguments/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
