<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ivaylo Ivanov</title>
    <description>The latest articles on DEV Community by Ivaylo Ivanov (@ivayloiv).</description>
    <link>https://dev.to/ivayloiv</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F793693%2F0a15beaa-ef5b-4eca-b87a-c8fd80c22f8a.jpg</url>
      <title>DEV Community: Ivaylo Ivanov</title>
      <link>https://dev.to/ivayloiv</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ivayloiv"/>
    <language>en</language>
    <item>
      <title>Passing the PNPT: A Practical Perspective on Modern Pentesting</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Tue, 13 Jan 2026 14:47:56 +0000</pubDate>
      <link>https://dev.to/ivayloiv/passing-the-pnpt-a-practical-perspective-on-modern-pentesting-2766</link>
      <guid>https://dev.to/ivayloiv/passing-the-pnpt-a-practical-perspective-on-modern-pentesting-2766</guid>
      <description>&lt;p&gt;Today I officially passed the PNPT (Practical Network Penetration Tester) certification by TCM Security. I want to share this experience because the PNPT is not an exam you pass by luck. It rewards persistence, methodology, and the ability to stay calm under pressure. So after training and going over the whole material in the course in depth, as well as the labs given, I decided to take the exam.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fegbq9lfbexd9gyznrc1b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fegbq9lfbexd9gyznrc1b.png" alt="PNPT Certification" width="800" height="615"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  My First Attempt
&lt;/h2&gt;

&lt;p&gt;At the time, I felt ready; my technical knowledge was strong and sharp. I started strong, did the OSINT part, flew through everything else, stopping at almost the end. I was stuck; I did not know what I had missed.  I did not enumerate enough, I rushed decisions, and I panicked about whether I would pass. That stress led me to skip details and make assumptions instead of fully understanding the environment. Looking back, this attempt taught me a fundamental lesson: enumeration is not a step in the process — it is the process. I strongly recommend making a checklist of what you have done and what you have still to do. Such a simple checklist where you just cross off the done steps is gold. This spares time, does not make you dizzy with a lot of information you have to remember, and gives you a clear mind to continue forward. And remember, this is not CTF, there are no flags that tell you this is the right path or wrong. If you enter the exam with a CTF-y mindset from HTB or THM, you are very prone to failure, like I failed my first attempt.&lt;/p&gt;

&lt;h2&gt;
  
  
  Writing The Report
&lt;/h2&gt;

&lt;p&gt;During my second attempt, the technical execution went perfectly, especially after I took everything I had missed the first time, but I still did not pass because of the report. After completion and full compromise of the exam domain controller, only the report was left to be submitted. Anxiety took over again. I spent a lot of time on the technical part, forgetting to screenshot some important steps of the process. Which led to my failure to present all of my findings with the clarity expected from a professional penetration tester. This attempt made it very clear to me that the calm state of mind is your best friend any time, no matter an exam or a real engagement.&lt;/p&gt;

&lt;h2&gt;
  
  
  Passing The PNPT
&lt;/h2&gt;

&lt;p&gt;On my third attempt, everything finally fell into place. I approached the exam like a real client engagement, not an exam. I enumerated properly, stayed calm, and focused on understanding each finding before moving forward, and followed my checklist. I took screenshots of everything and wrote a thorough report for the whole process. I passed the practical part and the report. I was nervous during the debrief, but it turned out to be a very non-pressing and pleasant experience led by the extraordinary team of TCM Security. I managed it, and in the end, drum roll please... 🥁 I received my certification.&lt;/p&gt;

&lt;h2&gt;
  
  
  Special Thanks To The TCM Security Team
&lt;/h2&gt;

