Locate: Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
(Skapade sidan med 'NAME        locate - find files by name SYNOPSIS        locate [OPTION]... PATTERN... DESCRIPTION        locate  reads one or more databases prepared by updatedb(8) and writes file names matching at least one of the        PATTERNs to standard output, one per line.        If --regex is not specified, PATTERNs can contain globbing characters.  If any PATTERN  contains  no  globbing        characters, locate behaves as if the pattern we...')
 
 
(4 mellanliggande sidversioner av 2 användare visas inte)
Rad 1: Rad 1:
NAME
== locate - Hitta filer snabbt med en databas ==
Kommandot `locate` används för att snabbt hitta filer genom att söka i en förbyggd databas.


       locate - find files by name
=== Syntax ===
locate [ALTERNATIV]... MÖNSTER...


SYNOPSIS
=== Beskrivning ===
Kommandot `locate` söker efter filer och kataloger som matchar angivna mönster. Det använder en förbyggd databas över filsystemet, vilket gör sökningarna mycket snabbare jämfört med kommandot `find`.


       locate [OPTION]... PATTERN...
=== Alternativ ===
Kommandot `locate` stöder många alternativ som kan användas för att justera sökningen:


DESCRIPTION
* `-A, --all` - Visa endast de poster som matchar alla angivna mönster.
* `-b, --basename` - Matcha endast basnamnet på filer (ignorerar sökvägen).
* `-c, --count` - Skriv endast ut antalet poster som matchar.
* `-d, --database DBPATH` - Använd den angivna databasen istället för standarddatabasen.
* `-e, --existing` - Visa endast poster för filer som existerar vid söktillfället.
* `-i, --ignore-case` - Ignorera skiftlägeskänslighet vid sökning.
* `-l, --limit N` - Begränsa antalet matchande poster till N.
* `-P, --nofollow, --physical` - Följ inte symboliska länkar.
* `-r, --regexp REGEXP` - Tolka mönster som reguljära uttryck.
* `-S, --statistics` - Visa statistik om databasen.
* `-q, --quiet` - Undertryck felmeddelanden om icke-existerande filer.
* `-0, --null` - Separera utdata med null-tecken istället för ny rad.
* `--help` - Visa hjälpmeddelandet och avsluta.
* `--version` - Visa versionsinformation och avsluta.


       locate  reads one or more databases prepared by updatedb(8) and writes file names matching at least one of the
=== Exempel ===
Här är några praktiska exempel som visar hur du kan använda `locate`-kommandot:


       PATTERNs to standard output, one per line.
* För att hitta alla filer som innehåller ordet "fil" i deras namn:
<code>
locate fil
</code>


       If --regex is not specified, PATTERNs can contain globbing characters.  If any PATTERN  contains  no  globbing
* För att hitta alla filer som matchar ett specifikt mönster, t.ex. alla textfiler:
<code>
locate "*.txt"
</code>


       characters, locate behaves as if the pattern were *PATTERN*.
* För att hitta alla filer med ett specifikt basnamn:
<code>
locate -b "\.bashrc"
</code>


       By  default, locate does not check whether files found in database still exist (but it does require all parent
* För att ignorera skiftlägeskänslighet vid sökning:
<code>
locate -i fil
</code>


       directories to exist if the database was built with --require-visibility no).  locate can never  report  files
* För att visa antalet poster som matchar ett mönster:
<code>
locate -c fil
</code>


       created after the most recent update of the relevant database.
* För att använda en specifik databas:
<code>
locate -d /väg/till/databas fil
</code>


EXIT STATUS
* För att tolka mönstret som ett reguljärt uttryck:
<code>
locate -r "^/usr.*bin/gcc"
</code>


locate  exits with status 0 if any match was found or if locate was invoked with one of the --limit 0, --help,
* För att visa statistik om databasen:
<code>
locate -S
</code>


--statistics or --version options.  If no match was found or a fatal error was encountered, locate exits  with
* För att begränsa antalet resultat till 10:
<code>
locate -l 10 fil
</code>


status 1.
=== Skillnader mellan macOS och Linux ===
Det finns några viktiga skillnader att tänka på när man använder `locate`-kommandot på macOS jämfört med Linux:


