Sida 1 av 1
Torrentskapande?
Postat: 09 feb 2009, 07:29
av dmz
Söker något snabbt och enkelt sätt för massproduktion av torrents. Har ett krav;
Det måste vara CLI och det ska gå att scripta emot.
Har testat mktorrent, men det var inte särskilt mature. Andra förslag?
Re: Torrentskapande?
Postat: 09 feb 2009, 07:38
av Konservburk
Re: Torrentskapande?
Postat: 09 feb 2009, 07:49
av dmz
Underbart.
Vet du hur jag automatiskt kan se till att torrent-filen får samma namn som mappen jag gör en torrent av? T.ex..
/mnt/Music/A/ABBA-Blaha , då vill jag att torrentfilen ska heta ABBA-Blaha.torrent.
Re: Torrentskapande?
Postat: 09 feb 2009, 08:01
av Konservburk
Förslagsvis med ett wrapper-script.
Re: Torrentskapande?
Postat: 09 feb 2009, 08:35
av dmz
Konservburk skrev:Förslagsvis med ett wrapper-script.
Ja, givetvis. Eller?
Re: Torrentskapande?
Postat: 09 feb 2009, 16:40
av Konservburk
dmz skrev:Konservburk skrev:Förslagsvis med ett wrapper-script.
Ja, givetvis. Eller?
Annars kan du fixa det direkt i källkoden

Re: Torrentskapande?
Postat: 09 feb 2009, 16:49
av dmz
Konservburk skrev:dmz skrev:Konservburk skrev:Förslagsvis med ett wrapper-script.
Ja, givetvis. Eller?
Annars kan du fixa det direkt i källkoden

Fast nu är mina c-kunskaper null. Vad menar du med wrapper-script? Utveckla gärna.
Re: Torrentskapande?
Postat: 09 feb 2009, 17:32
av Konservburk
dmz skrev:Fast nu är mina c-kunskaper null.
Kod: Markera allt
Index: buildtorrent.c
@@ -1230,17 +1230,16 @@
fprintf(stderr, "buildtorrent: piece length must be greater than 0\n");
return 1;
}
- if (optind + 2 < argc) {
+ if (optind + 1 < argc) {
fprintf(stderr, "buildtorrent: too many arguments\n");
return 1;
}
- if (optind + 2 > argc) {
+ if (optind + 1 > argc) {
fprintf(stderr, "buildtorrent: too few arguments\n");
return 1;
}
inname = argv[optind];
- outfile = argv[optind + 1];
/* handle paths correctly (note: requires POSIX basename(), not GNU) */
strncpy(nametemp, inname, 8191);
@@ -1437,14 +1436,20 @@
return 1;
}
}
+ outfile = malloc(strlen(argv[optind]) + 9);
+ strcpy(outfile, argv[optind]);
+ strcat(outfile, ".torrent");
if (!(output = fopen(outfile, "wb"))) {
fprintf(stderr, "buildtorrent: couldn't open \"%s\" for writing\n", outfile
);
+ free(outfile);
return 1;
}
if (bt_write(output, torrent)) {
fprintf(stderr, "buildtorrent: error writing \"%s\"\n", outfile);
+ free(outfile);
return 1;
}
+ free(outfile);
if (show) {
printf("torrent =>\n");
bt_show(torrent, show == 2, 2, 2, 0);
dmz skrev:Vad menar du med wrapper-script? Utveckla gärna.
Jag menar någonting i den här stilen...
Kod: Markera allt
#!/bin/bash
exec buildtorrent "$@" "${!#}.torrent"