2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

リモートサーバ上の複数ファイルをローカルのVSCodeで一気に開くシェルスクリプト

Posted at

環境

リモートサーバ: Ubuntu 16.04.3 LTS
ローカル: macOS High Sierra

VSCodeでリモートサーバのファイルを編集する

このブログ記事を参考に、VSCodeでリモートサーバのファイルを編集する環境を整えました。

rmate -p 52698 [編集したいファイル名]

このコマンドをサーバ上で叩くとローカルのVSCodeでファイルが開かれ、編集できるようになります。

問題点

以下のように複数ファイルを一気に開こうとするとうまくいきません(詳しく調べていませんが、先頭の1ファイルのみ開かれるようです)。

rmate -p 52698 hoge1.py hoge2.py
rmate -p 52698 ~/hoge/*.c

解決策

ローカルでは、ターミナル上で

code hoge1.py hoge2.py
code ~/hoge/*.c

といったコマンドを叩くと複数ファイルを一気に開いてくれるので、リモートでも同じ挙動にするために以下のシェルスクリプトを書きました。

code.sh
#!/bin/bash
argv=("$@")
for i in `seq 1 $#`
do
    rmate -p 52698 ${argv[$i-1]}
done

実行時の引数(ファイル名)をリストとして受け取り、for文で一つ一つのファイルを開いています。このシェルスクリプトに

chmod +x code.sh

で実行権限を与えてパスの通った場所に置けば、

code.sh hoge1.py hoge2.py
code.sh ~/hoge/*.c

といったコマンドで複数ファイルを一気に開けるようになります。ついでに.zshrcに

alias code='code.sh'

と書き足しておけば、ローカルと完全に同じコマンドが叩けるようになります。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?