• Opret dig
  • Glemt adgangskode

User account menu

  • Artikler
  • Forside
  • Forum
  • Nyheder
  • Log ind
Hjem
LinuxIN.dk

Snak med

Opret dig!

Af marlar | 02.08.2011 21:20

spøjst problem med kommandoen sort

Software
Jeg har lige opdaget en spøjs ting med sort.

Hvis jeg sorterer disse linjer:

+ghi
+abc
def


Bliver outputtet

+abc
def
+ghi


Hvordan får man sort til at sortere på plusserne også? Jeg ville gerne have en ren sortering på alle tegn, altså:


+abc
+ghi
def

  • Log ind eller opret dig for at tilføje kommentarer

Kommentarer5

# 1

13 år 11 måneder siden

Permalink

Indsendt af dudsen den 3. august 2011 kl. 08:18

Permalink

bekreftet

Bekreftet under ubuntu 10.10 og 11.04 RHEL 5.6
mens klassisk sort ikke har den adfærd.

$ sort test3
+abc
+ghi
def

Manualen siger ikke noget om at linux sort er anderledes en possix sort, så ja det er i den grad underligt. Hvis du vil have en løsning så er der altid perl's sort
  • Log ind eller opret dig for at tilføje kommentarer

# 2

13 år 11 måneder siden

Permalink

Indsendt af lbm den 3. august 2011 kl. 08:21

Permalink

Umiddelbart ignorere den,

Umiddelbart ignorere den, den matematiske operator ? Kan det være derfor, og ikke fordi den opfatter det som tekststreng ?
  • Log ind eller opret dig for at tilføje kommentarer

# 3

13 år 11 måneder siden

Permalink

Indsendt af dudsen den 3. august 2011 kl. 09:34

Permalink

#2

kunne værre en forklaring, men det burde den ikke
med directory mode under unix får du samme resultat som under linux. men her skal den netop iognorere +

$ sort -d test3
+abc
def
+ghi


perl sortere også "korrekt"

udsen@udsen2:~$ cat test4 | perl -we 'print sort '
+abc
+ghi
def

  • Log ind eller opret dig for at tilføje kommentarer

# 4

13 år 11 måneder siden

Permalink

Indsendt af froksen den 3. august 2011 kl. 10:02

Permalink

Fandt følgende side:

Fandt følgende side: http://stackoverflow.com/questions/6297906/linux-sort-only-by-the-first…

Hvor der var understående løsning, som hvertfald umiddelbart løser problemet. Har prøvet sådan rigtigt at forstå hvad det egentligt er -k kommandoen gør, men har ikke rigtigt kunnet fange de direkte, andet end at den bestemmer hvilket bogstav/position den skal sortere efter.

sort -k1.1,1.1 tekstfil

Fra "sort --help" om -k

-k, --key=POS1[,POS2] start a key at POS1 (origin 1), end it at POS2
(default end of line). See POS syntax below
POS is F[.C][OPTS], where F is the field number and C the character position
in the field; both are origin 1. If neither -t nor -b is in effect, characters
in a field are counted from the beginning of the preceding whitespace. OPTS is
one or more single-letter ordering options, which override global ordering
options for that key. If no key is given, use the entire line as the key.

  • Log ind eller opret dig for at tilføje kommentarer

# 5

13 år 11 måneder siden

Permalink

Indsendt af dudsen den 3. august 2011 kl. 10:42

Permalink

hmm flere underligheder.

for lige at teste igen på et unix system
$
sort -d test3
+abc
def
+ghi
$ sort -dk1.1,1.1 test3
+abc
+ghi
def


det ser ud til at fortælle den kun at kigge på 1 tegn, tvinger den til at sortere på + istedet for at kigge på de alphanumeriske tegn.
  • Log ind eller opret dig for at tilføje kommentarer

Svar søges

llumos Unix-operativsystem, 0
Den er go 0
14. februar = I Love Free Software Day 0
Lokal fil-deling - for de dovne. 0
Linux fra begynder til professionel af O'Reilly 0

Seneste aktivitet

Gode anmeldelser Zorin OS 17.3 1
"Intet realistisk alternativ" - mig i r*ven 15
Nulstilling af adgangskode 3
Ingen Mint 5
Linux App Store Flathub når 3 milliarder downloads 2
Digitaliseringsministeriet sætter gang i pilotprojekt om digital suverænitet 3
Mest sikker webbrowser 5
Firefox 2
Privatbeskeder 7
Backup/synkronisering? 3
BigLinux 5
Chatgpt satire 1
Læsning af databasefil i Firefox 2
Vanilla OS 15
Pepsi Challenge 4
Linuxin er nu migreret til Drupal 11 13
Et Dansk alternativ til Facebook 18
Ekstern Blu-ray-brænder, der fungerer med PCLinuxOS 3
Københavns og Aarhus Kommune dropper MS 9
Open Source-eksperimentet 1

© 2025 Linuxin og de respektive skribenter

Oprettet og drevet af nørder siden 2004 !