数と一緒に -About.exrc

数と一緒に -About.exrc

同じグループに2人のユーザーがいる場合

myuser:grp1
anotheruser:grp1

私の個人的な.exrcファイルには、2つのユーザーログインで同じ方法で作業する必要があるいくつかのファンクションキー割り当てがあります。私は.exrcに664権限を設定し、同じ方法で他のユーザーの.exrcをコピーして設定しました。私のtmpフォルダには777権限があり、同じグループにあります。

.exrcのF10/11/12キー固有コマンド

map ^AI :1,$w! $HOME/tmp/tmp.tmp^M 
map ^AJ :'k,.w! $HOME/tmp/tmp.tmp^M
map ^AK :r $HOME/tmp/tmp.tmp^Mk    

質問:

su - anotheruser

別のユーザー.exrcをインポートしますが、ローカルtmpフォルダを使用する

su anotheruser

Fキーがまったく異なる操作を実行し、次のエラーを返すため、.exrcが使用されていないようです。

例: 0602-054 # 文字を置き換える代替ファイル名がありません。

他のユーザーの.exrcが私のtmpフォルダを明示的に指すようにし、suを使うことができます。しかし、私の.profileファイルと.kshrcファイルには他のOS固有の設定がないため、他のユーザーに提供する準備ができていません。

答え1

私はこれがシンボリックリンクの良いユースケースだと思います。 (これはrootアクセス権があると仮定します。)

.exrc世界中で読める場所にファイルを保存してください。おそらく、実際にはそれが適切だと/usr/local/share/思いますが。/usr/etc/

sudo mv -i ~/.exrc /usr/etc/

chownrootに切り替えて、権限を644に設定します。

cd /usr/etc/
sudo chown root:root .exrc
sudo chmod 644 .exrc

次のようにホームディレクトリにシンボリックリンクを作成します。

ln -s /usr/etc/.exrc ~/.exrc

他のユーザーのホームディレクトリでも同様です。

ln -s /usr/etc/.exrc ~anotheruser/.exrc

マニュアルページに示すように、まだsu - anotheruserorを使用する必要があります。su -l anotheruser

   -, -l, --login
          make  the  shell  a  login  shell, clears all envvars except for
          TERM, initializes HOME, SHELL, USER, LOGNAME and PATH

.exrc環境変数に基づいてロードされるため、これを機能$HOMEさせるには適切に設定する必要があります。

関連情報