Göra en fil som har andra filer i en map till en fil

Permalänk

Göra en fil som har andra filer i en map till en fil

Vet inte riktigt hur jag ska förklara.

Men om jag har fil A, som kräver filer B och C som ligger i map D,
eg.

C:. ├───A └───D ├───B └───C

Kan jag lägga in D mappen i A filen? Typ som .zip fil, fast det går att köra A filen, utan att behöva uppackad filerna för att köra A?
Vad jag vill är att bara ha en fil och inte bli tvungen att flytta D mappen när jag flyttar A filen, utan att allt följer A filen.

Permalänk
Medlem
Permalänk
Medlem

Du menar alltså att A är ett program som kräver filerna B och C för att köras? Är inte det rimligaste helt enkelt att slänga in även A i mappen D så har du allt samlat?

Annars kan ju A vara något self-extracting till en temp-folder när du kör den. Men jag kan inte riktigt tänka mig i vilken situation du vill göra det såvida du inte distribuerar programmet till andra.

Permalänk
Medlem

Släng in A och D i en gemensam mapp "E" om de ändå hör ihop?

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
99:e percentilen

Det luktar XY Problem. Kan du utveckla vad det egentligen är du vill åstadkomma? Vad är det för filer och vad är kontexten?

Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk

Hade hoppas på att det finns något sätt att länka filerna, men det alternativet finns om jag inte hittar något bättre.

Skrivet av Rådström:

Du menar alltså att A är ett program som kräver filerna B och C för att köras? Är inte det rimligaste helt enkelt att slänga in även A i mappen D så har du allt samlat?

Annars kan ju A vara något self-extracting till en temp-folder när du kör den. Men jag kan inte riktigt tänka mig i vilken situation du vill göra det såvida du inte distribuerar programmet till andra.

Ska distribuera det till andra, och de har problem med att de flyttar A filen utan D mappen (eller raderar den), vilket gör att det inte fungerar.

Skrivet av Pamudas:

Släng in A och D i en gemensam mapp "E" om de ändå hör ihop?

A letar efter ./D/B och ./D/C så det kommer inte att fungera då den kommer inte att hitta D mappen om jag flyttar A filen in i D mappen.

Skrivet av Alling:

Det luktar XY Problem. Kan du utveckla vad det egentligen är du vill åstadkomma? Vad är det för filer och vad är kontexten?

Hade hoppas på en generell lösning.

Fast jag har en python fil som kräver bibliotek att köra filen, och den kommer att distribueras till andra. Att be användarna att installera python bibliotek kommer aldrig att fungera, även med bilder och en fin guide. De tappar bort mappen där biblioteken ligger i e.g. D mappen.

Jag vet att pyinstaller/py2exe finns, med det tar ca 30sek att packa upp filerna varje gång filen startar. C kan jag inte skriva det i då den använder API från ett python bibliotek, och det går inte att ladda biblioteken i C då servern inte vill svara på några API frågor jag gör.

Permalänk
99:e percentilen
Skrivet av Frejoh466:

Hade hoppas på en generell lösning.

Fast jag har en python fil som kräver bibliotek att köra filen, och den kommer att distribueras till andra. Att be användarna att installera python bibliotek kommer aldrig att fungera, även med bilder och en fin guide. De tappar bort mappen där biblioteken ligger i e.g. D mappen.

Jag vet att pyinstaller/py2exe finns, med det tar ca 30sek att packa upp filerna varje gång filen startar. C kan jag inte skriva det i då den använder API från ett python bibliotek, och det går inte att ladda biblioteken i C då servern inte vill svara på några API frågor jag gör.

Jag har löst det problemet med Docker. Skulle det kunna funka i ditt scenario?

Visa signatur

Skrivet med hjälp av Better SweClockers

Permalänk
Medlem

Varför flyttar användarna på A?

Skrivet av Frejoh466:

A letar efter ./D/B och ./D/C så det kommer inte att fungera då den kommer inte att hitta D mappen om jag flyttar A filen in i D mappen.

Förslaget var ju att flytta A och D in i E, inte att flytta A in i D.

Visa signatur

AMD Ryzen 7 5800X | 32 GB Corsair Vengeance 3200 MHz | ASUS TUF Geforce RTX 3080

Permalänk
Medlem
Skrivet av Frejoh466:

A letar efter ./D/B och ./D/C så det kommer inte att fungera då den kommer inte att hitta D mappen om jag flyttar A filen in i D mappen.

Det var inte heller det jag föreslog Om A och D ligger under en gemensam mapp, t.ex. E så kommer du då ha E/A och E/D, vilket gör att ./D/B från E/A kommer peka rätt? E-mappen blir som en "container" för mapp A och D.

Redigerade ditt schema med hur jag menade:

C:. └───E ├───A └───D ├───B └───C

Visa signatur

NZXT H510 Flow MSI B450 Tomahawk MAX
AMD Ryzen 5800X3D RX 7900XTX Kingston Fury 64GB

Permalänk
Skrivet av Alling:

Jag har löst det problemet med Docker. Skulle det kunna funka i ditt scenario?

Har sätt lösningar med Docker när jag sökte runt, men aldrig använt det. Kommer dock troligen gå på en lösning med 7zip extract till %temp% och auto köra filen efter, tror att det inte bör vara så långsamt om jag inte komprimerar mappen. Verkar inte finnas några bra lösning på problemet.

Skrivet av L'ombra:

Varför flyttar användarna på A?

Bra fråga, svaret var "Det är ju den filen som jag kör, jag behöver ju inte ha de andra." Det är inga dator vänliga användare här. Så hoppades att det fanns ett smidigt sätt att lösa problem med, men var svårare än vad jag hade hoppas på.

Skrivet av Pamudas:

Det var inte heller det jag föreslog Om A och D ligger under en gemensam mapp, t.ex. E så kommer du då ha E/A och E/D, vilket gör att ./D/B från E/A kommer peka rätt? E-mappen blir som en "container" för mapp A och D.

Redigerade ditt schema med hur jag menade:

C:. └───E ├───A └───D ├───B └───C

Ah, prövade det. Fast, som svaret ovan.

Permalänk
Medlem

Låter som du behöver ordna något slags installationsskript som lägger undan filerna och skapar en genväg på skrivbordet el likn.

Visa signatur

AMD Ryzen 7 5800X | 32 GB Corsair Vengeance 3200 MHz | ASUS TUF Geforce RTX 3080

Permalänk
Medlem

Är det du som distribuerar filerna? Isf varför inte bara baka in allt i en fil innan du gör det om det bara är andra python grejer? Du får en fil om än jobbigare att underhålla men då plockar du bort komplexiteten från användarna.

Visa signatur

"One is always considered mad, when one discovers something that others cannot grasp."
- Ed Wood

Permalänk
Medlem
Visa signatur

WS: Fractal Design Pop Silent | Seasonic Prime G12 GC 550W | Gigabyte B650 Eagle AX | Ryzen 7 7700 | Corsair 64GB DDR5 | Asus Xonar DX | Arch Linux (x86_64) | Eizo EV2795
HTPC: Philips 50PUS8804, Kodi samt extern usb-disk
Server: Raspberry Pi 4 | 8GB RAM | HDD 750GB | Arch Linux (armv7h)