The UNIX and Linux Forums  
Hej och välkommen från USA till UNIX och Linux Forum! Tack för ditt besök och gå med i vår globala gemenskapen.

Go Back   UNIX och Linux Forum > Upp Forum > Shell-programmering och Skript
.
google unix.com



Shell-programmering och Skript Post frågor om ksh, CSH, SH, bash, PERL, PHP, sed, awk och andra skalskript och skal skriptspråk här.

Mer UNIX och Linux Forum Ämnen Du kan hitta Helpful
Tråd Thread Starter Forum Svar Senaste Inlägg
Notering filer med fullständig sökväg r_sethu UNIX for Dummies Frågor & Svar 5 06-15-2009 02:56
Lista filer med fullständig sökväg mr_bold Shell-programmering och Skript 3 10-07-2008 12:19
att hitta filen med fullständig sökväg surjyap Shell-programmering och Skript 5 01-18-2008 03:26
Hitta relativa sökvägen till en fil chiru_h Shell-programmering och Skript 4 04-16-2007 08:20
VI - som ersätter en relativ sökväg med absolut sökväg till en fil Yinzer955i UNIX for Dummies Frågor & Svar 2 09-07-2006 11:47

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Sök i denna tråd Rate Thread Visningslägen
  #1 (permalänk)  
Old 03-14-2007
POLYP polypus is offline
Registered User
  
 

Join Date: mars 2007
Inlägg: 2
få fullständig sökväg från relativ sökväg

ges en relativ sökväg, hur gör jag konvertera den till en fullspäckad. dvs om jag är i

/ home / POLYP

och jag får foo / bar sedan att få en fullständig sökväg Jag kan bara concatinate det med pwd, men tänk om jag får ".. / Mama"

hur gör jag programmässigt konvertera:

/ home / POLYP och .. / mama in / home / mama

på ett sätt som alltid fungerar oavsett vilken relativ sökväg är slut?

Min första tanke är att bara cd till katalogen och sätta en variabel

cd $ rev_path
fullständig_sökväg \u003d `pwd`
cd $ original_dir

Det verkar det måste finnas ett Unix-kommando som betyder mer elegant?

tack
  #2 (permalänk)  
Old 03-15-2007
jim McNamara jim mcnamara is online now Forum Staff  
...@...
  
 

Join Date: februari 2004
Ort: NM
Inlägg: 5.749
Detta är anledningen relativa sökvägar har problem ibland. Det är inte ett bra sätt att hantera absolut något relativ sökväg, eftersom alla relativa sökvägar har ett antagande:

nuvarande arbetskatalog är "x".

Ni tar på er / home / POLYP. Unix-verktyg är utformade för att göra en sak mycket bra. Det är svårt att göra en skottsäker verktyg grund av CWD antagande.

Eftersom:
Naturligtvis inte kan vara sant.

Så finns det ingen riktigt elegant sätt att hantera det. Du är på ett sätt att hantera det.
För programmering, bör du överväga att undvika relativa sökvägar om du inte vill att koden för att arbeta om och endast om den körs från en viss katalog.
  #3 (permalänk)  
Old 03-15-2007
Perderabo's Avatar
Perderabo Perderabo is offline Forum Staff  
Unix Daemon
  
 

Join Date: Aug 2001
Ort: Ashburn, Virginia
Inlägg: 9.115
Antag att jag inte har plats i / usr till / usr / local, men jag har ett visst utrymme i / export. Så jag gör en katalog som heter / export / usr.local och har en underkatalog kallad bin. Och jag gör en "ln-s / export / usr.local / usr / local". Nu gör jag en "cd / usr / local" så jag gör en "cd bin". På denna punkt anser jag är att jag i / usr / local / bin och ett skal med en inbyggd pwd Kommandot kan återvända under vägen. Men / usr / bin / pwd återkommer / export / usr.local / bin. Med mer symboliska länkar i en väg, kan det bli fler alias så här. Det värde som returneras av / usr / bin / pwd är den fysiska vägen. Med bra behörigheter för varje katalog som leder till den aktuella katalogen / usr / bin / pwd kan returnera den fysiska vägen. En inbyggd pwd i samma skal som navigerat till den aktuella katalogen kan ha möjlighet att återlämna särskilda logiska vägen för att komma fram till den aktuella katalogen. Hitta alla logiska vägar till en speciell katalog skulle vara ganska besvärliga.

Skriva ett program som / usr / bin / pwd är inte lätt i UNIX. Du kan Stat det. katalog för att få inode den aktuella katalogen. Sedan kan du öppna .. och stat varje fil i underkatalogen tills du hittar samma inode. Du går upp i kedjan en .. vid en tidpunkt upprepa processen tills. och .. desamma inode vilket innebär att du har nått /. (Egentligen är det svårare än så, eftersom du kan gå igenom en monteringspunkt.) Detta är anledningen till att sätta NFS monterade filsystem i / är mycket oklokt ... varje / usr / bin / pwd måste kontakta NFS server för att utföra stat.
  #4 (permalänk)  
Old 03-17-2007
vgersh99's Avatar
vgersh99 vgersh99 is online now Forum Staff  
Moderator
  
 

Join Date: februari 2005
Ort: Boston, MA
Inlägg: 5.121
ingen "silver bullet", men .....
Kod:
#!/bin/ksh

thisFILE=$(whence ${0})
echo "here is my absolute pathname: [${thisFILE}]"
  #5 (permalänk)  
Old 03-25-2007
POLYP polypus is offline
Registered User
  
 

Join Date: mars 2007
Inlägg: 2
tack

Tack killar för förklaringar och hjälp
Closed Thread

Komihåglista

Thread Tools Sök i denna tråd
Sök i denna tråd:

Avancerad sökning
Visningslägen Betygsätt denna tråd
Betygsätt denna tråd:

Utstationering Regler
Du får inte efter nya trådar
Du får inte efter svar
Du får inte skicka bilagor
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG] kod
HTML-koden är Av
Trackback är
Pingbacks är
Refbacks är




Alla tider är GMT -4. Klockan är nu 07:44.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Översättningar Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
UNIX och Linux Forum Innehållet upphovsrättsskyddat © 1993-2009. All Rights Reserved.Ad förvaltning RedTyger

Content Relevant webbadresser från vBSEO 3.2.0