URL: https://www.overclockers.at/coding-stuff/parameteruebergabe_in_linux_110077/page_1 - zur Vollversion wechseln!
Also mein prob:
Ich soll parameter übergeben, wie zb -u oder -l oder -of=datei
oder gemischt
nur wie finde ich herraus was der user nun eingegeben hat?
den mit:
int main(int argc, char *argv[])
hab i ja dann nur zahlen
tia
x3
Das hat mit Linux gar nix zu tun.
Geh einfach das argv Array durch, da hast du jeden Parameter aufgelistet.
kA (vl ists in linux wirklich anders) aber wie wärs wenn du das char * array nimmst
argv[0] -> 1. argument (ich glaub dass is aber das arbeitsverzeichnis oder so)
argv[1] -> 2. argument
..
edit: wenn du argv darstellst, wie auch immer, dann bekommst du natürlich eine zahl (speicheradresse) weils ein doppelpointer is -> char **
Zitat von x3nur wie finde ich herraus was der user nun eingegeben hat?
den mit:
int main(int argc, char *argv[])
hab i ja dann nur zahlen
Code:atrox@nexus:~$ ./argv -some option "this is a blank test" argv[0]: './argv' argv[1]: '-some' argv[2]: 'option' argv[3]: 'this is a blank test' atrox@nexus:~$ cat argv.c #include <stdio.h> int main (int argc, char **argv) { int i; for (i=0; i<argc; i++) printf("argv[%d]: '%s'\n",i,argv[i]); }
und gleich ein beispiel für die shell-expansion (was wohl der größte unterschied bei der behandlung von argumenten zwischen dos/win und unix ist):
Code:atrox@nexus:~$ ./argv /proc/* argv[0]: './argv' argv[1]: '/proc/1' argv[2]: '/proc/1100' argv[3]: '/proc/1106' argv[4]: '/proc/1107' argv[5]: '/proc/1108' argv[6]: '/proc/1109' argv[7]: '/proc/1110' argv[8]: '/proc/1125' argv[9]: '/proc/1437' argv[10]: '/proc/1501' argv[11]: '/proc/16534' argv[12]: '/proc/16809' (...) argv[92]: '/proc/mounts' argv[93]: '/proc/mtrr' argv[94]: '/proc/net' argv[95]: '/proc/partitions' argv[96]: '/proc/pci' argv[97]: '/proc/self' argv[98]: '/proc/slabinfo' argv[99]: '/proc/stat' argv[100]: '/proc/swaps' argv[101]: '/proc/sys' argv[102]: '/proc/sysrq-trigger' argv[103]: '/proc/sysvipc' argv[104]: '/proc/tty' argv[105]: '/proc/uptime' argv[106]: '/proc/version'
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025