こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

bashのコピー&ペーストの方法を教えてください。

基礎的なことでかたじけないです。
マウスとALTキーを使わずに(マウスが接続されていない&TeraTerm経由の環境なので)

abcdef12345abcdef

という文字列の「12345」の部分をコピーして末尾にペーストする方法を教えてください。

abcdef12345abcdef

abcdef12345abcdef12345

どうぞよろしくお願いいたします。

投稿日時 - 2008-08-27 06:33:42

QNo.4281758

暇なときに回答ください

質問者が選んだベストアンサー

bashの入力はreadlineライブラリで実装されています。
で、「範囲をコピー」に相当するコマンド"copy-region-as-kill"は、たいていの環境ではキーに割り当てられていません。


コマンドをキーに割り当てるには、まず ~/.inputrcに

"\M-w": copy-region-as-kill

のような設定を記述し(これはAlt-wに割り当てる例)
コマンドラインから"bash"と打って子プロセスを起動して、
新しいinputrcを読み込ませテストを行います。

テストは
適当な文字列を打つ
カーソル移動して、
Ctl+@かAlt+Spaceでマーク、
カーソル移動してAlt+wで「コピー」、
適当なところでCtl+yで「ペースト」
です。

うまく動いたら、/etc/inputrcへ設定してもいいですね。

readlineには他にもあまり知られていないが便利なコマンドがあります。
(たとえばAlt+. (ピリオド)これ知ってればたぶんコピーペーストは不要)
詳しくは参考URLを。

参考URL:http://www.linux.or.jp/JM/html/GNU_bash/man1/bash.1.html

投稿日時 - 2008-08-27 12:06:10

お礼

ぱっと設定したところうまく動きませんでしたが
コピペできない原因と設定方法がわかりました
あとで腰を据えて設定してみたいと思います
ありがとうございました!!

投稿日時 - 2008-08-28 10:32:22

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(5)

ANo.5

↓で書き忘れましたが、Alt+なんとか、はESCで代用できます。
つまりAlt+w(Alt押しながらw)は、ESC押すESC放すw押すw放す、と同じです。これでAltキーが使えない環境でもなんとかなります。

...しかしTeraTermってAlt(Meta)キーって使えますよね? 参考URL参照。

参考URL:http://www.sodan.ecc.u-tokyo.ac.jp/2002/article/tips/ssh/img/TTPmeta.png

投稿日時 - 2008-08-27 14:29:46

お礼

TeraTermでALTキー使うためにはそんな設定があったのですね
デフォルトでそのチェックボックスははずれているようです。
ありがとうございました!!

投稿日時 - 2008-08-28 10:33:30

ANo.3

回答では無いですが。。。。

TeraTermへの貼り付けは、Ctrl+cじゃ出来なくありませんか?
Shift+Insertが普通では?

投稿日時 - 2008-08-27 11:07:07

補足

ctl+kとctl+yのような形でカット&ペーストはできるのですが
コピー&ペーストはできないものでしょうか・・・

投稿日時 - 2008-08-27 11:24:28

ANo.2

#1さんの疑問とついでにTeraTermってWindows用のターミナルですよね。
その環境でマウスがつながってないって環境自体変に見えますけど

そもそもコピーアンドペーストってシェルの機能ではなくて
使うターミナル エミュレータ側の機能の問題ですよね。

投稿日時 - 2008-08-27 10:30:40

補足

ctl+kとctl+yのようなかたちでコピー&ペーストのコマンドはないものかと・・

投稿日時 - 2008-08-27 11:25:29

ANo.1

bashでとのことですがコマンドラインということそれともvi?
teratermのコピペは原則alt+cですがなぜ使ってはいけないかも
かかないと、回答しづらい。補足を

投稿日時 - 2008-08-27 10:03:10

補足

ややこしいことを書いてしまってすみません。
TeraTermの機能をつかってコピー&ペーストでも構いません。
ALT+CとALT+Vでコピー&ペーストですが、その場合の範囲選択はどのようにすればよいでしょうか?

投稿日時 - 2008-08-27 11:18:16

お礼

>>bashでとのことですがコマンドラインということそれともvi?
すみません。
シェル上でのコピー&ペーストです。

投稿日時 - 2008-08-27 11:30:39

あなたにオススメの質問