Dropboxなどのオンラインサービスと同期するフォルダーがあり、オペレーティングシステムが異なる他のコンピューターと同期します。このフォルダー内のファイル/フォルダー構成の一部は、シンボリックリンク/エイリアスを使用しています(私の自宅のコンピューターはMacです)。フォルダをWindowsコンピュータに同期する場合、残念ながらシンボリックリンクとエイリアスは認識されませんが、ショートカットは認識されます。
クロスプラットフォーム互換のMacまたはWindowsでシンボリックリンク/ショートカットを1回作成する方法はありますか?それ以外の場合は、ファイルごとに2つのリンクを作成する必要があります。1つはMac/Linux用、もう1つはWindows用です。
注:このフォルダーの目的は、誰かが尋ねることを知っているので、フォルダーの階層に多くのファイルを整理して保存することです。時折、ファイルまたはフォルダが2つ以上の場所に収まるように見えるため、シンボリックリンクが表示されます。これはMac/Linuxでは非常に一般的な方法です。
これはばかげていますが、おそらく有用な解決策です:不可知論的なリンクである小さなpythonスクリプトを書くことができます(コードが見つかりました ここ )
#!/usr/bin/python
import subprocess
import sys
if sys.platform == 'darwin':
def openFolder(path):
subprocess.check_call(['open', '--', path])
Elif sys.platform == 'linux2':
def openFolder(path):
subprocess.check_call(['gnome-open', '--', path])
Elif sys.platform == 'win32':
def openFolder(path):
subprocess.check_call(['Explorer', path])
openFolder("relative/path")
もちろん、これは常に新しいウィンドウを開きます。素晴らしい解決策ではありませんが、それだけで十分かもしれません。 (いつの日かウィンドウがLinuxベースになることを祈り続けてください...またはただ死ぬだけです。)
編集:新しい答え
このハウツーオタクの投稿 によると、cmd(Windows Vista-10)のmklink
を使用して、Linuxでも機能するシンボリックリンクを作成できます。このガイドには、リンクを簡単にするツールをインストールする方法もあります(右クリックメニューに追加することにより)。
コマンドライン構文は次のとおりです。
mklink /prefix link_path file/folder_path
プレフィックスは次のとおりです。
/ D –ソフトシンボリックリンクを作成します。これは、Windowsの標準のフォルダーまたはファイルのショートカットに似ています。これはデフォルトのオプションであり、プレフィックスを入力しない場合はmklinkが使用します。
/ H –ファイルへのハードリンクを作成します
/ J –ディレクトリまたはフォルダへのハードリンクを作成します
私が行った例:
mklink /J D:\Dropbox\school\archive\14Winter\cs355 D:\Dropbox\school\classes\cs355
これにより、14Winter
のcs355
と呼ばれるリンクがclasses
のcs355
に作成されます。
Windowsでリンクを作成した後、リンクは私のLinuxボックスでも機能しました。私はMacを試したことがありません。 Macで動作しない場合は、お知らせください。