Errors  encountered  while reading a database are not fatal, search continues in other specified databases, if any.
* **Standardinstallationer**: På de flesta Linux-distributioner är `locate` en del av GNU findutils eller mlocate, medan macOS använder en version som är en del av BSD locate. Detta innebär att vissa alternativ och beteenden kan skilja sig åt.
* **Databasuppdatering**: På Linux används vanligtvis kommandot `updatedb` för att uppdatera databasen som `locate` använder. På macOS uppdateras databasen automatiskt genom systemets underhållsuppgifter.
* **Databasplats**: Standardplatsen för databasen kan skilja sig. På Linux är det vanligtvis `/var/lib/mlocate/mlocate.db` eller `/var/cache/locate/locatedb`. På macOS är det `/var/db/locate.database`.
* **Prestanda och optimering**: Linux och macOS kan ha olika prestandakarakteristika beroende på hur deras filsystem och sökalgoritmer är implementerade. macOS använder HFS+ eller APFS, medan Linux vanligtvis använder ext4, Btrfs, XFS eller andra filsystem. Detta kan påverka hur snabbt `locate`-kommandot utför sina sökningar.
* **Flaggor och funktioner**: Vissa GNU-specifika flaggor och funktioner kan saknas i BSD-versionen av `locate` som används på macOS. Till exempel kan vissa avancerade sökalternativ som `-A` (matcha alla mönster) vara specifika för GNU locate.


OPTIONS
Här är några exempel som visar skillnaderna:


-A, --all
* På Linux kan du använda `updatedb` för att uppdatera databasen:
<code>
sudo updatedb
</code>
På macOS sker detta automatiskt eller kan göras manuellt med:
<code>
sudo /usr/libexec/locate.updatedb
</code>


Print only entries that match all PATTERNs instead of requiring only one of them to match.
* Användning av `-d` alternativet på Linux och macOS kan skilja sig:
<code>
locate -d /path/to/locate.db fil
</code>
På macOS måste du vara säker på att du har rätt databas och att den är uppdaterad.


-b, --basename
* För att söka utan att följa symboliska länkar på Linux:
<code>
locate -P fil
</code>
Detta kan skilja sig på macOS beroende på versionen av locate.


Match only the base name against the specified patterns.  This is the opposite of --wholename.
Det är alltid bra att konsultera `man`-sidan för `locate` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga.


-c, --count
=== Felsökning ===
Om du får ett felmeddelande när du använder `locate`, kontrollera följande:


Instead of writing file names on standard output, write the number of matching entries only.
* Att databasen är uppdaterad. Om databasen är föråldrad kan den sakna nyligen tillagda filer.
* Att du har rättigheter att läsa databasen.
* Att syntaxen för ditt uttryck är korrekt. Kontrollera att du använder korrekta alternativ och parametrar.


-d, --database DBPATH
=== Se även ===
* [[find]] - Sök efter filer och kataloger i realtid.
* [[updatedb]] - Uppdatera databasen som används av locate.
* [[grep]] - Sök efter mönster i filer.
* [[xargs]] - Bygg och kör kommandon från standardinmatning.


