一重引用符を使ってIterm2スクリプトを書く方法

一重引用符を使ってIterm2スクリプトを書く方法

Iterm2でスクリプトを書こうとしています

これにより、現在のタブにタイトルが設定されます

await session.async_send_text('export PROMPT_COMMAND='echo -ne "\033]0;TAB TITLE\007"'\n')

しかし、入力したコマンドに一重引用符が含まれているため、エラーが発生します。スクリプトを正しく記述するにはどうすればよいでしょうか?

一重引用符なしのサンプル スクリプト:

await session.async_send_text('cd Documents/test1/test2/\n')

答え1

外側の引用符に二重引用符を使用してみましたか?

await session.async_send_text("export PROMPT_COMMAND='echo -ne \"\033]0;TAB TITLE\007\"'\n")

エスケープされた内部の二重引用符に注意してください。

答え2

PROMPT_COMMANDを使用してこれを行うより良い方法は見つかりませんでしたが、Tabsetをインストールするだけで作業を実行できるパッケージを見つけました。https://www.npmjs.com/package/iterm2-tab-set

npm i iterm2-tab-set

タブタイトルを設定するには:tabset --title Test

関連情報