Avatar billede theill Nybegynder
06. april 2002 - 23:07 Der er 23 kommentarer og
1 løsning

Filen findes ... men bliver ikke listet med 'ls -al'

Jeg har et underligt problem paa Linux (Redhat 7-something) som jeg ikke har set foer.

Jeg har en fil advertise.confirmed.php som jeg ikke kan finde hvis jeg laver en std. 'ls -al'. Hvis jeg bare skriver "vi advertise.confirmed.php" finder den filen og jeg kan aendre i den .. saa filen *er* der. Hvis jeg laver en "ls -al" vises den ikke. Jeg har to filer der starter med 'advertise.' men laver jeg en "ls -al" faar jeg:

bash-2.04$ ls -al advertise.*.php       
total 1816
-rw-r--r--    1 pt      users      11195 Apr  6 15:13 advertise.order.php

Laver jeg derimod en "vi advertise." og her trykker space for at faa den til at vise med de filer jeg har til raadighed skriver den rigtigt nok:

advertise.confirmed.php                      advertise.order.php

Skifter jeg til root giver det ingen forskel .. og laver jeg en "find / -name 'advertise.*.php'" giver den mig kun den ene fil:

/homedisk/pt/cvs/website/website/advertise.order.php

Hvad kan dette skyldes? Jeg maa nok indroemme at jeg ikke lige helt forstaar hvad fan.en der sker her!

Hjaeeeeeeeeeeelp :-)
Avatar billede theill Nybegynder
06. april 2002 - 23:12 #1
Hov, jeg skrev:

Laver jeg derimod en "vi advertise." og her trykker space for at faa ...

Jeg mente:

