Emancipate Skrevet 17. oktober 2010 Del Skrevet 17. oktober 2010 Jeg ønsker å lage en kommando som tar meg til en mappe, og så kjører ls automatisk. Jeg prøvde dette: #!/bin/bash cd $* && ls To problemer: 1. cd blir ikke oppdatert, altså etter at jeg har kjørt scriptet er jeg der jeg var før jeg kjørte det... 2. ls vises ikke med farger Lenke til kommentar
mikeys Skrevet 17. oktober 2010 Del Skrevet 17. oktober 2010 Grunnen til at ls ikke er med farger er fordi scriptet blir kjørt utenfor ditt vanlige bruker miljø, dvs. at aliaser du har satt i .bashrc og lignende ikke vil fungere. Hvis du vil ha farger kan du bruke ls --color=auto Når det gjelder skifting til en annen mappe så gjelder noe det samme som over. Fordi scriptet blir kjørt i et subshell og blir behandlet som sitt eget miljø så påvirker det ikke miljøet i det shellet du er logget inn i. Det kan være det er en måte å komme rundt dette, men det vet jeg ikke om dessverre. Lenke til kommentar
olefiver Skrevet 17. oktober 2010 Del Skrevet 17. oktober 2010 En mulighet er å "source scriptet" snarere enn å kjøre det... se link Lenke til kommentar
Emancipate Skrevet 18. oktober 2010 Forfatter Del Skrevet 18. oktober 2010 Går det ikke an å sette opp et alias eller liknende? Lenke til kommentar
Sokkalf™ Skrevet 18. oktober 2010 Del Skrevet 18. oktober 2010 (endret) Legg det som en function i .bashrc-fila di. function cdls { cd $* && ls } Ikke testet, men tror det skal funke. Endret 18. oktober 2010 av Sokkalf™ 1 Lenke til kommentar
Emancipate Skrevet 19. oktober 2010 Forfatter Del Skrevet 19. oktober 2010 Takk, akkurat det jeg var ute etter! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå