• Hitta filer i linux ifrån terminalen

    Kommando find linux är ett kraftfull kommando som kan användas till söka efter filer

    Kommandot find i Linux är ett mycket kraftfullt verktyg för att söka efter filer och mappar i filsystemet. Här är några grundläggande sätt att använda det:

    1. Sök efter filer med ett specifikt namn:
       find /sökväg/till/mapp -name filnamn

    Exempel: find /home/användare -name anteckningar.txt söker efter en fil med namnet anteckningar.txt i användarens hemmapp.

    1. Sök efter filer baserat på filtyp:
       find /sökväg/till/mapp -type f

    Exempel: find /home -type f listar alla filer under /home-katalogen.

    1. Sök efter mappar:
       find /sökväg/till/mapp -type d

    Exempel: find /home -type d listar alla mappar under /home-katalogen.

    1. Kombinera find med andra kommandon:
      Du kan använda find med andra kommandon med hjälp av -exec flaggan. Exempel:
       find /sökväg/till/mapp -type f -exec grep 'sökt_text' {} \;

    Detta söker efter alla filer som innehåller texten ’sökt_text’.

    Sök efter filer baserat på filstorlek:

       find /sökväg/till/mapp -size +storlek

    Exempel: find / -size +1M söker efter filer som är större än 1 megabyte i hela filsystemet.

    Sök efter filer baserat på ändringsdatum:

         find /sökväg/till/mapp -mtime -dagar

      Exempel: find /home/användare -mtime -10 söker efter filer som ändrades inom de senaste 10 dagarna i användarens hemmapp.

      Dessa är bara några exempel på hur du kan använda find-kommandot. Det finns många andra alternativ och flaggor som gör find till ett mycket anpassningsbart verktyg för att söka i filsystemet.

      Hur hittar en file med viss type

      För att hitta filer av en viss typ med find-kommandot i Linux, använder du -type-flaggan följt av en bokstav som specifierar filtypen. De vanligaste filtyperna som kan sökas är:

      • f för vanliga filer
      • d för kataloger (mappar)
      • l för symboliska länkar

      Till exempel, för att hitta alla vanliga filer i en specifik katalog och dess underkataloger, kan du använda:

      find /sökväg/till/mapp -type f

      Om du istället vill hitta alla kataloger, använd:

      find /sökväg/till/mapp -type d

      Och för att hitta alla symboliska länkar:

      find /sökväg/till/mapp -type l

      Dessa kommandon listar alla matchningar inom den angivna sökvägen. Du kan också kombinera -type med andra flaggor och kriterier för att ytterligare begränsa din sökning.

      Att kombinera flera alternativ och kriterier i find-kommandot i Linux är en kraftfull metod för att skräddarsy din fil- och katalogsökning. Här är några exempel på hur du kan göra detta:

      Sök efter filer av en viss typ och storlek:

         find /sökväg/till/mapp -type f -size +1M

      Detta hittar alla vanliga filer (-type f) som är större än 1 megabyte (-size +1M) i den angivna katalogen och dess underkataloger.

      Sök efter filer baserat på ändringsdatum och filnamn:

           find /sökväg/till/mapp -mtime -10 -name "*.txt"

        Här söker du efter .txt-filer (-name "*.txt") som ändrades inom de senaste 10 dagarna (-mtime -10).

        Kombinera sökningar med logiska operatorer:

        • AND (implicit):
          find /sökväg/till/mapp -type f -size +1M -name "*.log"
          Detta söker efter alla vanliga filer (-type f) som är större än 1M och har .log-ändelsen.
        • OR:
          find /sökväg/till/mapp \( -name "*.txt" -o -name "*.log" \)
          Hittar filer som slutar på .txt eller .log.
        • NOT:
          find /sökväg/till/mapp -type f ! -name "*.txt"
          Hittar alla filer som inte slutar på .txt.

        Använda -exec för att utföra kommandon på hittade filer:

             find /sökväg/till/mapp -type f -name "*.tmp" -exec rm {} \;

          Detta söker efter alla .tmp-filer och tar bort dem.

          Kom ihåg att du kan kombinera dessa alternativ och kriterier på olika sätt för att passa dina specifika behov. Användningen av parenteser (\( och \)) är viktig när du kombinerar kriterier med OR, och backslash \ används för att undvika att skalet tolkar parenteser och andra specialtecken felaktigt.

          Hitta en fil med en viss storlek

          För att hitta en fil av en viss storlek med find-kommandot i Linux, använder du -size flaggan. Du kan specificera storleken i olika enheter, som block (b), kilobytes (k), megabytes (M), och gigabytes (G). Här är några exempel:

          Hitta filer exakt av en specifik storlek:

               find /sökväg/till/mapp -type f -size 10M

            Detta hittar alla filer som exakt är 10 megabyte stora.

            Hitta filer som är större än en viss storlek:

                 find /sökväg/till/mapp -type f -size +10M

              Detta hittar filer som är större än 10 megabyte.

              Hitta filer som är mindre än en viss storlek:

                   find /sökväg/till/mapp -type f -size -10M

                Detta hittar filer som är mindre än 10 megabyte.

                Kom ihåg att ange rätt sökväg för mappen där du vill börja sökningen. -type f är valfritt men det hjälper till att begränsa sökningen till endast filer, utesluter mappar och andra typer av innehåll.

                Hittar filer baserat på rättigheter

                För att hitta filer baserade på deras filrättigheter (även kända som filbehörigheter eller filattribut) i Linux, använder du find-kommandot tillsammans med -perm-flaggan. Här är några exempel på hur du kan göra detta:

                1. Hitta filer med exakta rättigheter:
                   find /sökväg/till/mapp -type f -perm 0644

                Detta kommando söker efter alla filer (-type f) som har exakta rättigheter 0644 i den angivna katalogen och dess underkataloger. I det här exemplet, 0644 representerar vanliga läs- och skrivrättigheter för ägaren och enbart läsrättigheter för grupp- och andra användare.

                1. Hitta filer med specifika rättigheter inställda:
                • För att hitta filer där alla angivna rättigheter är inställda, använd -perm -mode:
                  find /sökväg/till/mapp -type f -perm -u+r
                  Detta hittar filer som är läsbara av ägaren (u+r).
                • För att hitta filer där någon av de angivna rättigheterna är inställda, använd -perm /mode:
                  find /sökväg/till/mapp -type f -perm /a+x
                  Detta hittar filer som är exekverbara av någon (ägare, grupp eller andra).
                1. Hitta filer med specifika rättigheter inte inställda:
                  Om du vill hitta filer där vissa rättigheter inte är inställda, kan du använda ! före -perm:
                   find /sökväg/till/mapp -type f ! -perm 0777

                Detta hittar alla filer som inte har fulla rättigheter (dvs. inte rwxrwxrwx för ägare, grupp och andra).

                Kom ihåg att ersätta /sökväg/till/mapp med den faktiska sökvägen där du vill söka och anpassa rättighetsvärdet (0644, u+r, etc.) efter dina behov. Filrättigheter i Linux är ett komplext ämne, så se till att du förstår filrättigheternas notation innan du använder dessa kommandon.

                Kör kommandon på filerna som hitta kommandot hittar

                För att köra kommandon på filerna som find-kommandot hittar, kan du använda -exec-flaggan i ditt find-kommando. Detta gör det möjligt att köra nästan vilket kommando som helst på varje fil som matchar dina find-kriterier. Här är några exempel på hur du kan göra detta:

                Ta bort filer:

                     find /sökväg/till/mapp -type f -name "*.tmp" -exec rm {} \;

                  Detta hittar alla .tmp-filer och tar bort dem.

                  Ändra filrättigheter:

                       find /sökväg/till/mapp -type f -perm 0644 -exec chmod 0664 {} \;

                    Detta ändrar rättigheterna för alla filer med rättigheter 0644 till 0664.

                    Kopiera filer till en annan mapp:

                       find /sökväg/till/mapp -type f -name "*.jpg" -exec cp {} /sökväg/till/annan/mapp \;

                    Detta kopierar alla .jpg-filer till en annan angiven mapp.

                    Skriva ut innehåll i filer:

                        find /sökväg/till/mapp -type f -name "*.txt" -exec cat {} \;

                      Detta skriver ut innehållet i alla .txt-filer.

                      I dessa exempel är {} en platsmarkör för varje fil som hittas av find. Kommandot efter -exec utförs för varje sådan fil. \; i slutet är nödvändigt för att indikera slutet av kommandot som ska köras.

                      Kom ihåg att vara försiktig när du använder -exec, speciellt med kommandon som rm som kan radera filer. Det är alltid en bra idé att först köra find-kommandot utan -exec för att se vilka filer som kommer att påverkas.

                      Manunal sidan för find


                    Hitta filer i linux ifrån terminalen

                    Kommando find linux är ett kraftfull kommando som kan användas till söka efter filer

                    Kommandot find i Linux är ett mycket kraftfullt verktyg för att söka efter filer och mappar i filsystemet. Här är några grundläggande sätt att använda det:

                    1. Sök efter filer med ett specifikt namn:
                       find /sökväg/till/mapp -name filnamn

                    Exempel: find /home/användare -name anteckningar.txt söker efter en fil med namnet anteckningar.txt i användarens hemmapp.

                    1. Sök efter filer baserat på filtyp:
                       find /sökväg/till/mapp -type f

                    Exempel: find /home -type f listar alla filer under /home-katalogen.

                    1. Sök efter mappar:
                       find /sökväg/till/mapp -type d

                    Exempel: find /home -type d listar alla mappar under /home-katalogen.

                    1. Kombinera find med andra kommandon:
                      Du kan använda find med andra kommandon med hjälp av -exec flaggan. Exempel:
                       find /sökväg/till/mapp -type f -exec grep 'sökt_text' {} \;

                    Detta söker efter alla filer som innehåller texten ’sökt_text’.

                    Sök efter filer baserat på filstorlek:

                       find /sökväg/till/mapp -size +storlek

                    Exempel: find / -size +1M söker efter filer som är större än 1 megabyte i hela filsystemet.

                    Sök efter filer baserat på ändringsdatum:

                         find /sökväg/till/mapp -mtime -dagar

                      Exempel: find /home/användare -mtime -10 söker efter filer som ändrades inom de senaste 10 dagarna i användarens hemmapp.

                      Dessa är bara några exempel på hur du kan använda find-kommandot. Det finns många andra alternativ och flaggor som gör find till ett mycket anpassningsbart verktyg för att söka i filsystemet.

                      Hur hittar en file med viss type

                      För att hitta filer av en viss typ med find-kommandot i Linux, använder du -type-flaggan följt av en bokstav som specifierar filtypen. De vanligaste filtyperna som kan sökas är:

                      • f för vanliga filer
                      • d för kataloger (mappar)
                      • l för symboliska länkar

                      Till exempel, för att hitta alla vanliga filer i en specifik katalog och dess underkataloger, kan du använda:

                      find /sökväg/till/mapp -type f

                      Om du istället vill hitta alla kataloger, använd:

                      find /sökväg/till/mapp -type d

                      Och för att hitta alla symboliska länkar:

                      find /sökväg/till/mapp -type l

                      Dessa kommandon listar alla matchningar inom den angivna sökvägen. Du kan också kombinera -type med andra flaggor och kriterier för att ytterligare begränsa din sökning.

                      Att kombinera flera alternativ och kriterier i find-kommandot i Linux är en kraftfull metod för att skräddarsy din fil- och katalogsökning. Här är några exempel på hur du kan göra detta:

                      Sök efter filer av en viss typ och storlek:

                         find /sökväg/till/mapp -type f -size +1M

                      Detta hittar alla vanliga filer (-type f) som är större än 1 megabyte (-size +1M) i den angivna katalogen och dess underkataloger.

                      Sök efter filer baserat på ändringsdatum och filnamn:

                           find /sökväg/till/mapp -mtime -10 -name "*.txt"

                        Här söker du efter .txt-filer (-name "*.txt") som ändrades inom de senaste 10 dagarna (-mtime -10).

                        Kombinera sökningar med logiska operatorer:

                        • AND (implicit):
                          find /sökväg/till/mapp -type f -size +1M -name "*.log"
                          Detta söker efter alla vanliga filer (-type f) som är större än 1M och har .log-ändelsen.
                        • OR:
                          find /sökväg/till/mapp \( -name "*.txt" -o -name "*.log" \)
                          Hittar filer som slutar på .txt eller .log.
                        • NOT:
                          find /sökväg/till/mapp -type f ! -name "*.txt"
                          Hittar alla filer som inte slutar på .txt.

                        Använda -exec för att utföra kommandon på hittade filer:

                             find /sökväg/till/mapp -type f -name "*.tmp" -exec rm {} \;

                          Detta söker efter alla .tmp-filer och tar bort dem.

                          Kom ihåg att du kan kombinera dessa alternativ och kriterier på olika sätt för att passa dina specifika behov. Användningen av parenteser (\( och \)) är viktig när du kombinerar kriterier med OR, och backslash \ används för att undvika att skalet tolkar parenteser och andra specialtecken felaktigt.

                          Hitta en fil med en viss storlek

                          För att hitta en fil av en viss storlek med find-kommandot i Linux, använder du -size flaggan. Du kan specificera storleken i olika enheter, som block (b), kilobytes (k), megabytes (M), och gigabytes (G). Här är några exempel:

                          Hitta filer exakt av en specifik storlek:

                               find /sökväg/till/mapp -type f -size 10M

                            Detta hittar alla filer som exakt är 10 megabyte stora.

                            Hitta filer som är större än en viss storlek:

                                 find /sökväg/till/mapp -type f -size +10M

                              Detta hittar filer som är större än 10 megabyte.

                              Hitta filer som är mindre än en viss storlek:

                                   find /sökväg/till/mapp -type f -size -10M

                                Detta hittar filer som är mindre än 10 megabyte.

                                Kom ihåg att ange rätt sökväg för mappen där du vill börja sökningen. -type f är valfritt men det hjälper till att begränsa sökningen till endast filer, utesluter mappar och andra typer av innehåll.

                                Hittar filer baserat på rättigheter

                                För att hitta filer baserade på deras filrättigheter (även kända som filbehörigheter eller filattribut) i Linux, använder du find-kommandot tillsammans med -perm-flaggan. Här är några exempel på hur du kan göra detta:

                                1. Hitta filer med exakta rättigheter:
                                   find /sökväg/till/mapp -type f -perm 0644

                                Detta kommando söker efter alla filer (-type f) som har exakta rättigheter 0644 i den angivna katalogen och dess underkataloger. I det här exemplet, 0644 representerar vanliga läs- och skrivrättigheter för ägaren och enbart läsrättigheter för grupp- och andra användare.

                                1. Hitta filer med specifika rättigheter inställda:
                                • För att hitta filer där alla angivna rättigheter är inställda, använd -perm -mode:
                                  find /sökväg/till/mapp -type f -perm -u+r
                                  Detta hittar filer som är läsbara av ägaren (u+r).
                                • För att hitta filer där någon av de angivna rättigheterna är inställda, använd -perm /mode:
                                  find /sökväg/till/mapp -type f -perm /a+x
                                  Detta hittar filer som är exekverbara av någon (ägare, grupp eller andra).
                                1. Hitta filer med specifika rättigheter inte inställda:
                                  Om du vill hitta filer där vissa rättigheter inte är inställda, kan du använda ! före -perm:
                                   find /sökväg/till/mapp -type f ! -perm 0777

                                Detta hittar alla filer som inte har fulla rättigheter (dvs. inte rwxrwxrwx för ägare, grupp och andra).

                                Kom ihåg att ersätta /sökväg/till/mapp med den faktiska sökvägen där du vill söka och anpassa rättighetsvärdet (0644, u+r, etc.) efter dina behov. Filrättigheter i Linux är ett komplext ämne, så se till att du förstår filrättigheternas notation innan du använder dessa kommandon.

                                Kör kommandon på filerna som hitta kommandot hittar

                                För att köra kommandon på filerna som find-kommandot hittar, kan du använda -exec-flaggan i ditt find-kommando. Detta gör det möjligt att köra nästan vilket kommando som helst på varje fil som matchar dina find-kriterier. Här är några exempel på hur du kan göra detta:

                                Ta bort filer:

                                     find /sökväg/till/mapp -type f -name "*.tmp" -exec rm {} \;

                                  Detta hittar alla .tmp-filer och tar bort dem.

                                  Ändra filrättigheter:

                                       find /sökväg/till/mapp -type f -perm 0644 -exec chmod 0664 {} \;

                                    Detta ändrar rättigheterna för alla filer med rättigheter 0644 till 0664.

                                    Kopiera filer till en annan mapp:

                                       find /sökväg/till/mapp -type f -name "*.jpg" -exec cp {} /sökväg/till/annan/mapp \;

                                    Detta kopierar alla .jpg-filer till en annan angiven mapp.

                                    Skriva ut innehåll i filer:

                                        find /sökväg/till/mapp -type f -name "*.txt" -exec cat {} \;

                                      Detta skriver ut innehållet i alla .txt-filer.

                                      I dessa exempel är {} en platsmarkör för varje fil som hittas av find. Kommandot efter -exec utförs för varje sådan fil. \; i slutet är nödvändigt för att indikera slutet av kommandot som ska köras.

                                      Kom ihåg att vara försiktig när du använder -exec, speciellt med kommandon som rm som kan radera filer. Det är alltid en bra idé att först köra find-kommandot utan -exec för att se vilka filer som kommer att påverkas.

                                      Manunal sidan för find