Voeg Prullenbak toe aan Terminal

rm

Met behulp van de opdracht rm Het brengt bepaalde gevaren met zich mee, want als we een fout maken, is er geen manier om te herstellen wat we hebben verwijderd. Door het gebruik van alias en de hulp van cron we kunnen een aantal verbeteringen aanbrengen en hoofdpijn voorkomen.

Uitstekend! Wat moeten we doen?

Slaan ondersteunt commando aliassen, gebruikt om afkortingen of alternatieve namen voor huidige commando's te maken. We kunnen het commando gebruiken alias om te zien welke zijn gedefinieerd.

Om een nieuwe alias de volgende syntaxis wordt gebruikt:

alias comando personalizado='comando real'

bijvoorbeeld:

$ alias list = 'ls -l' $ list totaal 3 drwxr-xr-x 2 gebruikersgroep 4096 15 mei 13:12 Documenten drwxr-xr-x 2 gebruikersgroep 4096 12 mei 11:05 Downloads drwxr-xr-x 2 gebruiker groep 4096 15 mei 05:47 Balie
Bij het uitvoeren van een commando kijkt de shell eerst naar het alias en vervolgens in de omgevingsvariabele PATH

Het eerste ding om te doen is maak een directory dat helpt ons om de bestanden op te slaan die we zullen verwijderen

mkdir $HOME/Papelera

De volgende stap is om een alias voor rm-opdracht dat verplaatst wat we willen verwijderen naar de prullenbak

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

La -t optie laat in het bovenstaande commando de rest van de argumenten naar de opgegeven map gaan
Als we de alias is beschikbaar voor toekomstige bash-sessies, we moeten het toevoegen in de $ HOME / .bashrc

Nu elke keer dat we rennen rm, in plaats van te verwijderen, sturen we het bestand naar de prullenbak

De prullenbak automatisch verwijderen

Vaak verwijderen we bestanden om schijfruimte vrij te maken. Het is noodzakelijk om ervoor te zorgen dat de inhoud van de prullenbak af en toe volledig kan worden gewist om onze harde schijf niet te vullen. Voor dit doel zullen we gebruiken cron

cron is een demon gewend voer taken automatisch uit in een bepaalde tijd. De syntaxis is als volgt:

Chop_Cron

Er is / Etc / crontab (algemeen systeem, bevat een sectie om de gebruiker die uitvoert toe te voegen) en / var / spool / cron / crontabs / user (één voor elke gebruiker)

Het commando crontab -e stelt je in staat om een ​​nieuw item toe te voegen (met een teksteditor zoals nano of vi). Onze lijn zal als volgt zijn:

# hm dom mon dow commando 00 12 * * 5 / bin / rm $ HOME / Prullenbak / *

De vorige cron-regel verwijdert de prullenbak elke vrijdag om 12 uur

De absoluut pad van rm aangezien dit nu een alias is

Ik hoop dat ik alles heb behandeld.

