At 18:31 97/03/05 +0700, you wrote:
>Gini nih, misalkan saya punya nama file...
>
>            ../../folder/arsip/gue.txt
>
>nah, gimana caranya, dengan script bash (atau dengan program utilitas
>standar), menterjemahkan nama file itu menjadi nama file absolut...
>
>                /usr/adib/folder/arsip/gue.txt

misalkan string "../../bla/bla" tersebut ada di suatu file atau stdin, satu
baris satu path:

../../foo
../../bar
../../baz

dan kita ada di /usr/local/archives/RedHat
maka program perl ini:

    use Cwd;
    while(<>)
        {
        $z=cwd();
        ~/((\.\.\/)*)(.*)/; $x=$1; $y=$3;
        $x=~s/\.\./\[^\\\/\]\*\\/g;chop($x);
        $z=~s/$x\/?$//;
        print $z,$y,"\n";
        }

akan mengubah input menjadi:

/usr/local/foo
/usr/local/bar
/usr/local/baz

>sekaligus men-dereferensi-kan semua symbolic link yang mungkin ada
>(hasil akhir berupa nama file "beneran" yang bukan lagi symbolic link).

waduh ini agak rumit. nyerah deh.

tapi ada satu hal yg saya mau nanya. bukannya mau mengalihkan topik, tapi
siapa tau bisa membantu: "masalah sebenarnya apa, sih?"

kadang2 dalam memecahkan suatu masalah dengan unix, misalnya problem P, kita
melihat dari suatu sudut dan berpikir bahwa solusinya:
        "kerjakan A lalu B lalu C".
kita tahu bagaimana kerjakan A dan B, tapi tidak tahu C dan nanya:
        "bagaimana cara kerjakan C?".
jawaban sih pasti ada. hanya saja sering kali kalau yg ditanyakan:
        "bagaimana pecahkan problem P?"
maka ada jawaban yg sama sekali lain: "kerjakan X lalu Y"
atau bahkan "kerjakan Z" (biasanya selalu banyak jalan menuju ke bulu roma).

saya kok ada perasaan untuk kasus yg anda tanyakan sebetulnya ada persoalan
yg lebih luas. mungkin saja bisa dipecahkan tanpa harus translasi string
tersebut kalo dilihat dari sudut yg berbeda.

    <@     PJ "Asa" Wirapati
    / \    Bioinformatics Unit, EIMB  
   /| |\   Powered by Linux 
    ( )_   Since 1994
    "^"                      

-
STOP-LANGGANAN: 'unsubscribe' ke: [EMAIL PROTECTED]
START-LANGGANAN:  'subscribe' ke: [EMAIL PROTECTED]

Kirim email ke