pslaboが試したことの記録

はてなダイヤリーからはてなブログに引っ越してきました

この日記は現在実行中の減量記録を含む個人的なメモとして始めましたが、最近はコンピュータやガジェット、ハック、セキュリティネタのほうがメインになっております。

はてなダイヤリー時代はカテゴリ分けが適当だったのですが、これはそのうち直します。


sambaサーバ上のUNIXのパスをUNCに変換して表示する

以前に「sambaのUNCのパスでcdする」処理を書いたのですが、今回はこれの逆パターンで「sambaサーバ上のUNIXのパスをUNCに変換して表示する」という処理を書いてみました。
pslabo.hatenablog.com


手抜きの実装なので、あんまりキレイに書いてません。。。

pwd コマンドをオーバーライドする形でシェルの関数にしていますので、これを .bash_profile あたりに記述して頂ければOKです。

現在のパスが samba の共有パスの場合だけ、通常の pwd コマンドの出力に併記する形でUNCを出力します。
本当は smb.conf あたりを参照して処理すれば汎用的に使えるのでしょうけれど、そこまでのモチベーションが無いので。。。別記事にて、smb.conf を参照する試験実装の話をネタにしてみました。

pslabo.hatenablog.com

mypwd ()
{
        \pwd

        readlink -f $( \pwd ) | awk '

        {
                $1 = gensub( /\/home\/samba\//, "\\\\\\\\[sambaのサーバ名]\\\\", ""  )
                $1 = gensub( /\//, "\\", "g" )
                print $1
        }' | grep "[sambaのサーバ名]"
}

alias pwd=mypwd