kjey Skrevet 22. august 2007 Del Skrevet 22. august 2007 Hei. Er det noen som vet om en nettside eller lignende hvor det står litt forklart om hvordan man legger til egne kommandoer til terminal? Her er det snakk om å programmere egne kommandoer, redigere på eksisterende kommandoer eller legge inn nye kommandoer som er skrevet av andre. Hadde vært litt gøy å lage noe eget som man kan ha bruk for i terminal. Hvis ingen vet om noe jeg kan lese, er det noen som kan gi meg en pekepinn på hvordan det gjøres? På forhånd, takk Lenke til kommentar
Admin'c Skrevet 22. august 2007 Del Skrevet 22. august 2007 (endret) ~bruker/.bashrc er et fint sted hvis du bruker bash f.eks. Eksempel er alias port3="portupgrade -aRiP" som kutter ned på hva man må skrive ved portupgrade (port3 utløser det til høyre) Endret 22. august 2007 av Admin'c Lenke til kommentar
Kadmium Skrevet 22. august 2007 Del Skrevet 22. august 2007 (endret) Det stemmer nok at oppretting av et alias ville være det beste i denne sammenhengen. Du kan enten lagre aliaset permanent (ved å legge til aliaset i filen ~/.bashrc), eller du kan lagre det midlertidig (helt til du bestemmer deg for å lukke vinduet). Eksempel på oppretting av midlertidig alias: alias pingrouter='ping 10.0.0.1' Endret 22. august 2007 av Kadmium Lenke til kommentar
kjey Skrevet 22. august 2007 Forfatter Del Skrevet 22. august 2007 (endret) Hei, takk for svar ;-) Men tenkte mer på hvor det står om hvordan man lager egne kommandoer i f.eks. C slik at dine egne kommandoer kan ta imot argumenter osv. Endret 22. august 2007 av kjey Lenke til kommentar
Admin'c Skrevet 22. august 2007 Del Skrevet 22. august 2007 se på bashscripts det er vel lettere å lære og kan være ganske avansert alikevel. Lenke til kommentar
kjey Skrevet 22. august 2007 Forfatter Del Skrevet 22. august 2007 Nah, driver å lærer C, så vil prøve på det Lenke til kommentar
iDude Skrevet 22. august 2007 Del Skrevet 22. august 2007 Hei, takk for svar ;-) Men tenkte mer på hvor det står om hvordan man lager egne kommandoer i f.eks. C slik at dine egne kommandoer kan ta imot argumenter osv. 9339686[/snapback] Antar du kan litt C da "main" kan ha to argument int main(int argc, char * argv[]) argc er antall argument du sender til programmet, argv er en "array" med argumenter osv. argv[0] er navnet til programmet ditt Lenke til kommentar
kjey Skrevet 22. august 2007 Forfatter Del Skrevet 22. august 2007 Ok, men jeg ser i Linux at kommandoen er kompilert i kjørbare C-programmer, hvordan kan man sende argumenter til et annet C-program? Lenke til kommentar
Sokkalf™ Skrevet 22. august 2007 Del Skrevet 22. august 2007 Skjønner ikke helt hva du mener her. Vil du kalle et annet program fra et C-program? Isåfall kan du bruke system() ; eksempel : system("ls -l"); Men hvis det er dette du mener, så råder jeg deg til å heller se på scripting i bash, eller noe annet som er bedre egnet til slike formål enn C, som f.eks Perl, Python o.l. Det er greit nok å lære seg C, men du lærer ikke mye av å bruke funksjoner som system(). Lag heller små programmer som løser små problemer, og bind det hele sammen med et script. Lenke til kommentar
kjey Skrevet 22. august 2007 Forfatter Del Skrevet 22. august 2007 Hehe, er ikke det jeg mener. Sorry, forklarte dårlig! Hvordan kan C programmet mitt hente eventuelle argumenter som jeg skriver inn i terminal? F.eks. hvis jeg lager en kommando som heter "dato" med tilhørende C program: "dato". Hvis jeg skriver i terminal: "dato -argument", hvordan kan jeg da sende over argumentet? Lenke til kommentar
Sokkalf™ Skrevet 22. august 2007 Del Skrevet 22. august 2007 (endret) Men C-programmet er jo allerede en kommando. Hvis du har et C-program som heter dato i den mappen du står i, så kan du skrive ./dato argument Evt. hvis programmet ligger i en mappe som ligger i PATH (/bin, /usr/bin, /usr/local/bin e.l) trenger du bare å skrive dato argument Edit: Du kan også videresende argumenter fra et bash-script ved å bruke $1 for første argument, $2 for argument nr. 2 osv.. eller $* for å videresende alle argumenter. f.eks #!/bin/bash ls -l $* Dette lager et script som kaller ls med argumentet -l, og videresender alle andre argumenter du måtte kalle det med. Endret 22. august 2007 av Sokkalf^ Lenke til kommentar
kjey Skrevet 22. august 2007 Forfatter Del Skrevet 22. august 2007 Aha, takker, da skal det vel gå smurt Er ikke så dreven i C enda, så få titte på dette med argumenter. Tusen takk for hjelp! Lenke til kommentar
comicz Skrevet 23. august 2007 Del Skrevet 23. august 2007 Du sparer deg selv for mye tid ved å sette deg inn i bash-scripting først... 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å