Groeten 😀


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.

  1.   levendig zei

    Interessant artikel, na het lezen heb ik overwogen een aantal dingen te doen. Bedankt voor de bijdrage 😉

    1.    Susano linux zei

      Bedankt voor de kans om hier te schrijven!

    2.    ongedaan maken zei

      U moet die ideeën delen 🙂

  2.   Dan zei

    !!Erg goed idee!!
    Hoewel ik aan het lezen was en ik dacht dat het bij het maken van de alias praktischer zou kunnen zijn om de bestanden naar de prullenbak te verplaatsen die al in de grafische omgeving bestaat (tenzij iets dit verhindert).
    Nu ben ik niet thuis, maar ik denk dat het in ~ / .local / of een andere verborgen map in de thuismap staat.
    Op deze manier, wanneer de prullenbak wordt geopend in de bestandsbrowser, worden de bestanden die van de opdrachtregel zijn verwijderd, ook gezien.

    groeten

    1.    levendig zei

      Precies dat is wat ik dacht. Gewoonlijk is de prullenbak te vinden in ~ / .local / share / Trash

      1.    geïnteresseerd zei

        Het geeft me dat je het niet zo gemakkelijk kunt gebruiken ... Wanneer een desktopomgeving iets naar de prullenbak stuurt, doet het dat op een bepaalde manier, met zijn metadata en dergelijke (ik weet niet zeker hoe het het doet, maar ik heb het gezien bij het opsommen van de inhoud van die directory) ... Voor dat beter gebruik trash-cli ...

    2.    Dan zei

      Ga maar, want het is een oplossing die zowel eenvoudig als elegant is.
      Het zou leuk zijn om te weten hoe trash_cli het doet, maar op dit moment vind ik deze oplossing leuk.

    3.    Susano linux zei

      Bedankt Dan. Ik dacht aan deze oplossing omdat je op serverniveau de $ HOME / .local / Trash niet hebt, dus besloot ik een nieuwe map te maken. 😀 Groeten

  3.   geïnteresseerd zei

    Interessant idee.

    Maar het lijkt me dat er al vergelijkbare dingen zijn. In Debian heb ik het trash-cli-pakket getest (meer info: https://github.com/andreafrancia/trash-cli) die komt, moet hetzelfde doen, maar met de prullenbak van het desktopsysteem (gnome, kde, xfce ...). Mogelijk een betere oplossing, want op deze manier 'zit alles bij elkaar op dezelfde plek'.

    1.    Susano linux zei

      Ja, trash-cli is misschien beter voor desktopomgevingen, maar ik dacht aan dit bericht voor distros-servers waar je geen $ HOME / .local / Trash hebt. Bedankt voor de reactie!

  4.   Balken zei

    Een heel interessant artikel.

    In mijn geval ben ik nieuw in alles wat Vrije Software is. Ik heb echter mijn ontmoetingen gehad met de console. Zodat ik in de praktijk kan brengen wat dit artikel zegt en kan voorkomen dat ik elke keer dat ik rm gebruik, gegevens verlies

    Ga je gang!

    1.    Susano linux zei

      Goed dat het je van dienst is! Heel erg bedankt

  5.   Note zei

    Het wiel opnieuw uitgevonden ... Wat gebeurt er als we twee bestanden met dezelfde naam verwijderen?
    Ik blijf bij trash-cli, wat erg goed werkt. Zelfs op servers.

    1.    Susano linux zei

      Ik waardeer uw mening. Let op, maar het wiel opnieuw uitvinden is niet van toepassing in Vrije Software. Er zijn meestal minstens een aantal alternatieven om de problemen op te lossen. Als ik bijvoorbeeld een dns-service wil, kan ik dnsmasq, dns bind downloaden of lokaal werken met de / etc / hosts.
      Het kan gebeuren dat er in een of andere distro geen trash-cli is of dat het gewoon niet werkt zoals verwacht. Dit bericht is ontworpen voor dergelijke problemen.
      groeten

  6.   mariadelao zei

    Erg gaaf het schema met kleuren om de velden van het crontab-bestand uit te leggen.

    1.    Susano linux zei

      Ja! met dank aan elav! 😀

  7.   msx zei

    Leuke hack! Wist u van dit project? https://github.com/andreafrancia/trash-cli

    1.    Susano linux zei

      Ja, het is een goed alternatief!

    2.    ongedaan maken zei

      Waar is het voor?

  8.   kleine robot zei

    In de regel «00 12 * * 5 / bin / rm $ HOME / Trash / *», zou rm niet de optie -r moeten hebben om ook de prullenbakmappen te verwijderen?

    1.    Susano linux zei

      Ja! Natuurlijk. Bedankt 😀

  9.   rlsalgueiro zei

    Interessant onderwerp, ik verwijder niets waar ik niet zeker van ben, maar wat ik het leukst vond, was de png van de cron chop, kijk dat ik het aan sommige discipelen heb uitgelegd die ik heb en tot nu toe had niemand het geïnternaliseerd Hoe het werkte, om de waarheid te zeggen, de meeste van hen hebben het gezegd dat ik het uiteindelijk niet hoef te leren.

    1.    Susano linux zei

      Hetzelfde zeg ik tegen mijn studenten: het is beter om twee keer te lezen en één keer uit te voeren. We zijn echter mensen en we kunnen per ongeluk een belangrijk bestand verwijderen. Goed dat je de post leuk vindt. Proost