Lägg till papperskorgen i terminalen

rm

Användningen av kommandot rm det medför vissa faror, eftersom om vi gör ett misstag finns det inget sätt att återställa det vi har raderat. Men genom användning av alias och hjälp av cron vi kan göra ett par förbättringar och spara oss en huvudvärk.

Excellent! Vad ska vi göra?

Bash stöder kommandoalias, som används för att skapa förkortningar eller alternativa namn för aktuella kommandon. Vi kan använda kommandot alias för att se vilka som är definierade.

För att definiera a nytt alias följande syntax används:

alias comando personalizado='comando real'

till exempel:

$ alias list='ls -l' $ total lista 3 drwxr-xr-x 2 användargrupp 4096 15 maj 13:12 Dokument drwxr-xr-x 2 användargrupp 4096 12 maj 11:05 Nedladdningar drwxr-xr-x 2 användare grupp 4096 15 maj 05:47 Skrivbord
När ett kommando körs söker skalet först efter alias och sedan i miljövariabeln VÄG

Det första vi borde göra är skapa en katalog som hjälper oss att lagra filerna som vi kommer att radera

mkdir $HOME/Papelera

Nästa steg är att skapa en alias för kommandot rm som flyttar det vi vill ta bort till papperskorgen

alias rm='mv -t $HOME/Papelera'

La -t alternativ i kommandot ovan gör att resten av argumenten flyttas till den angivna katalogen
Om vi ​​vill alias tillgängligt för framtida bash-sessioner måste vi lägga till det i $HOME/.bashrc

Nu varje gång vi springer rm, istället för att ta bort, skickar vi filen till papperskorgen

Ta bort papperskorgen automatiskt

Många gånger tar vi bort filer för att frigöra diskutrymme. Det är nödvändigt att göra innehållet i papperskorgen kan raderas helt då och då för att inte fylla upp vår hårddisk. För detta ändamål kommer vi att använda cron

Cron är en demon van vid köra uppgifter automatiskt under en viss tidsperiod. Dess syntax är följande:

Cheat_Cron

är / Etc / crontab (allmänt i systemet, inkluderar en sektion för att lägga till användaren som kör) och /var/spool/cron/crontabs/user (en för varje användare)

Kommandot crontab -e låter dig lägga till (med hjälp av en textredigerare som nano eller vi) en ny post. Vår linje kommer att vara följande:

# hm sun mon dow kommando 00 12 * * 5 /bin/rm $HOME/Trash/*

Ovanstående cron-linje kommer att radera papperskorgen varje fredag ​​klockan 12

De absolut väg från rm eftersom detta nu är ett alias

Jag hoppas att jag har täckt allt.

Hälsningar 😀


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   livlig sade

    Intressant artikel, ett par saker gick upp för mig efter att ha läst den. Tack för bidraget 😉

    1.    Susano linux sade

      Tack för möjligheten att skriva här!

    2.    unsli sade

      Du måste dela med dig av de idéerna 🙂

  2.   dan sade

    !!Mycket bra ide!!
    Även om jag läste och tänkte att när man skapar aliaset kan det vara mer praktiskt att flytta filerna till papperskorgen som redan finns i den grafiska miljön (om inte något hindrar det).
    Nu är jag inte hemma men jag tror att det finns i ~/.local/ eller i någon annan dold katalog i hemmappen.
    På detta sätt när du öppnar papperskorgen i filläsaren kommer du också att se filerna raderade från kommandoraden.

    hälsningar

    1.    livlig sade

      Precis, det var vad jag trodde. Papperskorgen finns vanligtvis på ~/.local/share/Trash

      1.    intresserad sade

        Det ger mig att du inte kan använda det så lätt... När en skrivbordsmiljö skickar något till papperskorgen, gör den det på ett visst sätt, med dess metadata och sådant (jag är inte säker på hur den gör det, men Jag har sett det när jag listar innehållet i den katalogen)... För att bättre använda trash-cli...

    2.    dan sade

      Well go, för det är en lösning som är både enkel och elegant.
      Det skulle vara trevligt att veta hur trash_cli gör det, men för tillfället gillar jag den här lösningen.

    3.    Susano linux sade

      Tack Dan. Jag tänkte på den här lösningen eftersom du på servernivå inte har $HOME/.local/Trash så jag bestämde mig för att skapa en ny katalog. 😀 Hälsningar

  3.   intresserad sade

    Intressant idé.

    Men det verkar för mig att det redan finns liknande saker. I Debian har jag provat paketet trash-cli (mer info: https://github.com/andreafrancia/trash-cli) som kommer att göra detsamma, men med papperskorgen från skrivbordssystem (gnome, kde, xfce...). Möjligen är det en bättre lösning, för på så sätt "samlas allt på samma plats".

    1.    Susano linux sade

      Ja, trash-cli kan vara bättre för skrivbordsmiljöer, men jag tänkte att detta inlägg för distroservrar där du inte har en $HOME/.local/Trash. Tack för kommentaren!

  4.   Bray sade

    En mycket intressant artikel.

    I mitt fall är jag ny på allt som är fri programvara. Däremot har jag haft mina inkörningar med konsolen. Så att jag kan omsätta vad den här artikeln säger och undvika att förlora data varje gång jag använder rm

    Varsågod!

    1.    Susano linux sade

      Det är bra att det fungerar för dig! Tack så mycket

  5.   Anmärkningar sade

    Uppfinner hjulet igen... Vad händer när vi raderar två filer med samma namn?
    Jag håller mig till trash-cli som fungerar väldigt bra. Även på servrar.

    1.    Susano linux sade

      Jag uppskattar din åsikt. Obs, men att återuppfinna hjulet gäller inte för fri programvara. Vanligtvis finns det åtminstone ett par alternativ för att lösa problemen. Om jag till exempel vill ha en dns-tjänst kan jag ladda ner dnsmasq, dns bind eller arbeta lokalt med /etc/hosts.
      Det kan hända att det i någon distro inte finns någon trash-cli eller att det helt enkelt inte fungerar som förväntat. Det här inlägget är designat för sådana problem.
      hälsningar

  6.   mariadelao sade

    Schemat med färger för att förklara fälten i crontab-filen är väldigt cool.

    1.    Susano linux sade

      Ja! med tillstånd av elav! 😀

  7.   MSX sade

    Snyggt hack! Kände du till det här projektet? https://github.com/andreafrancia/trash-cli

    1.    Susano linux sade

      Ja, det är ett bra alternativ!

    2.    unsli sade

      Vad är det för?

  8.   liten robot sade

    På raden "00 12 * * 5 /bin/rm $HOME/Trash/*" skulle inte rm behöva ha alternativet -r för att ta bort papperskorgen också?

    1.    Susano linux sade

      Ja! Självklart. Tack 😀

  9.   rlsalgueiro sade

    Ämnet är intressant, jag tar inte bort något som jag inte är säker på, men det jag gillade mest var png-filen på cron-fuskbladet, titta, jag har förklarat det för några lärjungar som jag har och hittills ingen hade internaliserat hur det fungerade, ja ärligt talat har de flesta hållit på att säga att jag äntligen inte behöver lära mig det.

    1.    Susano linux sade

      Jag säger samma sak till mina elever, det är bättre att läsa två gånger och utföra en gång. Men vi är människor och genom slarv kan vi radera någon viktig fil. Jag är glad att du gillade inlägget. Hälsningar