コンピューターに2つのユーザーログインを設定しました。1つは自宅用、もう1つは仕事用です。2人のユーザー間でbashとvimの設定を共有できるようにしたいと思います。とにかくこれを行うにはありますか?これまでは、あるアカウントから別のアカウントにファイルをコピーしてきましたが、1つの場所でのみ変更を加えることができるように、2つのファイルの間に1つのファイルのみを配置できるようにしたいと考えています。これは可能ですか?ありがとう。
コンピューターに2つのユーザーログインを設定しました。1つは自宅用、もう1つは仕事用です。2人のユーザー間でbashとvimの設定を共有できるようにしたいと思います。とにかくこれを行うにはありますか?これまでは、あるアカウントから別のアカウントにファイルをコピーしてきましたが、1つの場所でのみ変更を加えることができるように、2つのファイルの間に1つのファイルのみを配置できるようにしたいと考えています。これは可能ですか?ありがとう。
回答:
このln
ツールを使用して、シンボリックリンクを作成できます。
ln -s /Users/user1/.bashrc /Users/user2/.bashrc
この例では、のディレクトリuser2
にある既存のファイルを指す新しいリンクを作成していますuser1
。sudo ln ...
権限が正しく設定されていない場合は、使用する必要がある場合があります。
-s
には、ln
コマンドのオプションを省略します
これを達成する方法はたくさんありますが、私が見た一般的なイディオムは、各ユーザーのホームフォルダーの外に単一のファイルをインストールし、共通ファイルに〜/ .bashrcファイルの両方のソースを含めることです。
これにより、明確になり、後日ユーザーレベルの変更を行う可能性がありますが、一方または両方のユーザーが後日削除されても存続する1つのファイルのみが維持されます。
ファイルをハードリンクするよりも少し手間がかかります。ソフトリンクをこの種のものに使用した私の経験では、一部のツールはソフトリンク(またはsym)リンクを処理できず、期待どおりに処理できないためです。
コードコントロールを使用してファイルをデプロイするよりもはるかに簡単ですが、gitやmercurial、または別のバージョンコントロールシステムをセットアップする場合は、変更を管理する優れた方法でもあります。
/ etc / bashrcにあるシステム全体の.bashrcを編集できます。
ただし、Gitに少し慣れている場合は、「ドットファイル」のリポジトリを作成することを検討してください。これには、無料のGithubリポジトリを使用できます。このような方法でドットファイルを追跡することには、多くの利点があります。
他の人が指摘したように、これはシンボリックリンクで実行できますが、両方のユーザーがファイルにアクセスして編集できるように、アクセス許可を適切に変更することも重要です。
既存の.bashrc
を削除しますuser2
:
rm /Users/user2/.bashrc
シンボリックリンクuser1
の.bashrc
へuser2
のユーザディレクトリ:
ln -s /Users/user1/.bashrc /Users/user2/.bashrc
両方のユーザーがファイルを変更できるように権限を変更します。
chmod +a "user2 allow read,write,execute" /Users/user2/.bashrc
一方を他方へのシンボリックリンクにします。
terminal.appでuser2を使用
cd $HOME; ln -s ../user1/.bashrc