&lt;p&gt;Throughout the entire journey, the TCM Security team was extremely helpful, professional, and supportive. The course materials, practice labs, and documentation provided are more than sufficient to pass the exam if used correctly and thoroughly. All of the PNPT-related courses are high quality, but from my experience, the most essential ones for passing the exam are Practical Ethical Hacking (PEH), Open Source Intelligence (OSINT), and the External Pentest Playbook. The Linux and Windows Privilege Escalation courses are excellent and valuable, but the exam itself focuses more on methodology, enumeration, and decision-making than on advanced, complex privilege escalation tricks. The biggest lessons I learned from this experience are simple but critical. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Enumeration solves more problems than exploits. Stress is often the real enemy, not the technical difficulty. Reporting is not optional — it is a core skill.&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;And finally, failing an exam does not define your ability; refusing to learn from failure does.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>pnpt</category>
      <category>cybersecurity</category>
      <category>certification</category>
      <category>redteam</category>
    </item>
    <item>
      <title>Stealing cars just has been made more accessible to the public!</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Thu, 15 Feb 2024 09:06:52 +0000</pubDate>
      <link>https://dev.to/ivayloiv/stealing-cars-just-has-been-made-more-accessible-to-the-public-1kh4</link>
      <guid>https://dev.to/ivayloiv/stealing-cars-just-has-been-made-more-accessible-to-the-public-1kh4</guid>
      <description>&lt;p&gt;You read right, after the release of the Quansheng Radio (similar radio to the Baofeng series), the process of car stealing just became easier and cheaper for the general public, eliminating the need for complex technology or deep knowledge on the topic.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Disclaimer this is only for educational purposes and does not encourage cyber crimes or illegal activities!&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  1. The cheap way and the problems with it
&lt;/h2&gt;

&lt;p&gt;Recently, our team has been researching car key fob signals being blocked by everyday devices that use radio frequencies. &lt;br&gt;
We discovered that this role is best suited by the popular ham radios such as Baofeng. Since the Baofeng radio has a wide range of frequencies, it can be used to scan for the key fob signal. After finding the correct frequency, the radio becomes the best way to suppress the lock signal to the car, by transmitting on the key fob frequency, thus making the car unlocked and accessible to anyone around. But as you may have already thought, finding the signal through scanning is going to take some time and make the attack longer as well as not so certain to happen, because it can take multiple scanning attempts to find the frequency. Also, the timing is very important, if you miss the key fob signal you are going to need to start the scanning again. Those are quite some problems for a pentester to be dealing with on the field.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. The cheap and easier way
&lt;/h2&gt;

&lt;p&gt;On the other hand, we have the recently released Quansheng radio. It fixes all the problems and makes the life of a pentester easier, because of its spectrumscope feature. It analyzes the frequencies around the radio in real-time, thus making the frequency discovery of the key fob almost instantaneous and being able to launch the attack on the first try. All of that can be achieved only for 30 - 40 dollars. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffec2nkhyl7m3qnk7hn1l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffec2nkhyl7m3qnk7hn1l.png" alt="Quansheng Radio Spectrum Mode" width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Is it really that easy to achieve a car steal?
&lt;/h2&gt;

&lt;p&gt;Short answer yes, but there are some special environmental factors that we have to take into account. For example, the chance of someone locking his car and not looking back or checking if it is locked is not very common. Many people at least look back to see the blinking lights of the car indicating that the car is locked.&lt;br&gt;
Another thing that is going to be a setback is the way newer cars start, many of them need some type of NFC identification from the key fob in order to start, hot-wiring is going to work only on older models, that do not have that good of a security. &lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>security</category>
      <category>pentesting</category>
      <category>ai</category>
    </item>
    <item>
      <title>How to run GUI apps trough WSL?</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Tue, 18 Jan 2022 16:49:22 +0000</pubDate>
      <link>https://dev.to/ivayloiv/how-to-run-gui-apps-trough-wsl-9oa</link>
      <guid>https://dev.to/ivayloiv/how-to-run-gui-apps-trough-wsl-9oa</guid>
      <description>&lt;p&gt;Hi, guys today I will show you how to run GUI apps through &lt;strong&gt;WSL&lt;/strong&gt;. As you know by default &lt;strong&gt;WSL 1&lt;/strong&gt; offers just a terminal of the selected Linux distro but in &lt;strong&gt;WSL 2&lt;/strong&gt; there are some changes and you are going to be able to run GUI applications through WLS 2 directly in windows. Without further due let's hop into the topic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Note: If you have wsl 1 installed skip to step 2, otherwise follow the steps as it is.
&lt;/h3&gt;

&lt;h2&gt;
  
  
  1. Installing &lt;strong&gt;WSL&lt;/strong&gt;.
&lt;/h2&gt;

&lt;p&gt;In case to install the &lt;strong&gt;WSL&lt;/strong&gt; (windows subsystem for Linux), you will need administrator permissions on your machine. After that, you will have to open the windows PowerShell as administrator and activate the wsl feature. To that just paste this command in ht PowerShell and hit enter.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;dism.exe&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/online&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/enable-feature&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/featurename:Microsoft-Windows-Subsystem-Linux&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/all&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/norestart&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the command has been executed successfully restart your machine and continue to step 2.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Enabling Virtual Machine Feature and installing &lt;strong&gt;WSL 2&lt;/strong&gt; version.
&lt;/h2&gt;

&lt;p&gt;After everyone has &lt;strong&gt;WSL&lt;/strong&gt; installed, in case to switch to &lt;strong&gt;WSL 2&lt;/strong&gt; you will need to enable A special built-in virtual machine for &lt;strong&gt;wsl 2&lt;/strong&gt;. To do that just paste this into your PowerShell (opened as administrator)&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="n"&gt;dism.exe&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/online&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/enable-feature&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/featurename:VirtualMachinePlatform&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/all&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;/norestart&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After you have enabled the virtual machine feature, it is time to install the &lt;strong&gt;WSL&lt;/strong&gt; version 2. To do that, download the latest kernel update &lt;a href="https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi" rel="noopener noreferrer"&gt;here&lt;/a&gt;. It is an official Microsoft executable, that you can run just by double-clicking after you install it. It is time for the final step - Running GUI apps through &lt;strong&gt;WSL&lt;/strong&gt; on windows.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Running GUI apps through &lt;strong&gt;WSL&lt;/strong&gt;.
&lt;/h2&gt;

&lt;p&gt;We are almost finished this is the last step to do, I promise. To be able to run any graphical app through &lt;strong&gt;WSL&lt;/strong&gt; you will need a graphics card driver in addition. You can download the special driver for either &lt;a href="https://developer.nvidia.com/51006-gameready-win11-win10-dch-64bit-international" rel="noopener noreferrer"&gt;GeForce&lt;/a&gt; or &lt;a href="https://developer.nvidia.com/51006_quadro_win11_win10-dch_64bit_international" rel="noopener noreferrer"&gt;Quadro&lt;/a&gt; series graphics cards. Wait for it to download, then install it by double-clicking. After it is installed it is good to practice rebooting your machine. After you have it rebooted you can install any application on your WSL Linux Distro, for example, "Firefox".&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;firefox
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After the installation is completed you can simply run the application, in our case, it is firefox so we are going to run it by typing in the command line &lt;code&gt;firefox&lt;/code&gt;. Wait for it for some time because it is the first launch and if everything has been set up as it should, you should be prompted with the firefox application directly on your windows screen, running through &lt;strong&gt;WSL&lt;/strong&gt;. &lt;br&gt;
Congratulations you have successfully set up &lt;strong&gt;WSL 2&lt;/strong&gt; and enabled GUI on trough &lt;strong&gt;WSL&lt;/strong&gt;. 🎉🎺🎉&lt;/p&gt;

&lt;p&gt;If you have any questions, just leave a comment, I will answer as soon as possible.&lt;/p&gt;

</description>
      <category>wsl</category>
      <category>linux</category>
      <category>tutorial</category>
      <category>bash</category>
    </item>
    <item>
      <title>Install latest Python version on any Debian Based Linux distro.</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Mon, 17 Jan 2022 13:59:57 +0000</pubDate>
      <link>https://dev.to/ivayloiv/install-latest-python-version-on-any-linux-distro-5gc3</link>
      <guid>https://dev.to/ivayloiv/install-latest-python-version-on-any-linux-distro-5gc3</guid>
      <description>&lt;p&gt;Hi guys, today I am going to show you how to install the latest Python3 version (at the time of writing this post the current version is 3.10.2). In my example, I am going to use Ubuntu 20.04. Without further due, let's hop into the topic.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Update your Linux distro.
&lt;/h2&gt;

&lt;p&gt;Before installing python3, make sure to update your Linux system.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nt"&gt;-y&lt;/span&gt; upgrade
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2. Adding Python archive to the &lt;strong&gt;apt&lt;/strong&gt; manager.
&lt;/h2&gt;

&lt;p&gt;After you have your system updated it is time to add the python archive to the &lt;strong&gt;apt&lt;/strong&gt; manager. To do that we are going to need the required dependencies for adding custom archives. We are going to need &lt;strong&gt;software-properties-common&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;software-properties-common &lt;span class="nt"&gt;-y&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After you have installed the required dependency, we are going to add the Personal Package Archive (PPA). You can read about &lt;strong&gt;PPA&lt;/strong&gt; &lt;a href="https://dev.to/ivayloiv/what-is-ppa-in-linux-4mf5"&gt;here&lt;/a&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;add-apt-repository ppa:deadsnakes/ppa
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You will be prompted with a long text like this:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy154acw27fuci45v0hyl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy154acw27fuci45v0hyl.png" alt="PPA python text" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Just hit enter and python is going to be added.&lt;br&gt;
Now you have added successfully the python archive to the &lt;strong&gt;apt&lt;/strong&gt;&lt;br&gt;
package manager and you can install the latest version using &lt;strong&gt;apt&lt;/strong&gt;.&lt;/p&gt;
&lt;h2&gt;
  
  
  3. Installing the latest python version.
&lt;/h2&gt;

&lt;p&gt;Now you have access to the python official versions. To install the latest just look up on the &lt;a href="https://www.python.org/" rel="noopener noreferrer"&gt;official python website&lt;/a&gt; the latest version, and install it like that:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;python3.10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Congrats you have installed the latest python on your Linux distro.&lt;br&gt;
To check the installation, just type the python you have installed and add after it &lt;code&gt;--version&lt;/code&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;python3.10 &lt;span class="nt"&gt;--version&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fod5oe11lso89bxv2c8rq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fod5oe11lso89bxv2c8rq.png" alt="Python version test" width="800" height="47"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you have any questions, leave a comment and I will answer as soon as possible.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>python</category>
      <category>tutorial</category>
      <category>bash</category>
    </item>
    <item>
      <title>What is PPA in Linux?</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Mon, 17 Jan 2022 13:59:12 +0000</pubDate>
      <link>https://dev.to/ivayloiv/what-is-ppa-in-linux-4mf5</link>
      <guid>https://dev.to/ivayloiv/what-is-ppa-in-linux-4mf5</guid>
      <description>&lt;p&gt;Hi guys, today I am going to explain to you what is &lt;strong&gt;PPA&lt;/strong&gt;, what is it used for, and how you can use it. In this tutorial, I am going to use Ubuntu 20.04. Without further due, let's hop into the topic.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. What is PPA?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;PPA&lt;/strong&gt; stands for Personal Package Archive. The PPA allows application developers and Linux users to create their repositories to distribute software. With PPA, you can easily get newer software versions or software that are not available via the official Ubuntu repositories.&lt;/p&gt;

&lt;p&gt;Before you understand &lt;strong&gt;PPA&lt;/strong&gt;, you should know the concept of repositories in Linux. You can read about them &lt;a href="https://dev.to/ivayloiv/what-are-repositories-in-the-linux-os-1m91"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Why is PPA used?
&lt;/h2&gt;

&lt;p&gt;Imagine you are a developer and you release a cool Linux application, and you want to distribute it among other Linux users. Here comes the &lt;strong&gt;PPA&lt;/strong&gt;, you can create a repository and put your application there, after that you can tell the other Linux user what is your repository and they will be able to use your app thanks to the &lt;strong&gt;PPA&lt;/strong&gt; feature of Linux.&lt;/p&gt;

&lt;p&gt;There is a second case, imagine you work on a very important project, and some of the tools you are using are being updated. For the main repo of the Linux distro to adopt them and put it in use, it will take some time, but if you have the repository of the developer that has to update the tools added through &lt;strong&gt;PPA&lt;/strong&gt;, you will be able to use the updated tools immediately.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. How to use PPA?
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;PPA&lt;/strong&gt; is used when you want to add a new repository to the repository list in the Linux distro, or to remove one that is no longer needed. &lt;br&gt;
To add a repo you use &lt;strong&gt;add-apt-repository&lt;/strong&gt; and then the repo's name.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;add-apt-repository ppa:deadsnakes/ppa
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;To use the added repo with you have to update first its repo list.&lt;br&gt;
To do this just update the &lt;strong&gt;apt&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt update
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then you can use the added repo to install the software it contains in our example we have added the python repo.&lt;br&gt;
So we are going to install a python version.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;apt &lt;span class="nb"&gt;install &lt;/span&gt;python3.10
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Congratulations now you know how to use &lt;strong&gt;PPA&lt;/strong&gt;, what it is, and why it is important.&lt;br&gt;
If you have any questions, leave a comment, I will answer as soon as possible.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>tutorial</category>
      <category>beginners</category>
      <category>github</category>
    </item>
    <item>
      <title>What are the repositories in the Debian based Linux?</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Mon, 17 Jan 2022 13:58:00 +0000</pubDate>
      <link>https://dev.to/ivayloiv/what-are-repositories-in-the-linux-os-1m91</link>
      <guid>https://dev.to/ivayloiv/what-are-repositories-in-the-linux-os-1m91</guid>
      <description>&lt;p&gt;A Linux repository is a storage location where your system installs OS updates and applications. Each repository is a collection of software hosted on a remote server and intended to be used for installing and updating software packages.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. What are repositories used for?
