Slet fil/mappe ved opstart

Alle tekniske spørgsmål som ikke hører ind under de andre fora.
iznogoud
Indlæg: 5
Tilmeldt: 20. nov 2006, 20:40
IRC nickname: IzNoGoUd
Geografisk sted: Middelfart

Slet fil/mappe ved opstart

Indlæg af iznogoud »

For at lære noget nyt, ønsker jeg at slette en fil/mappe ved opstart af Ubuntu 8.10
Filen/mappen er der nogle gange hvis jeg spiller fx. FreeCol.
Er der nogle der vil komme med en howto til et script/sh eller hvad det nu hedder i linux, som kan slette en fil og en mappe.
Det ville være rart hvis det kunne køre før: system > indstillinger > sessioner
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Re: Slet fil/mappe ved opstart

Indlæg af laoshi »

Hvis mappen ligger på samme placering hver gang er det ikke noget problem.
Du sletter mappen med indhold ved rm -R STI_TIL_MAPPE - hvis den f.eks hedder /home/BRUGERNAVN/FreeCol så er det

Kode: Vælg alt

rm -R ~/FreeCol

For at lave et script kan du højreklikke på Skrivebordet > Opret dokument > Skalprogram
Under den tekst som allerede står i dokumentet skriver du din kommando ind, gemmer med et passende navn, f.eks fjern_FreeCol.sh. Scriptet indeholder nu

Kode: Vælg alt

#!/bin/bash
rm -R ~/FreeCol

Du kan så flytte den til /usr/local/bin og gøre den udførbar med flg.

Kode: Vælg alt

sudo mv ~/Skrivebord/fjern_FreeCol.sh /usr/local/bin/fjern_FreeCol.sh && sudo chown root /usr/local/bin/fjern_FreeCol.sh && sudo chmod +x /usr/local/bin/fjern_FreeCol.sh

For at checke at alt virker som det skal, så prøv et køre scriptet manuelt efter en login hvor mappen findes (eller opret mappen selv, læg en fil i den og se hvad der sker). Det gør du ved

Kode: Vælg alt

fjern_FreeCol.sh

Hvis det kører uden problemer, så kan du tilføje scriptet til at køre automatisk ved opstart ved hjælp af System > Indstillinger > Sessioner > Opstartsprogrammer > Tilføj. Her angiver du et navn samt kommandoen

Kode: Vælg alt

/usr/local/bin/fjern_FreeCol.sh

Værre er det såmænd ikke.
Vær opmærksom på, at når terminalen beder dig om at angive password, så flytter markøren sig ikke medens du skriver, men dit input modtages alligevel. Tryk <enter> og så kører det. Når en kommando er korrekt udført kommer der en ny kommandoprompt. Hvis ikke, så får du en fejlmeddelelse som du kan bruge til at regne ud hvad du har gjort galt. Hvis du bruger de samme navne som jeg har foreslået her, så behøver du ikke at indtaste kommandoerne (med fare for tastefejl). Du kan kopiere her fra med ctrl+c og indsætte i terminalen med shift+ctrl+v
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
iznogoud
Indlæg: 5
Tilmeldt: 20. nov 2006, 20:40
IRC nickname: IzNoGoUd
Geografisk sted: Middelfart

Re: Slet fil/mappe ved opstart

Indlæg af iznogoud »

Takker mange gange, jeg har fået det til at virke, og lært lidt mere :-)
Her er min løsning:
#!/bin/bash
#
# /usr/local/bin/sletfiler.sh
# Sletter filer/mapper ved opstart


# Fjerner fil, ingen prompt hvis filen ikke findes -f
rm -f ~/test/test.txt


# Fjerner mappe -R, ingen prompt hvis mappen ikke findes -f
rm -R -f ~/test2
# EOF

Er det stillet korrekt op?
Hvis jeg nu vil have scriptet til at køre FØR: system > indstillinger > sessioner, hvad gør jeg så?
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Re: Slet fil/mappe ved opstart

Indlæg af laoshi »