Laver jeg derimod en "vi advertise." og her trykker TAB for at faa  ...
Avatar billede vladimirr Nybegynder
06. april 2002 - 23:35 #2
prøv en ls -all
Avatar billede vladimirr Nybegynder
06. april 2002 - 23:36 #3
som root evt..
Avatar billede theill Nybegynder
06. april 2002 - 23:37 #4
ls -all som mig selv eller som root har same virkning, dvs viser ikke filen :-(
Avatar billede vladimirr Nybegynder
06. april 2002 - 23:52 #5
prøv at chmodde filen til noget andet end den er nu, evt 777
Avatar billede theill Nybegynder
06. april 2002 - 23:59 #6
Det hjalp desvaerre heller ikke. Det var ellers en god idee. Jeg proevede ogsaa at lave "chown pt:users advertise.confirmed.php" men det hjalp heller ikke. Argh!

Jeg gjorde det hele som root for at vaere sikker.
Avatar billede vladimirr Nybegynder
07. april 2002 - 00:25 #7
sikker på at det ikke er et symlink til filen som så ligger et andet sted?
Avatar billede theill Nybegynder
07. april 2002 - 00:28 #8
Det ville i hvert fald vaere sandsynligt, men bemaerk at jeg kan lave en:

  find / -name 'advertise.*.php'

og kun faa den _ene_ fil:

  /homedisk/pt/cvs/website/website/advertise.order.php

Hvis det var et symbolsk link burde jeg vel faa flere hits, korrekt?
Avatar billede theill Nybegynder
07. april 2002 - 02:16 #9
Lidt mere info -- hvis jeg skriver "ls -al advertise.confirmed.php" faar jeg denne:

  bash-2.04$ ls -al advertise.confirmed.php
  total 1828

Dvs den skriver fil-stoerrelsen .. men lister den ikke. Til sammenligning faar jeg paa den anden fil:

  bash-2.04$ ls -al advertise.order.php
  total 1828
  -rw-r--r--    1 pt      users      11195 Apr  6 15:13 advertise.order.php

Jeg er stadig paf -- kan ikke finde problemet. Laver jeg en rename af filen til 'advertise.confi.php' kan jeg se den -- laver jeg saa en rename til 'advertise.confir.php' er den vaek igen .. det lyder som noget filtering paa filnavne; lyder det sandsynligt? Det er dog ikke noget _jeg_ har sat op!
Avatar billede lojmann Nybegynder
07. april 2002 - 13:17 #10
prøv først at skrive:

locate -u
når den er færdig, så prøv
locate advertise.confirmed.php

finde den mon så filen?

/løjmann
Avatar billede theill Nybegynder
07. april 2002 - 13:23 #11
Ja, den finder filen:

[root@filebasket mail]# cd /
[root@filebasket /]# locate -u
[root@filebasket /]# locate advertise.confirmed.php
/homedisk/pt/cvs/website/website/advertise.confirmed.php
/homedisk/pt/cvs/website/website/.#advertise.confirmed.php
/homedisk/pt/cvs/website/website/#advertise.confirmed.php#

Giver ovestaaende nogen mening -- ikke umiddelbart for mig? En "ls -al" giver efterfoelgende stadig ingen 'advertise.confirmed.php' side.
Avatar billede lojmann Nybegynder
07. april 2002 - 13:32 #12
Hmm...Fa'me skummelt...Fatter ikke en skid af det...Prøv at skrive "ls -al /homedisk/pt/cvs/website/website/"

Hvad sker der så?
Avatar billede theill Nybegynder
07. april 2002 - 13:36 #13
Det bliver den desvaerre heller ikke vist af. Jeg forstaar heller ikke helt hvad problemet skyldes.

Det kan ikke skyldes hashmark (#) rundt om navnet eller lign?
Avatar billede lojmann Nybegynder
07. april 2002 - 13:44 #14
Tror jeg ikke, men prøv at lave det om evt...Men tvivler nu meget...
Avatar billede theill Nybegynder
07. april 2002 - 13:49 #15
Du havde ret -- det var heller ikke det :-(
Avatar billede theill Nybegynder
08. april 2002 - 12:19 #16
Jeg har opgraderet dette spoergsmaal til 90 point .. er der andre der kan komme med nogle tips?

Det er ved at blive _meget_ underligt. Laver jeg rename af filen kan jeg faa den vist .. laver jeg saa gradvis rename tilbage til det 'originale' navn naar jeg til 'advertise.confir.php' hvor den saa bliver 'hidden' igen. Skriver jeg 'advertise.confi.php' er der ingen problemer.
Avatar billede jkrag Nybegynder
08. april 2002 - 18:47 #17
Jeg kan ikke give dig et endeligt svar, men jeg har prøvet at søge lidt.
Midt bedste bud er at det har noget med kommentarer at gøre.
Jeg ved ikke hvilken shell du kører, men jeg har læst lidt på man bash.
Den har en shell option der hedder interactive_comments som vist nok styrer om man må bruge kommentarer i shellen.
Den kan slås til og fra med:
# shopt -s interactive_comments    (eller -u for unset)
Du kan evt. se om den er slået til eller fra med:
# shopt -u  (viser alle dem der er unset)
# shopt -s  (viser alle dem der er set)
Jeg kan ikke sige entydigt om det har nogen indflydelse da jeg forgæves har forsøgt at gensakbe problemet på min maskine. Jeg forestiller mig noget med at den simpelthen ignorer linien når den skal skrive den ud på skærmen ???
Hvis du ikke lige finder ud af det så skriv lige, så skal jeg nok prøve at spørge en af mine (linux-ultra-haj) venner når han kommer forbi i aften.
Alternativt kan du jo prøve at kigge på www.sslug.dk og poste en forespørgsel på en af deres nyhedsgrupper.
Avatar billede jkrag Nybegynder
08. april 2002 - 19:44 #18
Flere idéer: Bruger du emacs? Den laver vist # filer som temp filer.
En mulighed er at filen i virkeligheden ikke er der mere men stadig ligger i locate databasen.
Prøv at reboote, køre en updatedb og derefter en locate.
Du kan evt. rename filerne ved at escape # med
mv \#filnavn
Håber du kommer videre.
Avatar billede theill Nybegynder
08. april 2002 - 19:55 #19
Tak for dine forslag ... jeg troede vi havde fat i noget med 'interactive_comments' -- da den _var_ slaaet til paa mit system; jeg proevede at slaa den fra men den gav desvaerre samme resultat.

Jeg har desvaerre ikke mulighed for at reboote maskinen (saa kan jeg nemlig ikke faa den op igen da der skal startes forskellige processer jeg ikke har styr paa -- ham der normalt goer det er paa ferie). Jeg koerte dog updatedb og locate som gav mig:

[root@filebasket /]# updatedb
[root@filebasket /]# locate advertise.confirmed.php
/homedisk/pt/cvs/website/website/.#advertise.confirmed.php
/homedisk/pt/cvs/website/website/advertise.confirmed.php

Nu er #advertise.confirmed.php# filen der dog ikke mere; jeg ved ikke om det betyder noget?
Avatar billede jkrag Nybegynder
08. april 2002 - 23:26 #20
Er det med vilje at filen hedder noget med # foran?
Hvis den ikke skal det, burde du jo kunne rename den med
# mv .\#advertise.confirmed.php .advertise.confirmed.php
Avatar billede theill Nybegynder
08. april 2002 - 23:30 #21
Nej, den hedder faktisk ikke noget med # foran; jeg konstaterede bare at jeg _ogsaa_ fik vist en fil med # foran og bagved navnet samt en (hidden) fil med # foran.

Det var mere for at finde ud af om dette kan have betydning for listingen? Selve filen skal hedde 'advertise.confirmed.php' .. bemaerk ogsaa det MEGET underlige at hvis jeg laver en RENAME (dvs en mv) fra 'advertise.confirmed.php' til 'advertise.confi.php' KAN jeg se filen. Laver jeg saa en rename til 'advertise.confir.php' er den vaek igen.

Hmm
Avatar billede jkrag Nybegynder
09. april 2002 - 01:17 #22
Med lidt input fra min kammerat:
Jeg tror ikke at filen hedder
"advertise.confirmed.php", men noget andet (Der er usynlige tegn i.)
Derfor giver 'ls -la advertise.confirmed.php' kun filens størrelse da ls finder filen men ikke har lyst til at skrive den ud på skærmen
(Indeholder fil-navnet måske et "slet linien" tegn?)

For det første ville jeg prøve at skrive ' ls -l "advertise.confirmed.php" ', så burde den jo kunne findes.
Hvis den ikke gør, så er det fordi filen hedder noget andet (Med nonvisible tegn)

Du gør sikkert (som alle andre) meget brug af <tab> completion.
Det ger både godt og skidt, når man har et problem som det du beskriver.

mv advertise.<tab> advertise.<tab>^H^H^H.php er ikke løsningen. Det navn han vil flytte til skal skrives igen.
Problemet er jo netop at filen indeholder problem tegn.

En anden ting du kan prøve er:

# ls -la > /tmp/list
# less list

less viser alle tegn, og fortolker dem ikke. Det kan også afsløre fejlen.

Prøv evt. også at søge efter filen ./advertise.confirmed.php (skriv ud manuelt uden tabcomplete) og fortæl hvad du får ud af det. Prøv evt. bare at cat'e den.
# cat ./advertise.confirmed.php
Meld tilbage hvis du bliver klogere.
Avatar billede theill Nybegynder
09. april 2002 - 09:31 #23
Nogle af min Linux venner har ogsaa set paa problemet. De foreslog ogsaa 'hidden' tegn men naar de ser at jeg kan skrive "vi advertise.confirmed.php" (uden brug af tab eller lign) og derefter faa fat i filen -- saa bliver de underlige i hovedet ;-)

Bemaerk at jeg i den ovenstaaende posting ang. rename (fra advertise.confirmed.php til advertise.confi.php) ikke brugte TAB til at fuldende nogen dele af fil-navnet.
Avatar billede theill Nybegynder
05. juni 2002 - 21:49 #24
Jeg takker for alle jeres forslag og lukker spoergsmaalet. Problemet blev loest ved en kernel upgrade.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester