999 įdomūs faktai jūsų terminale su Bash scenarijumi

 


Kai paleidžiu pagrindinę funkciją, kuri aprašyta čia, vienoje vietoje tenka luktelėti, kol į Obsidian susikels reikalinga informacija iš interneto. Taigi tuo metu spėju paskaityti kokį nors įdomų faktą, nes ir šį scenarijų išsikviečiu būtent tada, kai tenka keliolika sekundžių panuobodžiauti.

Kam skirtas šis scenarijus?

Šis Bash scenarijus skirtas tiems, kurie mėgsta sužinoti naujų įdomių faktų. Scenarijus atsitiktinai parenka vieną eilutę iš jūsų pateikto teksto failo ir ją atspausdina. Tai gali būti naudinga, jei norite praplėsti savo žinias, atsipalaiduoti arba tiesiog praskaidrinti laukimo laiką dirbant su terminalu.

Kaip veikia šis scenarijus?

Scenarijus veikia labai paprastai. Jis naudoja kelias pagrindines bash komandas, kad atsitiktinai parinktų eilutę iš pateikto failo:

  1. Patikrina, ar failas egzistuoja.
  2. Suskaičiuoja eilučių skaičių faile.
  3. Pasirenka atsitiktinį eilutės numerį.
  4. Naudojant sed, atspausdina pasirinktą eilutę.

Scenarijus:

 

#!/bin/bash
 
# File name: faktai
# Author: vaidotak
# Date: 2024-06-12
# Description: Skriptas, kuris atsitiktinai parenka eilutę iš failo.
# URL:
 
# Nustatykite failo pavadinimą
failo_pavadinimas="$HOME/git/999faktai.txt"
 
# Patikrinti, ar failas egzistuoja
if [ ! -f "$failo_pavadinimas" ]; then
  echo "Failas $failo_pavadinimas nerastas."
  exit 1
fi
 
# Gaukite eilučių skaičių faile
eiluciu_skaicius=$(wc -l < "$failo_pavadinimas")
 
# Patikrinti, ar faile yra bent viena eilutė
if [ $eiluciu_skaicius -eq 0 ]; then
  echo "Faile $failo_pavadinimas nėra eilučių."
  exit 1
fi
 
# Pasirinkite atsitiktinę eilutę
atsitiktine_eilute=$((RANDOM % eiluciu_skaicius + 1))
 
# Pasirinkite eilutę naudodami "sed"
atsitiktines_eilutes_tekstas=$(sed -n "${atsitiktine_eilute}p" "$failo_pavadinimas")
 
# Atspausdinkite atsitiktinę eilutę ir jos numerį
echo "Įdomus faktas:"
echo "$atsitiktines_eilutes_tekstas"

Privalumai:

  • Paprastumas: Scenarijus yra paprastas ir lengvai suprantamas.
  • Efektyvumas: Naudojant minimalias komandas, scenarijus greitai parenka atsitiktinę eilutę.
  • Lankstumas: Galite keisti faktų failą bet kuriuo metu, papildant ar redaguojant faktus.

Trūkumai:

  • Priklausomybė nuo failo: Jei faktų failas nėra pasiekiamas arba tuščias, scenarijus neveiks.
  • Nėra filtravimo: Scenarijus neleidžia filtruoti faktų pagal temas ar kategorijas.

Galimi patobulinimai:

  • Pridėti filtravimą: Galima pridėti funkciją, kuri leistų pasirinkti faktus pagal temas ar kategorijas.
  • Gražesnis formatavimas: Galima pridėti spalvų arba kitų formatavimo elementų, kad faktai būtų atvaizduojami patraukliau.
  • Pranešimai klaidos atveju: Pagerinti klaidų tvarkymą, kad vartotojas būtų informuotas aiškiau, kas negerai, jei failas nėra rastas ar yra tuščias.

Išvada

Šis paprastas Bash scenarijus yra puikus būdas įterpti įdomius faktus į savo kasdienę terminalo veiklą. Jis yra lengvai naudojamas, efektyvus ir gali būti toliau tobulinamas pagal jūsų poreikius. Pridėkite jį prie savo ~/.bashrc failo ar kitos dažnai naudojamos funkcijos, kad laukimo laiką terminale praskaidrintumėte naujais įdomiais faktais!

Komentarai

Populiarūs šio tinklaraščio įrašai

Configuring a NixOS firewall for everyday use

Setting up syncthing as a service on openSUSE and other Linux distributions

Monitoring SFTP server updates with Python