Det ser udmærket ud. Jeg tror ikke du behøver at skrive
rm -R -f ~/test2

du kan vist godt nøjes med
rm -Rf ~/test2

R = rekursiv - d.v.s man fjerner mappen med alt indhold

Du kan til hver en tid køre scriptet manuelt fra en terminal med

Kode: Vælg alt

sletfiler.sh


Hvis du vil køre det på bestemte tidspunkter, så kan du se en fremgangsmåde her:https://ubuntudanmark.dk/forum/viewtopic.php?f=11&t=6043
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
Jakob77
Indlæg: 889
Tilmeldt: 19. dec 2008, 15:52
IRC nickname: Jakob77

Re: Slet fil/mappe ved opstart

Indlæg af Jakob77 »

iznogoud skrev:Takker mange gange, jeg har fået det til at virke, og lært lidt mere :-)
Her er min løsning:
#!/bin/bash
#
# /usr/local/bin/sletfiler.sh
# Sletter filer/mapper ved opstart


# Fjerner fil, ingen prompt hvis filen ikke findes -f
rm -f ~/test/test.txt


# Fjerner mappe -R, ingen prompt hvis mappen ikke findes -f
rm -R -f ~/test2
# EOF

Er det stillet korrekt op?
Hvis jeg nu vil have scriptet til at køre FØR: system > indstillinger > sessioner, hvad gør jeg så?


Det vil du ikke, for det er du ikke gammel nok til at pille ved endnu..! :wink:

Nej, jeg ved det ikke, men det bliver nok nemt mere usikkert.
Jeg tror nok, at du måske kan gøre det ved at tilføje dit script eller kalde det næsten i bunden af .bashrc
Men jeg tør ikke anbefale det.

Og forresten mange tak for dit spørgsmål, jeg lærer også af det. :)
iznogoud
Indlæg: 5
Tilmeldt: 20. nov 2006, 20:40
IRC nickname: IzNoGoUd
Geografisk sted: Middelfart

Re: Slet fil/mappe ved opstart

Indlæg af iznogoud »

Så blev jeg voksen :wink: Jeg har pillet lidt :lol: og googlet.
Hvis man bruger Gnome deskoppen kan man slette filer og mapper ved logout!

Logoff script:
sudo nano /etc/gdm/PostSession/Default

indsæt "rm -f ~/test.txt" inden "exit 0"
Måske skal der være fuld path "/bin/rm -f /home/brugernavn/test.txt" for at være helt korrekt, eller?

Logon script:
sudo nano /etc/gdm/PreSession/Default
Hvis nogle derude har brug for dette.
kimkimsen
Indlæg: 5
Tilmeldt: 14. feb 2009, 14:10

Re: Slet fil/mappe ved opstart

Indlæg af kimkimsen »

øhhh spørgsål lyder måske lidt dumt :roll:
men min mappe ligger i
filsystem\usr eller en anden mappe hvad så......
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: Slet fil/mappe ved opstart

Indlæg af lath »

kimkimsen skrev:øhhh spørgsål lyder måske lidt dumt :roll:
men min mappe ligger i
filsystem\usr eller en anden mappe hvad så......


Hej Kim

Du kan til enhver tid angive den absolutte sti.

Du skriver en absolut sti, hvis
  • stien begynder med / tegnet - også kaldet root mappen (som ikke er det samme superbruger root's mappe som er /root)
  • og herefter angiver hver maape som filsystemet skal navigere ned igennem for at komme til dit script/program, hvor:
    • / er adskillesestegn imellem mapper, og filen

En guldgrube af linux relateret dokumentation finder du på: http://www.tldp.org

Jeg vil især anbefale
Bash guide for beginners og Advanced bash scripting guide på http://www.tldp.org/guides.html

Vil du forstå noget mere at opbygningen af linux styresystemers opbygning af filsystemet, så kig her:
Denne Youtube video er ret god:

"Linux Filesystem Hierarchy - Part One" (den tager lidt under 11 minutter):
http://www.youtube.com/watch?v=460IxkYmZxQ

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags