Hur man Kopierar Filer med Hjälp av “installera” – Kommandot på Linux

0
332

installera är en mångsidig fil-kopiera kommando i Linux och macOS. Det är perfekt för power-användare som söker effektivitet. Läs den här artikeln för att upptäcka hur att arbeta smartare—inte hårdare.

Vänta—Det är Inte För att Installera Programvaran?

Det installationskommando som kanske har de mest vilseledande namn på någon av Linux-kommandon. Det spelar faktiskt inte installera någon programvara. Om du försöker installera ett program från kommandoraden i Ubuntu eller annan Debian-baserad distribution använda apt-get-kommando. På andra Linux-distributioner, använda din Linux-distribution är pakethanteringsverktyget i stället, till exempel, dnf på Fedora eller zypper på openSUSE.

Så Vad Gör installera Göra?

I ett nötskal installera kombinerar element från cp (copy), chown (change owner), chmod (change mode), mkdir (make directory) och band (band symboler) kommandon. Den låter dig använda funktioner från alla dessa i en enda åtgärd.

Installera med kommandot:

  • Kopiera filer som cp-kommandot.
  • Välj om du vill skriva över befintliga filer.
  • Skapa target-katalog om det inte finns, som mkdir.
  • Ställa in användarens tillåtelse flaggor av filer, precis som kommandot chmod.
  • Som ägare av filer, precis som det chown kommando.
  • Ta bort icke väsentliga bagage från körbara filer, precis som strip-kommandot.

Trots allt som funktionalitet, installationskommando som inte har alltför många alternativ att brottas med.

När Vill Du Använda Det

Det installationskommando som förmodligen inte kommer att användas varje dag. Det är bra, men bara för vissa situationer. Ett scenario där installera kommer till sin egen mjukvara. Låt oss säga att du är programmering ett nytt verktyg. Du måste göra tester utanför utveckling av miljön. Att göra som du behöver för att kopiera det nya programmet filer till en test-katalogen. Test-katalogen kanske måste skapas, och du måste ställa in rätt behörigheter och ägande för filer.

Eftersom utveckling är en iterativ aktiviteter, kan du sluta göra denna sekvens av åtgärder många, många gånger. Det installationskommando som gör allt det tunga jobbet för dig. Slutligen, när ditt nya verktyget är redo att sättas in, som du kan använda för att installera och kopiera det med rätt behörigheter till sin sista arbetsplats.

Ett Exempel

En programmerare är att arbeta på just en sådan nya verktyg, som kallas ana. Den består av en binär körbar fil och en databas. Efter att ha testat, det måste kopieras till /usr/local/bin att göra den tillgänglig för alla användare av Linux-system. Du behöver ersätta filnamn och katalog vägar i vårt exempel för filer och banor som du använder på din dator när du använder installera.

Tills den är klar för release kommer det att testas i en katalog som heter ~/test/ana. Medlemmar i geek-koncernen kommer att ha läs-och körningsbehörighet. Andra användare kommer att ha läs-och körningsbehörighet också. Installera med kommandot använder samma numerisk representation för behörighet som chmod gör. Våra programmerare har beslutat att tillstånd skall ställas till:

  • Ägare: Läsa, skriva och exekvera.
  • Grupp: Läsa och köra.
  • Andra: Kör bara.

Hur man Använder Kommandot installera

Vårt fiktiva programmerare som arbetar katalogen ~/work. Han har skrivit programmet, sammanställt det, och producerade en binär kallas ana. Han har redan skapat den databasfil som ana fungerar med Ord.db. Så båda filerna är redo för test. Låt oss ta en titt på dem:

ls -l ana Ord.db

Ana verktyg han har bara skrivit skapar anagram av en fras som anges på kommandoraden. Kontroll provning är ganska enkelt.

Våra programmerare har åberopat ana med frasen “kex” och allt verkar väl. Han vill nu att kopiera dessa två filer till ~/test/ana-katalogen för att se om den nya verktyget fungerar som det ska bort från utveckling av miljön. Han utfärdar följande kommando:

installera-D -v ana Ord.db -t ~/test/ana

De alternativ som används på kommandoraden:

  • D: Skapa kataloger, inklusive överordnade kataloger, om det behövs.
  • v: Detaljerad lista varje katalog som det är gjort och varje kopia av filen som den utförs.
  • t: Target-katalog.

Vi kan se att installera skapar ~/test-katalogen, och sedan skapar ~/test/ana-katalogen. De filer som listas som en efter en som de har kopierats till target-katalog.

Lista filerna i ~/test/ana bekräftar att de har kopierats över på rätt sätt.

ls -l

Nästa steg är att testa ana utility genom att åberopa den i ~/test/ana-katalogen.

Verktyget fungerar som förväntat, vilket är bra. Men behörighet är inte korrekt. Kravet är att medlemmarna i gruppen geek har läs-och körbehörighet, och för andra användare att få köra bara.

Vi kan ta itu med båda dessa frågor helt enkelt med följande kommando. Observera användningen av sudo-kommandot ska köras med root-rättigheter. -O och g och alternativ kräver detta. Vi kommer att bli tillfrågad om lösenord när vi kommandot.