&lt;/h2&gt;

&lt;p&gt;They are commonly used for a storage location either remote or on your local machine. They often work with a version control system and store different versions of software or application in the time.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Where you can find the repositories used in Linux?
&lt;/h2&gt;

&lt;p&gt;On Ubuntu, all Ubuntu-based distros, Debian, and all Debian-based distros, you can file the list of repos(repositories) in &lt;strong&gt;/etc/apt/sources.list&lt;/strong&gt;. You can open the file using &lt;strong&gt;nano&lt;/strong&gt; like that:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /etc/apt/sources.list
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3. What are the kinds of repositories in Linux?
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Main – Canonical-supported free and open-source software.&lt;/li&gt;
&lt;li&gt;Universe – Community-maintained free and open-source software.&lt;/li&gt;
&lt;li&gt;Restricted – Proprietary drivers for devices.&lt;/li&gt;
&lt;li&gt;Multiverse – Software restricted by copyright or legal issues.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If you have any questions, leave a comment below, I will answer as soon as possible.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>tutorial</category>
      <category>beginners</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Everyting you need to know about the Print() function in Python.</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Sun, 16 Jan 2022 15:45:15 +0000</pubDate>
      <link>https://dev.to/ivayloiv/everyting-you-need-to-know-about-the-print-function-in-python-3d94</link>
      <guid>https://dev.to/ivayloiv/everyting-you-need-to-know-about-the-print-function-in-python-3d94</guid>
      <description>&lt;p&gt;Python - a high-level scripting language, with very readable syntax and many outstanding built-in functions. Hi, guys in this series we are going to review the Python built-in functions - how to use them, their special keywords, and best use cases. Without further due, let's dive into the topic.&lt;/p&gt;

&lt;p&gt;Today we are going to look into the &lt;strong&gt;print&lt;/strong&gt; function. This function is highly used by almost every Python developer. Its main purpose is to print out some data to the console.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. More arguments than one.
&lt;/h2&gt;

&lt;p&gt;As you probably know, the &lt;strong&gt;print&lt;/strong&gt; function can take more than one argument. For example, you can print out two strings separated by a comma.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Hello&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Python&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You can put as many arguments as you want in the print function, just separate them with a comma.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;arg1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;arg2&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;arg3&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;arg4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;arg5&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now that you know how to use &lt;strong&gt;print&lt;/strong&gt; with multiply arguments, there are some options that you can set within the &lt;strong&gt;print&lt;/strong&gt; function.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. &lt;strong&gt;Sep&lt;/strong&gt; option.
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;sep&lt;/strong&gt; option is used to tell the &lt;strong&gt;print&lt;/strong&gt; function, how to separate multiply arguments when it prints them out.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Hello&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Python&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Hello&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;World&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt; &lt;span class="n"&gt;sep&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;-&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Expected Output:&lt;/strong&gt; &lt;code&gt;Hello-Python-Hello-World&lt;/code&gt;&lt;br&gt;
You can put anything in the &lt;strong&gt;sep&lt;/strong&gt; keyword.&lt;/p&gt;
&lt;h2&gt;
  
  
  3. &lt;strong&gt;File&lt;/strong&gt; option.
&lt;/h2&gt;

&lt;p&gt;The &lt;strong&gt;option&lt;/strong&gt; is used to tell Python where to print out the output of the &lt;strong&gt;print&lt;/strong&gt; function. By default, it is printed out in the console, but if you want, you can tell the &lt;strong&gt;print&lt;/strong&gt; function to save the output in a file.&lt;br&gt;
To do this, you have to create a variable where you are going to set the name of the file and the type of writing in it - &lt;strong&gt;w&lt;/strong&gt; or &lt;strong&gt;a&lt;/strong&gt;.&lt;br&gt;
&lt;strong&gt;w&lt;/strong&gt; - the file content is going to be overwritten(delete its old content first and then write the current output)&lt;br&gt;
&lt;strong&gt;a&lt;/strong&gt; - the file content is not going to be deleted, just the current output is going to be appended to the file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;output&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;open&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;output.txt&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;a&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;

&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Hello Python&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nb"&gt;file&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="n"&gt;output&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now the output is saved in the file &lt;strong&gt;output.txt&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. &lt;strong&gt;End&lt;/strong&gt; option.
&lt;/h2&gt;

&lt;p&gt;This option is how every print line is ending. By default, it ends with &lt;strong&gt;\n&lt;/strong&gt; - new line. We can change that by using the &lt;strong&gt;end&lt;/strong&gt; keyword.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="nf"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;Python is awesome&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;end&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;!!!&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Expected Output:&lt;/strong&gt; &lt;code&gt;Python is awesome!!!&lt;/code&gt;&lt;br&gt;
As you can see the end of the printed line has changed. You can use the end keyword for formatting the output nicely. &lt;/p&gt;

&lt;h2&gt;
  
  
  5. Supported versions.
&lt;/h2&gt;

&lt;p&gt;After you have learned about the important use and options of the &lt;strong&gt;print&lt;/strong&gt; function, it is time to determine which version of python supports these options.&lt;/p&gt;

&lt;p&gt;All of the above is supported by python3.X, but a new keyword was introduced in python3.3 by &lt;a href="https://www.python.org/dev/peps/pep-0421/" rel="noopener noreferrer"&gt;PEP421&lt;/a&gt;. The name of the new keyword is &lt;strong&gt;Flush&lt;/strong&gt;. You can read more about it &lt;a href="https://python.readthedocs.io/en/stable/whatsnew/3.3.html#builtin-functions-and-types" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Congratulations, you just deep-dived into the &lt;strong&gt;print&lt;/strong&gt; function and learned how to use it and its options.&lt;/p&gt;

&lt;p&gt;If you have any questions, leave a comment below. I will answer it as soon as possible.&lt;/p&gt;

</description>
      <category>python</category>
      <category>functional</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Access the Windows file system through WSL!</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Fri, 14 Jan 2022 17:38:34 +0000</pubDate>
      <link>https://dev.to/ivayloiv/access-the-windows-file-system-through-wsl-1ac4</link>
      <guid>https://dev.to/ivayloiv/access-the-windows-file-system-through-wsl-1ac4</guid>
      <description>&lt;p&gt;Have you ever wondered, how to access the windows file system through WSL? If the answer is yes you are in the right place!&lt;/p&gt;

&lt;p&gt;Microsoft WSL has given us an incredible way to access the windows file system, you have just to navigate through an exact path to do it. Without further due, let's dive into the topic.&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Use the &lt;strong&gt;cd&lt;/strong&gt; command in the Linux terminal.
&lt;/h2&gt;

&lt;p&gt;To access the windows files you have to navigate through &lt;strong&gt;/mnt/your_windows_path&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /mnt/c/Users
&lt;span class="k"&gt;**&lt;/span&gt;OR&lt;span class="k"&gt;**&lt;/span&gt;
&lt;span class="nb"&gt;cd&lt;/span&gt; /mnt/d/your_folder/your_folder
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you have access to every file in the Linux and Windows file systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Moving files between the two systems through WSL.
&lt;/h2&gt;

&lt;p&gt;If you want to move files between the two operating systems you can simply use the &lt;strong&gt;cp&lt;/strong&gt; or &lt;strong&gt;mv&lt;/strong&gt; commands. &lt;br&gt;
&lt;strong&gt;cp&lt;/strong&gt; - command for copying files&lt;br&gt;
&lt;strong&gt;mv&lt;/strong&gt; - command for moving files&lt;br&gt;
&lt;strong&gt;Use of cp command&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cp&lt;/span&gt; /mnt/c/file.txt /home/username/Documents
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Use of mv command&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mv&lt;/span&gt;  /mnt/c/file.txt /home/username/Documents
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  3. Editing windows files through WSL.
&lt;/h2&gt;

