クリップボードから関数作成
シェルスクリプト作成用に作成。
クリップボードに
貼り付けたスクリプトから
関数を作成するには下のようにするとよい。
$ xsel --clipboard --output | awk 'BEGIN { print "function funcname() {"} { print " ",$0} END { print "}"}'
また、オプションの引数として、
関数名をわたしたら、それを使って関数名を作成するようにしたい。
(オプションを渡さない場合はデフォルトで"funcname"という名前の
関数が作成される。)
これを関数として作成すると下のようになる。
function clip2function() {
local funcname="funcname"
if test ! -z $1 ; then
funcname=$1
fi
xsel --clipboard --output | awk -v fname=$funcname 'BEGIN { print "function",fname,"() {"} { print " ",$0} END { print "}"}'
}
これをいつもと同様に
~/bin/myfunction
に置き、
~/.bashrc(macの人は.bash_profile)に
source ~/bin/myfunction
としておく
これで
$ clip2function 関数名を決めるオプションの引数
でクリップボードにあるスクリプトが関数として表示されるはずだ。
これを使って、
$ clip2function オプション引数 | cat >> 関数が書かれているファイル
とするとファイルに関数の内容が追記することができる。
クリップボードに
貼り付けたスクリプトから
関数を作成するには下のようにするとよい。
$ xsel --clipboard --output | awk 'BEGIN { print "function funcname() {"} { print " ",$0} END { print "}"}'
また、オプションの引数として、
関数名をわたしたら、それを使って関数名を作成するようにしたい。
(オプションを渡さない場合はデフォルトで"funcname"という名前の
関数が作成される。)
これを関数として作成すると下のようになる。
function clip2function() {
local funcname="funcname"
if test ! -z $1 ; then
funcname=$1
fi
xsel --clipboard --output | awk -v fname=$funcname 'BEGIN { print "function",fname,"() {"} { print " ",$0} END { print "}"}'
}
これをいつもと同様に
~/bin/myfunction
に置き、
~/.bashrc(macの人は.bash_profile)に
source ~/bin/myfunction
としておく
これで
$ clip2function 関数名を決めるオプションの引数
でクリップボードにあるスクリプトが関数として表示されるはずだ。
これを使って、
$ clip2function オプション引数 | cat >> 関数が書かれているファイル
とするとファイルに関数の内容が追記することができる。
コメント
コメントを投稿