回答編集履歴
1
コメントを受けての追記
answer
CHANGED
@@ -3,4 +3,21 @@
|
|
3
3
|
if [ "$TMUX" ]
|
4
4
|
then cd 目的ディレクトリ
|
5
5
|
fi
|
6
|
-
```
|
6
|
+
```
|
7
|
+
#追記
|
8
|
+
> 希望は最初にtmuxを開いたときに実行して、ペインを分割したときには実行しないことです。
|
9
|
+
|
10
|
+
Linux前提で、こんな感じで。
|
11
|
+
```Bash
|
12
|
+
ppid=$(ps p $$ o ppid h)
|
13
|
+
if [ "$(ps p $ppid o cmd h)" = tmux ] &&
|
14
|
+
[ $(ps -C bash o ppid h | grep -w $ppid | wc -l) = 1 ]
|
15
|
+
then cd 目的ディレクトリ
|
16
|
+
fi
|
17
|
+
```
|
18
|
+
1行目:今の`bash`の親プロセスIDを求める
|
19
|
+
2行目:その親プロセス名が`tmux`であり、かつ、
|
20
|
+
3行目:プロセス名が`bash`であるプロセスについて、親プロセスが今の`bash`と同じものの数を数えて1個ならば
|
21
|
+
⇒ `tmux`を開いた時の最初の`bash`である
|
22
|
+
|
23
|
+
LinuxでないOSの場合は、`ps`コマンドのオプションが異なる可能性があるので、OSに合わせて修正してください。
|