sudo installera -b -S .bak -o-dave -g geek -m 751 ana Ord.db -t ~/test/ana

  • -B (backup) alternativet skapar säkerhetskopior av filerna innan de är över.
  • -S (suffix) alternativet definierar suffix för de säkerhetskopierade filerna. Om du inte ger ett suffix a ~ (tilde) används. Vi ber installera för att använda suffixet .bak.
  • Vi som ägare av filen för att vara dave med-o (ägaren) alternativ.
  • -G (grupp) alternativet kräver det namn på en grupp. Detta blir ägare grupp av filer. Den grupp som vi kommer att använda heter geek.
  • -M (mode) alternativet ställer du in filen lägen för filer med hjälp av standardformuläret chmod numeriska syntax.

Vi behöver inte längre använda-D (skapa kataloger) alternativ, eftersom vi vet att den test-katalogen redan existerar. Vi har också utelämnas -v (verbose) alternativ. Lista filerna i vårt ~/test/ana-katalogen visar oss bilden för mer information:

ls -l

Detta bekräftar att alla våra krav har uppfyllts.

  • Filerna har kopierats över till test-katalogen.
  • De behörigheter som har angetts korrekt.
  • dave är ägare av filer.
  • Geek grupp är gruppen ägare av två filer.
  • Backup-kopior har gjorts av varje fil, som kallas ana.bak och Ord.db.bak.

Allt som uppnås genom användning av ett kommando. Snyggt.

Våra programmerare gör några sista ändringar till nytta och re-sammanställer. De filer som har ändrats måste kopieras över till ~/test/ana-katalogen från ~/work-katalogen. Vi kan göra detta genom att använda den -C (jämför) alternativ. Om källfilen och mål fil är samma källa filen kopieras inte.

sudo install-C -b -S .bak -o-dave -g geek -m 751 ana Ord.db -t ~/test/ana

Lista filerna i målkatalogen visar oss att filstorlek ana filen har ändrats. Det är större än ana.bakfile. Tidsstämpeln på ana har också förändrats. Dessa förändringar är därför att den nya versionen av filen har kopierats här.

ls -l

Filens storlek och tidsstämpel Ord.db-filen har inte ändrats. Inga förändringar gjordes i Ord.db-fil, så det var inte kopieras över. Om ett projekt med många filer-C (jämför) alternativet kan spara en hel del tid och hårddisk churn, genom att bara kopiera de filer som har ändrats.

Programmeraren har återigen testade att ana verktyget fortsätter att fungera.

Det är dags att använda installera för att kopiera filer till /usr/local/bin katalogen. Detta kommer att göra de nya verktyg som finns tillgängligt för alla användare av den här Linux-datorn. Vi vet att /usr/local/bin finns, så att vi inte behöver för att skapa den katalogen. Vi kan använda en modifierad version av vår senaste kommandot.

Vi har bytt mål-katalogen till /usr/local/bin. Vi har tagit bort -C (jämför) alternativ eftersom det finns inga kopior av dessa filer i målkatalogen ännu, så det finns inget att jämföra mot. På samma sätt finns det ingenting att backa upp, så att vi kan ta bort -b (säkerhetskopiering) och-S (suffix) alternativ.

sudo installera -o dave -g geek -m 751 ana Ord.db -t /usr/local/bin

Vi kan visa att de filer som har kommit i /usr/local/bin:

ls -l

Och som ett sista test låt oss ändra katalogen till vårt hem katalogen och se om vi kan starta vår nya verktyget från det.

Observera att vi inte behöver förord ana med kommandot ./ vilket innebär att det körs från /usr/local/bin. Mission accomplished.

Nämnde vi att installera kan strip överflödiga symbol tabeller och annat bagage från den binära filen, för att minska i storlek. Låt oss göra det nu. Notera att kommandot nedan inkluderar inte Ord.db. Detta beror på Ord.db är en databas, inte en binär körbar. Att kopiera och krympa den binära filen ana att vi kan använda följande kommando. Vi har lagt till-s (krympa) alternativet med en lägre fall “s.” Vi har lagt tillbaka-i -b (säkerhetskopiering) och-S (suffix) alternativ, med versalt “S”.

sudo installera -s -b -S .bak -o-dave -g geek -m 751 ana -t /usr/local/bin

Lista filer i /usr/local/bin gör det möjligt för oss att jämföra storleken på ana-fil med dess säkerhetskopia. Ana filen har reducerats till nästan 60% av sin tidigare storlek.

ls -l /usr/local/bin

I Sammanfattning

Det installationskommando som vänder sig till en ganska nisch använda. För många människor är det inte användas dag in och dag ut, eller möjligen från månad till månad. Trots att det installationskommando som är ett bra verktyg för att bli bekant med och att ha i din arsenal av trick. För de tillfällen när du behöver det, det belönar din inlärningskurva med ökar i effektivitet, enkelhet och helt enkelt färre knapptryckningar.