入力したコマンドを端末に貼り付けようとしています

入力したコマンドを端末に貼り付けようとしています

私はロボット工学と ROS について非常に初心者で、ターミナルに貼り付けることができるキーボード ショートカットを作成するための支援を求めています。

現在、私は xdotool を使用してこれを行っています。新しいショートカットを作成し、xdotool で簡単な操作 (例:「Hello world」または「test」) を実行すると、ターミナルに出力することができます。ターミナルに出力する必要があるテキストには、いくつかの異なる記号と文字が含まれています。これが問題の原因かどうかはわかりません。

印刷する必要がある入力テキストは次のとおりです。

rosservice call /xm540arm/torque_enable "{cmd_type: 'group', name: 'arm', enable: false}"

新しいショートカットを作成するときに、コマンド セクションに次の内容を入力します。

/bin/bash -c "sleep 0.5 && xdotool type 'rosservice call /xm540arm/torque_enable "{cmd_type: 'group', name: 'arm', enable: false}"'

私が行っている方法が正しいかどうかはわかりませんが、このタスクを達成するための提案や他のオプションがあれば歓迎します。

ご協力いただければ幸いです

ありがとう、マイク

答え1

二重引用符で囲まれた文字列があるため、引用符で囲まれた文字列の終了として読み取られないように、内部の二重引用符をエスケープする必要があります。

/bin/bash -c "sleep 0.5 && xdotool type 'rosservice call /xm540arm/torque_enable \"{cmd_type: 'group', name: 'arm', enable: false}\"'"

関連情報