Replace the default database with DBPATH.  DBPATH is a :-separated list of  database  file  names.   If more  than  one  --database  option is specified, the resulting path is a concatenation of the separate  paths.
=== Källor ===
* [https://man7.org/linux/man-pages/man1/locate.1.html locate(1) man-sida]
* [https://ss64.com/osx/locate.html macOS locate manual]


An empty database file name is replaced by the default database.  A database file name - refers to  the  standard input.  Note that a database can be read from the standard input only once.
= Sidslut =
<hr>
Det här är en maskinöversättning av linux kommando manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
<BR><BR>Tack till [https://datorhjalp.se Datorhjälp] som har  sponsrat Linux.se med webserver.


-e, --existing
[[Kategori:Linuxkommandon]]
 
Print only entries that refer to files existing at the time locate is run.
 
-L, --follow
 
When  checking  whether  files  exist (if the --existing option is specified), follow trailing symbolic links.  This causes broken symbolic links to be omitted from the output. This is the default behavior.  The opposite can be specified using --nofollow.
 
-h, --help
 
 Write a summary of the available options to standard output and exit successfully.
 
-i, --ignore-case
 
 Ignore case distinctions when matching patterns.
 
-p, --ignore-spaces
 
Ignore punctuation and spaces when matching patterns.
 
-t, --transliterate
 
Ignore accents using iconv transliteration when matching patterns.
 
-l, --limit, -n LIMIT
 
Exit successfully after finding LIMIT entries.  If the --count option is specified, the resulting count is also limited to LIMIT.
 
-m, --mmap
 
Ignored, for compatibility with BSD and GNU locate.
 
-P, --nofollow, -H
 
When  checking whether files exist (if the --existing option is specified), do not follow trailing symbolic links.  This causes broken symbolic links to be reported like other files.     
 
This is the opposite of --follow.

Nuvarande version från 25 augusti 2024 kl. 14.40

locate - Hitta filer snabbt med en databas

Kommandot `locate` används för att snabbt hitta filer genom att söka i en förbyggd databas.

Syntax

locate [ALTERNATIV]... MÖNSTER...

Beskrivning

Kommandot `locate` söker efter filer och kataloger som matchar angivna mönster. Det använder en förbyggd databas över filsystemet, vilket gör sökningarna mycket snabbare jämfört med kommandot `find`.

Alternativ

Kommandot `locate` stöder många alternativ som kan användas för att justera sökningen:

  • `-A, --all` - Visa endast de poster som matchar alla angivna mönster.
  • `-b, --basename` - Matcha endast basnamnet på filer (ignorerar sökvägen).
  • `-c, --count` - Skriv endast ut antalet poster som matchar.
  • `-d, --database DBPATH` - Använd den angivna databasen istället för standarddatabasen.
  • `-e, --existing` - Visa endast poster för filer som existerar vid söktillfället.
  • `-i, --ignore-case` - Ignorera skiftlägeskänslighet vid sökning.
  • `-l, --limit N` - Begränsa antalet matchande poster till N.
  • `-P, --nofollow, --physical` - Följ inte symboliska länkar.
  • `-r, --regexp REGEXP` - Tolka mönster som reguljära uttryck.
  • `-S, --statistics` - Visa statistik om databasen.
  • `-q, --quiet` - Undertryck felmeddelanden om icke-existerande filer.
  • `-0, --null` - Separera utdata med null-tecken istället för ny rad.
  • `--help` - Visa hjälpmeddelandet och avsluta.
  • `--version` - Visa versionsinformation och avsluta.

Exempel

Här är några praktiska exempel som visar hur du kan använda `locate`-kommandot:

  • För att hitta alla filer som innehåller ordet "fil" i deras namn:

locate fil

  • För att hitta alla filer som matchar ett specifikt mönster, t.ex. alla textfiler:

locate "*.txt"

  • För att hitta alla filer med ett specifikt basnamn:

locate -b "\.bashrc"

  • För att ignorera skiftlägeskänslighet vid sökning:

locate -i fil

  • För att visa antalet poster som matchar ett mönster:

locate -c fil

  • För att använda en specifik databas:

locate -d /väg/till/databas fil

  • För att tolka mönstret som ett reguljärt uttryck:

locate -r "^/usr.*bin/gcc"

  • För att visa statistik om databasen:

locate -S

  • För att begränsa antalet resultat till 10:

locate -l 10 fil

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `locate`-kommandot på macOS jämfört med Linux:

  • **Standardinstallationer**: På de flesta Linux-distributioner är `locate` en del av GNU findutils eller mlocate, medan macOS använder en version som är en del av BSD locate. Detta innebär att vissa alternativ och beteenden kan skilja sig åt.
  • **Databasuppdatering**: På Linux används vanligtvis kommandot `updatedb` för att uppdatera databasen som `locate` använder. På macOS uppdateras databasen automatiskt genom systemets underhållsuppgifter.
  • **Databasplats**: Standardplatsen för databasen kan skilja sig. På Linux är det vanligtvis `/var/lib/mlocate/mlocate.db` eller `/var/cache/locate/locatedb`. På macOS är det `/var/db/locate.database`.
  • **Prestanda och optimering**: Linux och macOS kan ha olika prestandakarakteristika beroende på hur deras filsystem och sökalgoritmer är implementerade. macOS använder HFS+ eller APFS, medan Linux vanligtvis använder ext4, Btrfs, XFS eller andra filsystem. Detta kan påverka hur snabbt `locate`-kommandot utför sina sökningar.
  • **Flaggor och funktioner**: Vissa GNU-specifika flaggor och funktioner kan saknas i BSD-versionen av `locate` som används på macOS. Till exempel kan vissa avancerade sökalternativ som `-A` (matcha alla mönster) vara specifika för GNU locate.

Här är några exempel som visar skillnaderna:

  • På Linux kan du använda `updatedb` för att uppdatera databasen:

sudo updatedb

På macOS sker detta automatiskt eller kan göras manuellt med:

sudo /usr/libexec/locate.updatedb

  • Användning av `-d` alternativet på Linux och macOS kan skilja sig:

locate -d /path/to/locate.db fil

På macOS måste du vara säker på att du har rätt databas och att den är uppdaterad.
  • För att söka utan att följa symboliska länkar på Linux:

locate -P fil

Detta kan skilja sig på macOS beroende på versionen av locate.

Det är alltid bra att konsultera `man`-sidan för `locate` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga.

Felsökning

Om du får ett felmeddelande när du använder `locate`, kontrollera följande:

  • Att databasen är uppdaterad. Om databasen är föråldrad kan den sakna nyligen tillagda filer.
  • Att du har rättigheter att läsa databasen.
  • Att syntaxen för ditt uttryck är korrekt. Kontrollera att du använder korrekta alternativ och parametrar.

Se även

  • find - Sök efter filer och kataloger i realtid.
  • updatedb - Uppdatera databasen som används av locate.
  • grep - Sök efter mönster i filer.
  • xargs - Bygg och kör kommandon från standardinmatning.

Källor

Sidslut


Det här är en maskinöversättning av linux kommando manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp som har sponsrat Linux.se med webserver.