- 1 名前:名無しさん@お腹いっぱい。 mailto:sage [05/02/02 20:03:26 ]
- zshのスレその4です。
過去スレ zsh入門 pc.2ch.net/test/read.cgi/unix/990283346/ zsh入門 パート2 pc3.2ch.net/test/read.cgi/unix/1036324177/ zsh その3 pc5.2ch.net/test/read.cgi/unix/1080002786/ >>2-3リンク
- 683 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/27(火) 02:47:37 ]
- ``わすれた・・・
- 684 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/02/27(火) 02:48:42 ]
- しかも-aだね。逝ってきます。
- 685 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/02(金) 22:11:55 ]
- mycomの連載、更新されていたけどツッコミどころが幾つかあるな
- 686 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/03(土) 01:23:44 ]
- よしつっこめ。
- 687 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/03(土) 03:11:14 ]
- ショートカットキーという言い方は気持が悪いな
- 688 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/05(月) 01:38:58 ]
- 最近はてブのホットエントリでzsh関連のをちょくちょく見掛けるけどなんかあったのかしら。
- 689 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/05(月) 06:18:24 ]
- そういう連中にとってzshがクールでナウいんだよ。
- 690 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/07(水) 18:55:38 ]
- localeがちゃんとしてたらja_JP.SJISでも動きますか?
- 691 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/07(水) 19:17:30 ]
- ナニが?
- 692 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/08(木) 01:16:40 ]
- カーソル移動とかプロンプト等の桁数計算とかSJIS2バイト目のメタキャラクタ無視とか。
- 693 名前:名無しさん@お腹いっぱい。 [2007/03/16(金) 10:04:06 ]
- あれ?
% autoload predict-on % predict-on predict-on:zle:5: can only be called from widget function
- 694 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 14:01:13 ]
- 錫癜
- 695 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/16(金) 20:44:04 ]
- >693
ウチではそのエラー出ないよ ところで、恥ずかしながら predict-on は知らなかったですよ。
- 696 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/03/24(土) 22:24:26 ]
- >>663-664
久しぶりに見たから1ヶ月前へのレスだけど path=($path(N)) でいけない?
- 697 名前:663 mailto:sage [2007/03/24(土) 23:10:35 ]
- user@ubuntu:~$ zsh -f
ubuntu% test=(foo bar /home) ubuntu% echo $test foo bar /home ubuntu% echo $test(N) foo bar /home ubuntu% echo ${^test}(N) /home >>696だとうまくいったりいかなかったりで困ってたんですけど、rc_expand_paramのせいでした。 path=(${^path}(N)) でうまくいくみたいですね。
- 698 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/03(火) 14:48:38 ]
- suffix alias がコマンドでも展開されて欝
- 699 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:16:19 ]
- mycom の連載見て、bash から乗り換えたら欝
bash $ sudo rm ~foo (~foo -> /home/foo のシンボリックリンク) シンボリックリンク ~foo が消える zsh % sudo rm ~foo (~foo -> /home/foo のシンボリックリンク) Error: foo はディレクトリ % sudo rm -r ~foo ホームディレクトリが消える orz
- 700 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:21:46 ]
- まさか '~foo' ってファイルを作ったのか?
ニョロ展開をやめさせたいんなら ./~foo って指定すればいいし何が言いたいのかわからん
- 701 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:24:47 ]
- >>700
違うよ。 俺は意味わかった。zshが ~の展開の際にシンボリックリンクをたどってしまう という問題だね。Error: foo はディレクトリ の時点で気づくべき。
- 702 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:32:22 ]
- いまいちよくわらん。
foo アカウントのホームディレクトリが /usr/home/foo とかになってて、 それが /home/foo へのシンボリックリンクになってる、とかそんな感じ? つーかなんで rm -r なんてする気になったんだろ。
- 703 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:39:59 ]
- 同じく意味がわからん
少なくとも問題という意識はわからん (動作の話はそういうものとしか言いようがないし... >702 も言う通り -r はそれこそ意図的じゃん)
- 704 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:41:06 ]
- unsetopt chaselinks
で解決したりする?
- 705 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:44:18 ]
- シンボリックリンクに対して rm -r しても、
そのシンボリックリンクが消えるだけ(先までたどらない)からだろ。 多分、rmでエラーが出たから rm -r にしただけだろ。 まさか、~foo が実体ディレクトリを指してるとは頭から思ってないから、 シンボリックリンクを消す意味で気軽に rm -r したと。
- 706 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 17:57:57 ]
- >>705
その「エラーが出たから -r」ってのが意味わからん。 -f ならまだわかるけど。
- 707 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:00:07 ]
- で、「~foo」っていうファイルはあったのか?
なかったのか?
- 708 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:01:32 ]
- >>707
お前ずれてる。~fooなんてファイルの話じゃない。
- 709 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:02:21 ]
- >>708
んじゃどういう話?
- 710 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:03:09 ]
- >>709
読解力ない香具師だなぁ。
- 711 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:04:16 ]
- >>710
すまんね。 詳細教えてくれよ。
- 712 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:06:19 ]
- /etc/passwd には、/usr/home/foo で登録されてる。
/usr/home/foo はシンボリックリンクで、実体の /home/foo を指している。 この状態で、~foo というチルダ展開は、 bashだと /usr/home/foo に展開されるが、 zshでは /home/foo に展開される。 という問題。
- 713 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 18:08:27 ]
- では>>699さん、正解をどうぞ。
- 714 名前:699 mailto:sage [2007/04/10(火) 20:35:00 ]
- 説明不足で、ごめんなさい。
真相は>>701, >>705さんのおっしゃる通りです。 昔 bash で /bar$ ln -s /home/foo ~foo として /bar/~foo を作ったのですが、もう使う必要がなくなったので今日 zsh で /bar% rm -r ~foo としたら、ユーザ foo のホームディレクトリ /home/foo 自体が消えてしまった ということです。 bash では alias rm="rm -i" としていたので、rm のエラーに対していつもの勢いで -r の試行をしてしまいました。 >>713 私が悪いので、皆さん正解です。
- 715 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 21:05:19 ]
- シンボリックリンクを消すならunlink
- 716 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 22:04:28 ]
- そういえば mycom の連載があったな。すっかり忘れてた。
つっこもうと思ってそれっきりだった。
- 717 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 22:40:44 ]
- >>716
では遠慮なくツッコメ。
- 718 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/10(火) 23:55:45 ]
- けっきょく ~foo あったんじゃん。
- 719 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 02:25:44 ]
- シンボリックリンクにrm -rやったのがまずいよ。
- 720 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 07:12:17 ]
- >>718
なんでやねん。欲嫁。 >>714 では、 $ ln -s /home/foo ~foo と実行してるから、~fooという名前のsymlinkはできない。 ~fooという名前のsymlinkを作るためには、 $ ln -s /home/foo '~foo' のように、クォートするなり、./~foo みたいに ./を付けるなりしないといけないから。
- 721 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 07:14:15 ]
- >>719
シンボリックリンクにrm -rやること自体はまずくない。(変ではあるが) まずかったのは、それがシンボリックリンクではなかったこと。
- 722 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 08:37:49 ]
- >721
いや、シンボリックリンクに対して rm -r するのはおかしいよ。 -r オプションは「当該ファイルをディレクトリとみなして中身もいっしょに 消す」という意図のオプションだから、仮に rm で消せなかったとしてもシン ボリックリンクだと認識しているファイルに使うのがまずヘン。 だって中身を消したかったわけじゃないでしょ。
- 723 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:45:48 ]
- >>714
> として /bar/~foo を作ったのですが、 って言ってるんだから、 ~foo っていうファイル名のファイル (シンボリックリンク) が あったんじゃないの?
- 724 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:53:03 ]
- >>723
そこは確かに曖昧だが、質問者の理解不足によるものだろう。 ln -s /home/foo ~foo を実行してシンボリックリンクを作っている以上、 ~fooは展開されて、実際のパス名になるから、 「~foo」なんて名前のシンボリックリンクができたわけではないことは明らか。
- 725 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 09:58:53 ]
- そもそも元質問者のレベルの人が、~が付いたファイルを作ること自体難しいだろう。
(クォートとかで回避する方法も知らないだろうし)
- 726 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 10:30:52 ]
- > /bar/~foo を作った
zsh とか以前に極めて悪趣味 > シンボリックリンクにrm -rやること自体はまずくない。(変ではあるが) まあそうだけど "まずいかどうか" じゃなくて 「意味を理解せず(考えず)」に -r というのは銃殺刑確定 "(変ではあるが)" に集約されるけどな
- 727 名前:699 mailto:sage [2007/04/11(水) 23:44:00 ]
- すいません、今回の件は zsh と関係ありませんでした。
原因は、「~ユーザ名」と「~非ユーザ名」で挙動が異なる事を知らなかったという 私の理解不足にあります。 zshで foo@example:/bar% sudo rm -r ~foo でホームディレクトリが消えた後、 bash で foo@example:/bar$ sudo ln -s /home/foo2 ~foo2 foo@example:/bar$ sudo rm -r ~foo2 (ここで、foo2 は既に存在しないユーザ名。/home/foo2 自体は実在する。) として、検証してしまいました。 >>718, >>723-725 「/bar/~foo」は、ありました。 しかし、実際には>>720さんの説明の通りにしなければエラーになります。 したがって、作成時にはクォートしたと思います。 >>719, >>721-722 今後は、>>715さんの様にしたいと思います。 >>726 全くその通りです。 こんな unix の初歩的な事でスレを汚してしまい、 申し訳ないです。
- 728 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/11(水) 23:51:24 ]
- >727
なるほどね。いや悪いってわけじゃないです。 ただ ~user という用法をしらない人がいると 誰も思わなかったから「ネタだろ」位に皆思ってただけで...
- 729 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/12(木) 02:39:00 ]
- ここがUNIX板でよかったね。
- 730 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 09:32:32 ]
- ところでディレクトリに張った
シンボリックリンクをrm -rすると実際どうなるの?
- 731 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 09:34:23 ]
- >>730
それくらい実験してみろよ。 そのシンボリックリンクだけが消えるだけだよ。
- 732 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 14:53:23 ]
- この流れワロタ
- 733 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 20:52:19 ]
- % echo {001..005}\\n
001 002 003 となって2行目以降にスペースが入ってしまうのは なんででしょうか?
- 734 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/13(金) 20:57:26 ]
- 001\\n 002\\n 003\\n 004\\n 005\\n に展開されるから
- 735 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:35:54 ]
- >>734 ありがとうございます。
とすると余計な空白なしに出力するのに 最もシンプルな書き方はどうなるのでしょう echo {001..005} | tr "[:space:]" "\n" だとベストではないですよね
- 736 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:55:22 ]
- シンプルというか真っ先に思い付くのは
for i in {001..005}; do echo $i; done とか。zsh のことだから省略記法があるのかな。
- 737 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/14(土) 02:58:56 ]
- と書きつつ思い付いた。print -l {001..005} でいいか。
- 738 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/17(火) 22:38:46 ]
- zsh 4.3.3 released
- 739 名前:名無しさん@お腹いっぱい。 [2007/04/21(土) 00:26:43 ]
- zsh 4.3.4 releases
- 740 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 05:16:08 ]
- 情報ゼロワロタ
journal.mycom.co.jp/news/2007/04/20/023/index.html
- 741 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 08:01:49 ]
- 「マルチバイトサポート」って何回言った?て感じ
- 742 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 09:03:22 ]
- >>740
書いたあと一回でも読み返したとは思えん文だなw
- 743 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 10:58:42 ]
- > 4.3.4は機能拡張を実施したメジャーリリース。
??メジャーリリース?
- 744 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/21(土) 11:53:18 ]
- そっとしといてやろうぜ…。
- 745 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/22(日) 02:10:35 ]
- ちんこ
- 746 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/22(日) 04:04:57 ]
- ホームをNFSで共有する環境で起動が異常に遅い事があったけど
原因が compinit する時にNFSで共有してる .zcompdump へのロックだったので compinit -d /tmp/$USER.zcompdump とかしたら幸せになれた
- 747 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/04/27(金) 10:44:22 ]
- ウォーニングだバカ……
- 748 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 19:10:15 ]
- こんな人が記事書いているのかと思うと。
- 749 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 20:06:07 ]
- % echo 'a
c d' 複数行の履歴を編集する時に改行のつもりで RET を打鍵すると accept-line が呼ばれてしまうのだけど、これを回避する方法ってありますか?
- 750 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/06(日) 20:11:17 ]
- >>749
C=v C-j かな?
- 751 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/07(月) 06:14:08 ]
- >>750
できました。ありがとう
- 752 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 12:10:15 ]
- ...微妙な記事だ
journal.mycom.co.jp/column/zsh/index.html
- 753 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 13:01:30 ]
- おまいも微妙だな
- 754 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/09(水) 13:17:14 ]
- zsh-loversにのってるような変態tipsを紹介すればいいのに
- 755 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/25(金) 03:27:08 ]
- builtin sleep が欲しいなと思ったら zselect -t が使えた
- 756 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/05/25(金) 04:26:49 ]
- bash の complete-into-braces (M-{) って zsh だと
どうすればいいんでしょうか?
- 757 名前:87 mailto:sage [2007/06/09(土) 00:33:14 ]
- % wget www.zsh.org/pub/zsh-4.3.4.tar.gz
% tar xzvf zsh-4.3.4.tar.gz % cd zsh-4.3.4 % ./Util/preconfig % ./configure --enable-multibyte --enable-locale % make % sudo make install どこに記述すればいいんだいよう
- 758 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:25:54 ]
- tab補完でtab押すごとに補完候補が順に入力された状態になるけど
行き過ぎたときに戻る方法ってありませんか? shift+tabとか押してみたけどダメだった
- 759 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:28:36 ]
- Ctrl+Pは?
- 760 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 03:40:28 ]
- >>759
コマンド自体が一個前のに戻るだけでした
- 761 名前:名無しさん@お腹いっぱい。 [2007/06/14(木) 05:52:05 ]
- >>758
# 補完候補を←↓↑→で選択。 zstyle ':completion:*:default' menu select true で、矢印キーで移動するのはダメですか?
- 762 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 09:37:53 ]
- 自分は undo を使う
- 763 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 11:34:06 ]
- >>758
C-/
- 764 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 15:27:19 ]
- みなさんレスありがとうございます
>>761 おぉ、そんな便利なこともできるんですね >>762 >>763 できました
- 765 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 21:35:57 ]
- undo したあと redo ってどうやりますか?
- 766 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/14(木) 23:03:04 ]
- unko したあと redo ってどうやりますか?
- 767 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/15(金) 10:39:14 ]
- >>766
気合いで尻の穴に吸い込め
- 768 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/15(金) 12:23:07 ]
- redoをbindkeyで好きなキーに割り当てればいいのではないでしょうか
- 769 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:07:51 ]
- あるコマンドで hogehoge=filename などとファイル名を渡すときに、
=(nannkano_command) の一時ファイルで物臭をやろうとすると hogehoge==(nannkano_command) となって == の解釈でエラーに なってしまう。エスケープしても別のエラーになる。うまくやる方法は ないかな。
- 770 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:23:31 ]
- zfsから誘導されてきました
pc11.2ch.net/test/read.cgi/unix/1181716111/27 できればこのキチガイをzshから出さないようにしてください。 迷惑です。
- 771 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:35:51 ]
- >>769
$ hogehoge='=(nannkano_command)' $ echo "$hogehoge" =(nannkano_command) ↑ってできるけど、これじゃ駄目なの?
- 772 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 12:57:39 ]
- いや駄目だと思うが…
- 773 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 13:03:22 ]
- >769
=(command) の一時ファイルはすぐ消えちゃうよ。かりに hogehoge=... に渡せても、それを再利用したときにはもう消えてると思うんだけど、どういう風に利用することを考えているの? っていうか、やりたいのは `...` の方だったりしない? あと、わたしの手元では hogehoge==(command) でも一時ファイル名はちゃんと取れるけどなあ。
- 774 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 13:33:25 ]
- >>773
ファイルの要る部分だけを抜き出して渡したいんですよ。履歴に突っ込んでおいて たまに呼び出したいぐらいの軽い用途です。 たしかに単独の変数代入だと自分ところでも動きますが、コマンド途中だとエラーに なってしまいます。例えば、 $ echo hogehoge==(command) zsh: not found
- 775 名前:名無しさん@お腹いっぱい。 [2007/06/17(日) 19:10:37 ]
- watch と打ったあとに引数のところでコマンド名の補完して欲しいんだけど
どう設定したらいいですか?
- 776 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 19:19:04 ]
- compdef _precommand watch
かな
- 777 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/17(日) 19:29:19 ]
- >>776
できました ありがとうございます bashから乗り換えたけど色々と便利ですね
- 778 名前:名無しさん@お腹いっぱい。 [2007/06/27(水) 03:40:21 ]
-
拡張子に応じたコマンドを自動実行 journal.mycom.co.jp/column/zsh/016/
- 779 名前:気まぐれアナスイ mailto:!(ΦyΦ+){秘密です。} [2007/06/27(水) 11:53:22 ]
- >>778
なるほど? そういう事ですか…
- 780 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/27(水) 13:56:37 ]
- mycom の zsh の連載、まだ続いてたのか
- 781 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/06/27(水) 14:50:24 ]
- こないだなんかネタを募集してたぞ
journal.mycom.co.jp/column/zsh/015/
- 782 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/01(日) 21:04:02 ]
- bindkey -v でコマンドスタックが使えないんですが
bindkey '^Q' push-line だとだめ、bindkey の出力にはちゃんとでてるのに bindkey '^P' push-line だとできるが P は別で使ってるので... bindkey -v の人スタックどうしてるんだろう?使ってないとか?
- 783 名前:名無しさん@お腹いっぱい。 mailto:sage [2007/07/03(火) 04:42:58 ]
- bindkey "^Q" push-lineで普通に使えるが。
|

|