MkLinkを使用してNTFSでポータブルリンクを作成する方法はありますか?またはそれはより良い解決策がありますか?
Zipファイルまたはフォルダコピーにアプリケーションを配布できるようになりたい場合は、次のように表示されます。
C:\Temp\link test\source>dir
Volume in drive C is OS
Directory of C:\Temp\link test\source
19/05/2014 11:35 <DIR> .
19/05/2014 11:35 <DIR> ..
19/05/2014 11:35 <SYMLINK> OldService.exe [NewService.exe]
19/05/2014 11:32 9 NewService.exe
_
それをコピーした場合、それはうまくいきません。
元のファイルの2つのコピーを手に入れるだけです。 configがsyncから抜けないように、設定ファイルもリンクされている必要があります(.exe.config)。
ポータブルリンクを作る方法はありますか?
シンボリックリンクは、NTFSファイルシステム構造の機能です。 ZIPファイルは私が知っている限りこの機能を持っていません。したがって、これをzipファイルに配布する必要がある場合は機能しません。
ただし、リンクを作成するコンテンツを解凍した後に実行したバッチファイルを作成できますが、BatchFileを管理者として実行する必要があることに注意する必要があります。
7 ZIPツールを使用して、シンボリックリンクまたはハードリンクをアーカイブすることができますが、tarファイルを使用しているだけです。
# symlink
7z a -snl c.tar a.txt b.txt
# hard link
7z a -snh c.tar a.txt b.txt
# extract
7z x c.tar
_
https://7-zip.org/download.html
BSDTARツールを使用して、SymlinksとHard Linksをtarファイルまたはzipファイルでシンボリックリンクをアーカイブできます。
# tar
bsdtar -c -f c.tar a.txt b.txt
bsdtar -x -f c.tar
# Zip
bsdtar -a -c -f c.Zip a.txt b.txt
bsdtar -x -f c.Zip
_
https://github.com/libarchive/libarchive/ctionions/runs/54958649
しかし、ZIPファイルを作成した場合、それらは同じツールで抽出する必要があります。 Windowsエクスプローラで抽出すると、リンクが破損します。