&lt;p&gt;To edit windows files through the Linux terminal using WSL, you have to use any text editor that can be opened in the terminal. One of the most famous text editors is &lt;strong&gt;nano&lt;/strong&gt;. In our example, I am going to use the &lt;strong&gt;nano&lt;/strong&gt; editor.&lt;br&gt;
Type into the terminal &lt;strong&gt;nano&lt;/strong&gt; and the path to the file.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano /mnt/c/Users/file.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now you can edit freely files from your terminal.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Creating files in windows through WSL.
&lt;/h2&gt;

&lt;p&gt;To create a file in a specific windows directory you have first to navigate to it and then use the &lt;strong&gt;touch&lt;/strong&gt; command to create a file.&lt;br&gt;
&lt;strong&gt;touch&lt;/strong&gt; - a command that creates a file.&lt;br&gt;
&lt;strong&gt;!!! The file extension can be anything you want.&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /mnt/c/Users/Public/Documents/ 
&lt;span class="nb"&gt;touch &lt;/span&gt;filename.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The file is created and can be opened from both systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  5. Deleting files from the windows file system through WSL.
&lt;/h2&gt;

&lt;p&gt;To delete windows files using WSL, you have to navigate to the directory where the file lives and use the &lt;strong&gt;rm&lt;/strong&gt; command.&lt;br&gt;
&lt;strong&gt;rm&lt;/strong&gt; - a command that deletes files / directories&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /mnt/c/Users/Public
&lt;span class="nb"&gt;sudo rm &lt;/span&gt;example_file.jpg
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Congratulations you learned 5 vital skills about working with the Linux terminal. 🎺🎺🎺&lt;br&gt;
If you have any questions, comment down, I will answer as soon as possible.&lt;/p&gt;

</description>
      <category>wsl</category>
      <category>linux</category>
      <category>tutorial</category>
      <category>bash</category>
    </item>
    <item>
      <title>Linux aliases set up simple!</title>
      <dc:creator>Ivaylo Ivanov</dc:creator>
      <pubDate>Fri, 14 Jan 2022 10:12:34 +0000</pubDate>
      <link>https://dev.to/ivayloiv/linux-aliases-set-up-simple-2nie</link>
      <guid>https://dev.to/ivayloiv/linux-aliases-set-up-simple-2nie</guid>
      <description>&lt;p&gt;Hi guys, today I will show how easy it is to set up aliases in almost any Linux distro. Before we begin let's clarify what are aliases in the bash.&lt;/p&gt;

&lt;p&gt;Alias is a command that enables replacing a word or set of letters with a bash command. Often it is used for simplifying the workflow in the command line, for example, we can come up with an abbreviation that is going to equal multiply commands. Without further due let's hop into the setup process.&lt;/p&gt;

&lt;p&gt;To create an alias there are 3 easy steps:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Navigate to your home directory.
&lt;/h2&gt;

&lt;p&gt;To navigate to your home directory using the cd command.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; /home/your_username
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  2. Add your alias to the .bashrc file.
&lt;/h2&gt;

&lt;p&gt;After you have navigated to your home directory, open the &lt;strong&gt;.bashrc&lt;/strong&gt; file with &lt;strong&gt;nano&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;sudo &lt;/span&gt;nano .bashrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Now go to the bottom of the file and type &lt;strong&gt;alias&lt;/strong&gt;, then the &lt;strong&gt;name of the custom command&lt;/strong&gt; and the &lt;strong&gt;Linux commmand/s&lt;/strong&gt; it represents. Take in mind that there are no spaces between the equal sign, otherwise it is not going to work.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgr9zdkrfcqayvqjtgwrl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgr9zdkrfcqayvqjtgwrl.png" alt=".bashrc file" width="800" height="136"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You can add as many custom commands as you want. Every command should be on a new line. After you are done, save the file and exit.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Activate the custom commands you've added.
&lt;/h2&gt;

&lt;p&gt;Probably you have noticed after saving the file when you try to run a custom command it doesn't work that is because we have not activated them yet. To activate just type in the command line &lt;strong&gt;source&lt;/strong&gt; and &lt;strong&gt;.bashrc&lt;/strong&gt;.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;source&lt;/span&gt; .bashrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;And you are ready! Now you can run any of the custom commands you have created&lt;br&gt;
If you have any questions, comment them down I will answer them as soon as possible.&lt;/p&gt;

</description>
      <category>linux</category>
      <category>bash</category>
      <category>tutorial</category>
      <category>ubuntu</category>
    </item>
  </channel>
</rss>
