zsh その4
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。
05/02/02 20:03:26過去スレ
zsh入門
http://pc.2ch.net/test/read.cgi/unix/990283346/
zsh入門 パート2
http://pc3.2ch.net/test/read.cgi/unix/1036324177/
zsh その3
http://pc5.2ch.net/test/read.cgi/unix/1080002786/
>>2-3リンク
0438名無しさん@お腹いっぱい。
2006/03/18(土) 22:22:560439名無しさん@お腹いっぱい。
2006/03/19(日) 07:22:010440名無しさん@お腹いっぱい。
2006/03/19(日) 08:17:110441名無しさん@お腹いっぱい。
2006/03/19(日) 16:05:540442名無しさん@お腹いっぱい。
2006/03/22(水) 21:57:35をよくやるんだが、zshならもっと簡単にやる方法あったりしない?
0443名無しさん@お腹いっぱい。
2006/03/22(水) 22:32:46せいぜいdo, doneを省くくらい。
0444名無しさん@お腹いっぱい。
2006/03/23(木) 00:08:230445名無しさん@お腹いっぱい。
2006/03/23(木) 02:35:37perl hoge.pl a zで、aからzまででる
perl hoge.pl g oならgからoまで
#!/usr/bin/perl
for($i=ord($ARGV[0]);$i<=ord($ARGV[1]);$i++){print chr($i),"¥n";}
0446名無しさん@お腹いっぱい。
2006/03/23(木) 13:36:590447名無しさん@お腹いっぱい。
2006/03/24(金) 07:19:52あと、自分はこんな関数を定義していて偶に使う。
function each () {
for i in "$@[1,-2]"; do
eval $@[-1] ${(qq)i}
done
}
command は内部コマンドにあるから名前を変えるが、>>442の例だと
each {a-e} command1
みたいなかんじに。
0448名無しさん@お腹いっぱい。
2006/03/25(土) 09:37:04each func arg1 arg2 ...
の方が直感的と思ったオレは lisper ?
0449名無しさん@お腹いっぱい。
2006/03/25(土) 10:48:26lisperならeachじゃなくてmapの方が直観的と思うハズだ。
0450名無しさん@お腹いっぱい。
2006/03/25(土) 10:49:280451名無しさん@お腹いっぱい。
2006/03/26(日) 00:35:540452名無しさん@お腹いっぱい。
2006/03/26(日) 18:19:020453名無しさん@お腹いっぱい。
2006/03/28(火) 04:59:32Haskell?
0454名無しさん@お腹いっぱい。
2006/03/28(火) 23:20:070455名無しさん@お腹いっぱい。
2006/04/09(日) 17:17:32bash ならもっと簡単にやる方法あるよ:
bash -c 'for i in {a..e} ; do ; command $i ; done'
0456名無しさん@お腹いっぱい。
2006/04/09(日) 17:56:03それはbash3と断るべきだな。現状まだbash2の方が多いし、bash2ではできない。
それより、zshは {1..5}は展開できるのに、{a..e}が展開できないのってなんか中途半端。
0457名無しさん@お腹いっぱい。
2006/04/09(日) 18:09:41は出来るの?
あるいは {a..aa} とかはどうなるの?
一文字限定でもあった方が便利ではあるだろうが。
0458名無しさん@お腹いっぱい。
2006/04/09(日) 23:49:010459名無しさん@お腹いっぱい。
2006/04/09(日) 23:55:17できないよ
0460名無しさん@お腹いっぱい。
2006/04/14(金) 21:37:30そろそろここのリストから消えそうだね
0461名無しさん@お腹いっぱい。
2006/04/16(日) 10:42:220462名無しさん@お腹いっぱい。
2006/04/19(水) 20:05:100463名無しさん@お腹いっぱい。
2006/04/19(水) 21:03:100464名無しさん@お腹いっぱい。
2006/04/20(木) 02:27:27ちなみにソースなら ttp://www.zsh.org/pub/ ここにあるよ
0465名無しさん@お腹いっぱい。
2006/04/21(金) 03:44:270466名無しさん@お腹いっぱい。
2006/04/23(日) 19:15:090467名無しさん@お腹いっぱい。
2006/04/23(日) 20:20:34送りつけてやるのがいいよ。
0468名無しさん@お腹いっぱい。
2006/04/25(火) 13:16:330469名無しさん@お腹いっぱい。
2006/04/25(火) 21:54:380470名無しさん@お腹いっぱい。
2006/04/25(火) 22:43:20http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/95970
0471名無しさん@お腹いっぱい。
2006/05/01(月) 16:58:290472名無しさん@お腹いっぱい。
2006/05/01(月) 17:26:550473名無しさん@お腹いっぱい。
2006/06/03(土) 18:44:040474名無しさん@お腹いっぱい。
2006/06/09(金) 22:32:03precmd内から何らかの方法で値を取得し表示できるのが理想なのですが…。
すべてのコマンドにtime -o /tmp/hogeを頭につけてそれを取得する、という方法でも結構です。
REPORTTIME=0にTIMEFMTだと出ないときがあるので何とかしたいのです。
0475sage
2006/06/10(土) 03:55:580476名無しさん@お腹いっぱい。
2006/06/21(水) 02:35:140477名無しさん@お腹いっぱい。
2006/06/21(水) 14:18:03_acroread:12: no such file or directory: Gtk-WARNING
とか言われる。tcsh では問題ないのに。
0478名無しさん@お腹いっぱい。
2006/06/21(水) 14:31:53いつになったら直るのかなあ。
>>365-368 あたりを読んでみ。
0479476
2006/06/21(水) 17:55:28何か変なsetoptでも知らないうちにしちゃったのかも。
それが影響するcompletion関数というのも勘弁だけど。
0480名無しさん@お腹いっぱい。
2006/07/12(水) 16:20:40表示するようにしたいのですが、以下のやり方だと引数を入れたとき引数が less の
引数として認識されてしまい、ls の引数として認識させることができません。
alias -g L='| /usr/local/bin/jless'
alias ls="ls -alG L"
csh 等では以下のようにして同等の機能を持たせられるので、zsh でも同じこと
はできると思うのですが、やり方を知っている方がおられましたら教えていただけないでしょうか?
ls [オプション] [ファイル名] | less -e
alias ls "/bin/ls \!* | less -e"
0481名無しさん@お腹いっぱい。
2006/07/12(水) 16:43:090482名無しさん@お腹いっぱい。
2006/07/12(水) 16:51:43いまどき ${1+"$@"} なんてしなくても "$@" で桶。
0483名無しさん@お腹いっぱい。
2006/07/12(水) 16:58:570484名無しさん@お腹いっぱい。
2006/07/12(水) 21:33:380485名無しさん@お腹いっぱい。
2006/07/12(水) 23:46:500487名無しさん@お腹いっぱい。
2006/07/15(土) 23:09:45を使っているんですが、
emacs bindでいうところの、再帰履歴検索がやりたくて、
bindkey "^R" history-incremental-search-backward
bindkey "^S" history-incremental-search-forward
と書いたのですが、Ctl-Rは効くのですが、Ctl-Sが効きません。
何故ダメなのかを教えてください。
もしくは、他の方法でもいいので、
bindkey -v の状態で、再帰履歴検索をやる方法を教えてください。
0488名無しさん@お腹いっぱい。
2006/07/15(土) 23:37:43これじゃないの
0489名無しさん@お腹いっぱい。
2006/07/16(日) 00:18:19どうもありがとうございました。
0490名無しさん@お腹いっぱい。
2006/08/03(木) 00:16:10初めて知ったかも
0491名無しさん@お腹いっぱい。
2006/08/03(木) 07:35:220492名無しさん@お腹いっぱい。
2006/08/03(木) 19:21:26このスレしかヒットしねぇ('A`)
0493名無しさん@お腹いっぱい。
2006/08/06(日) 02:36:57ahooクオリティ(・∀・)
0494名無しさん@お腹いっぱい。
2006/08/07(月) 00:10:45% time hoge
とした時の、hogeコマンドの出力は /dev/null に、
timeコマンドの出力は >output などとしてファイルに出力したいのですが。
time hoge を実行するだけのシェルスクリプトを書いておけば、
以下のようにして望んだ結果を得られるのですけど。
% cat hoge.sh
time hoge
% ./hoge.sh >/dev/null 2> output
0.012
0495名無しさん@お腹いっぱい。
2006/08/07(月) 00:43:470496494
2006/08/07(月) 03:43:48なんかすごい基本的なことだったのかもしれませんが、ありがとうございます。
0497名無しさん@お腹いっぱい。
2006/08/07(月) 16:47:310498名無しさん@お腹いっぱい。
2006/08/07(月) 19:57:510499名無しさん@お腹いっぱい。
2006/08/07(月) 22:11:100500名無しさん@お腹いっぱい。
2006/08/09(水) 12:34:490501名無しさん@お腹いっぱい。
2006/08/09(水) 13:25:35>>494 は GNU time の話ではない。
0502名無しさん@お腹いっぱい。
2006/08/16(水) 01:03:00日本語特有の設定ってある?
ロケールと print_eight_bit くらいだとおもうんだけど
0503名無しさん@お腹いっぱい。
2006/08/16(水) 04:17:04ttp://hiki.ex-machina.jp/zsh/index.cgi?MessageBoard
0504名無しさん@お腹いっぱい。
2006/08/16(水) 08:36:540505名無しさん@お腹いっぱい。
2006/08/16(水) 21:03:15そいつは日本語特有の設定というより、
日本語で書かれた資料を切望しているように見えるんだが。
0506名無しさん@お腹いっぱい。
2006/09/14(木) 00:24:170507名無しさん@お腹いっぱい。
2006/09/16(土) 02:36:00でもいまcygwinいれらんね〜
0508名無しさん@お腹いっぱい。
2006/09/25(月) 12:46:33$ bar=bar
$ echo ${bar/#/foo}
foobar
$ echo ${bar/%/foo}
barfoo
(zsh 4.3.2)
$ bar=bar
$ echo ${bar/#/foo}
foobar
$ echo ${bar/%/foo}
bar
どうして?バグ?
0509名無しさん@お腹いっぱい。
2006/09/27(水) 13:27:58# グローバルエイリアスを my-expand-abbrev 用の連想配列 に追加する
# 注意:現状ではうまく動いているようだが、おかしくなっても知らない
function abbrev-with-global-aliases() {
local globals="$(alias -g|tr '=' ' ')"
local backup="$(alias -L)"
unalias -m '*'
eval 'myabbrev+=( '$globals' )'
eval $backup
}
abbrev-with-global-aliases
0510名無しさん@お腹いっぱい。
2006/09/29(金) 09:02:55# グローバルエイリアスを myaddrev に追加
myabbrev+=( ${==${(kv)galiases}} )
0511名無しさん@お腹いっぱい。
2006/10/02(月) 21:26:170512名無しさん@お腹いっぱい。
2006/10/05(木) 15:43:080513名無しさん@お腹いっぱい。
2006/10/08(日) 21:39:06bash+bash-completionじゃボロボロで使いモノにならんよ
Fedora Core 6ではzsh-4.3.2また見送りか
0514名無しさん@お腹いっぱい。
2006/10/08(日) 22:09:140515名無しさん@お腹いっぱい。
2006/10/09(月) 02:17:27% command >& log
すらできないし
はよ駆逐されてくれ
0516名無しさん@お腹いっぱい。
2006/10/09(月) 02:35:46zshが全部でデフォルトシェルにならない限り無理。
bashはbashでいいと思うけど。
zshと比較する気は無い。
0517名無しさん@お腹いっぱい。
2006/10/14(土) 02:02:32ash = ムーブ
csh = キューブ
ksh = マーチ
cmd.exe = フィット
tcsh = シビック
bash = カローラ
zsh = ステップワゴン
powershell.exe = ボンドカー
0518名無しさん@お腹いっぱい。
2006/10/14(土) 10:31:090519名無しさん@お腹いっぱい。
2006/10/14(土) 12:33:040520名無しさん@お腹いっぱい。
2006/10/14(土) 17:54:47alias を展開することはできますか
0521名無しさん@お腹いっぱい。
2006/10/14(土) 18:10:290522名無しさん@お腹いっぱい。
2006/10/14(土) 19:54:00global alias でも使える方法はありますか?
0523名無しさん@お腹いっぱい。
2006/10/15(日) 21:41:190524名無しさん@お腹いっぱい。
2006/10/16(月) 06:04:570525名無しさん@お腹いっぱい。
2006/10/16(月) 16:40:220526名無しさん@お腹いっぱい。
2006/10/24(火) 16:35:29tcsh = はなこ
zsh = じろう
0527名無しさん@お腹いっぱい。
2006/11/04(土) 15:43:13の ^F, ^B, ^N, ^P での移動が
bindkey '^P' history-beginning-search-backward-end
bindkey '^N' history-beginning-search-forward-end
これを設定してるせいで ^N, ^P が履歴検索になってしまいます。
補完候補の選択時は履歴検索にならないようにする方法はありますか?
0528名無しさん@お腹いっぱい。
2006/11/06(月) 04:32:14なんか色々考えたけど、これが手っ取り早いかな。
bindkey -M menuselect '^P' up-line-or-history
bindkey -M menuselect '^N' down-line-or-history
ところで、マルチライン編集をする機会があるなら、
history-beginning-search-{backward,forward}-end よりも
{up,down}-line-or-beginning-search の方が便利だと思う。
0529527
2006/11/08(水) 17:36:25ありがとうございます。
しかし、「no such keymap `menuselect'」と出て上手くいきません…。
ちょっとマニュアル読んで調べてみます。
0530527
2006/11/08(水) 18:19:03bindkey -M menuselect '^N' down-line-or-history
と、やると「no such keymap 'menuselect'」とエラーになってしまう。
だけど、いったん補完リストを出してからやると、ちゃんと設定できる。
何故だ…orz
0531527
2006/11/08(水) 18:52:26zmodload zsh/complist で先に読み込まなきゃいけないんですね。
>>528
>{up,down}-line-or-beginning-search の方が便利だと思う。
こっちの方が良さそうです。ありがとうございました。
0532名無しさん@お腹いっぱい。
2006/11/11(土) 03:24:11zmodload zsh/complist
bindkey -M menuselect "^V" forward-word
bindkey -M menuselect "^[<" beginning-of-history
bindkey -M menuselect "^[>" end-of-history
bindkey -M menuselect "^[v" backward-word
bindkey -M menuselect "^M" .accept-line
最後の行はなんで入れたか覚えてない
0533名無しさん@お腹いっぱい。
2006/11/11(土) 14:35:43zmodload zsh/complist
bindkey -M menuselect '^n' down-line-or-history
bindkey -M menuselect '^p' up-line-or-history
bindkey -M menuselect '^o' accept-and-infer-next-history
0534名無しさん@お腹いっぱい。
2006/11/23(木) 14:34:03をとってくれるような設定ってありませんか?
0535名無しさん@お腹いっぱい。
2006/11/23(木) 14:45:25man 1 script
man 1 tee
0536名無しさん@お腹いっぱい。
2006/11/23(木) 14:46:52script?
0537名無しさん@お腹いっぱい。
2006/11/23(木) 14:59:13どんなコマンドうったときも自動的にteeしてくれるようなものが
あるといいと思ったのですが、viとかを考えるとけっこう難しいですね。
scriptは常用するにはちょっとうざいです。
■ このスレッドは過去ログ倉庫に格納されています