トップページunix
1001コメント285KB

シェルスクリプト総合 その2

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2005/04/17(日) 00:17:17
シェルスクリプトの総合スレです。スクリプトのお勉強・自慢・腕試しなどにどうぞ。
まずは注意点、リンク、地鎮祭など(>>1-10くらい)をご覧ください。

□前スレや過去スレ:
シェルスクリプト総合 その1
http://pc8.2ch.net/test/read.cgi/unix/1101820646/
☆シェルスクリプトを勉強するにあたって☆
http://pc5.2ch.net/test/read.cgi/unix/989659936/
便利なシェルスクリプト見せろ
http://pc5.2ch.net/test/read.cgi/unix/996949546/
【貝】第1回シェル講座【殻】
http://fun.kz/test/read.cgi/unix/1016372780/

□関連スレ:
sed
http://pc8.2ch.net/test/read.cgi/unix/1085730992/
おまえら! shell は何を使っているんですか?
http://pc5.2ch.net/test/read.cgi/unix/1012330865/
Eshell の使い方とか設定とか【Emacs Shell、Lisp】
http://pc8.2ch.net/test/read.cgi/unix/1102921590/

□他板の関連スレ:
Macでシェルスクリプト総合 Part 1
http://pc7.2ch.net/test/read.cgi/mac/1105074933/
【Shell】どのシェル使ってる?【Script】
http://pc8.2ch.net/test/read.cgi/linux/1067330754/
06836792005/07/21(木) 15:56:48
>>680-682
Cygwinインストールしてみました。
Shell Scriptを実行してみたところsyntax errorが出たので、
やはり知識を身につけなければいけないようです。

公式な配布物の中身をいじってないのにErrorが出るのが何でかわかりませんが・・・orz
0684名無しさん@お腹いっぱい。2005/07/21(木) 16:00:26
なにをやろうとしてるの?
0685名無しさん@お腹いっぱい。2005/07/21(木) 17:01:26
改行コードが違ってたり、ってことは配布物いじってないならないか…。
0686名無しさん@お腹いっぱい。2005/07/21(木) 20:20:39
お約束 >>679
「エスパーきぼんぬ」「氏ね」「(゚Д゚)ハァ?」等のレスを貰う八ヶ条。
1. ハードウェア、OSのバージョン等には一字一句触れない。
2. 大切な個人情報が漏れるとまずいので、己の行った操作、変更などは秘密。
3. エラーメッセージの類は決して書かない。「エラーが出るんです」で留める。
  目の前で生じている現象をそのまま具体的に書くなどもっての外。
  事実より俺様の脳内解釈を優先すべし。
4. 独り言文体で必勝。
  「…なんだけど、どうすればいいのかなぁ」「何が悪いんだろう?」
5. 「急いでいます」「困っています」等、自分の都合を全面に押し出す。
6. もう試したことを得意げに指摘してくる奴には、厳しく対応。
  「それが駄目だったから質問してるんです」「それはもう試してみて駄目でした」
  "どう"だめだったのか、本当に実際それを行ったかどうかなんか問題じゃない。
7. ストレートに答えを書かないもったいぶったレスには、逆切れで対応。
  「だからどうすればいいんですか?」「分からないなら引っ込んでろやゴルァ」
  示されたURL等を参照するなんて態度は、回答者を甘やかすことに他ならないので
 絶対に避ける。
8. 情報は小出しに。

「エスパーきぼんぬ」 補足
上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。
そのような悪い質問に対して答えられるのは,
質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ,
という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。
まちがっても「エスパーの方,回答お願いします」
なんて痛い質問するな。つうか氏ね。
0687名無しさん@お腹いっぱい。2005/07/21(木) 20:28:59
windows で sh を実行などというからには
何か勘違いをしてるっぽいので、
詳しく聞きだしてみたい。
0688名無しさん@お腹いっぱい。2005/07/21(木) 20:38:07
>>686
補足は蛇足。コピペ時にはカットよろしこ。
0689名無しさん@お腹いっぱい。2005/07/21(木) 20:59:09
>>686
これ貼るだけでいいよ。
http://myu.daa.jp/osiete/index.html
0690名無しさん@お腹いっぱい。2005/07/21(木) 22:03:52
>>679
ちょとかわいそうなのでマジレス。

シェルの種類は複数あって、拡張子が.shであっても
書式が共通しているとは限らない。
(Cygwin のやつは bash という種類。)

その「公式な配布物」が何なのかを書けば
もう少しまともなレスが得られるかも知れない。
0691名無しさん@お腹いっぱい。2005/07/21(木) 23:01:04
シェルスクリプトファイルの絶対パスをシェルスクリプト自身で
見つけ出すことは出来ますか?

pwdとやってもシェルスクリプトを起動させた時点でのカレント
ディレクトリしか出ないので質問しました。
0692名無しさん@お腹いっぱい。2005/07/21(木) 23:04:28
>>691 $0 とか `dirname $0` とか
06936792005/07/21(木) 23:22:17
>>684-690
お騒がせしてます;
根本的にはCygwinでbashを使うことで"解決"しております。
アドバイスありがとうございました。

SyntaxErrorは行番号が出ているものの、
その行の記述が間違っていないことがわかったので、
自分が悪いと思って出し辛かった、といいますか
人に聞く前に調べようと思って、あの場では書きませんでした。

エスパーの方,回答お願いします。つうか氏ぬ。

#今回はじめて掲示板のお世話になったのですが、実際>>686のように書かれると嫌になるね。質問1つもちゃんとできない自分が。
06946912005/07/21(木) 23:23:16
便利なコマンドがあるんですね。
パスが通っている場合や、カレントディレクトリで実行した場合は
絶対パスが出るみたいですが、下のようにディレクトリを指定して実行した場合は
ディレクトリ名しか出ません。つまり、

shtest/shtest.sh

を実行したときは shtest だけが得られる。得られたパスの初めの文字を判定して
/(スラッシュ)でなければ `pwd`/ を付け加えるというようにすればいいと
思うのですが、どうすれば出来るのですか?たびたびすみません。
0695名無しさん@お腹いっぱい。2005/07/21(木) 23:28:21
>>692
$0 いじって呼ばれたらだめだな。
0696名無しさん@お腹いっぱい。2005/07/21(木) 23:57:18
他にも方法はあるけど正規表現を使わない方向で。

#!/bin/bash
if [ "${0#/}" != "$0" ]; then
 path="$0"
elif [ "${0#./}" != "$0" ]; then
 path=`pwd`"${0#.}"
elif [ "${0#../}" != "$0" ]; then
 path=`dirname "$(pwd)"`"${0#..}"
else
 path=`pwd`/"$0"
fi
echo $path
0697名無しさん@お腹いっぱい。2005/07/22(金) 00:36:21
DIR=`dirname $0`
APATH=`cd $DIR; pwd`/`basename $0`
echo $APATH
とか。
0698名無しさん@お腹いっぱい。2005/07/22(金) 00:40:21
http://www.nurs.or.jp/~asada/FAQ/UNIX/section4.4.html
0699名無しさん@お腹いっぱい。2005/07/22(金) 00:48:20
本当にFAQですよね。
0700名無しさん@お腹いっぱい。2005/07/22(金) 00:52:12
リンクとかされてることもあるしね。
0701名無しさん@お腹いっぱい。2005/07/22(金) 02:02:40
環境によるとは思うんだけど、$0を入れ換えられてる場合をのぞけば、
shellの中で、

realpath $0
か、
readlink -f $0

が、スマートなんじゃないだろうか?

0702名無しさん@お腹いっぱい。2005/07/22(金) 03:25:52
それがある環境に限れるならね。
07036912005/07/22(金) 08:39:45
ありがとうございます。いろいろ試してみようかと思います。
0704名無しさん@お腹いっぱい。2005/07/22(金) 08:50:19
パスを書いておけばおk
0705名無しさん@お腹いっぱい。2005/07/22(金) 15:33:00
awkスクリプトをperlスクリプトに変換する
a2pコマンドが吐き出すシェルスクリプトについてですが、
2行目、
eval 'exec /usr/bin/perl -S $0 ${1+"$@"}'

のように、"$@"をわざわざ ${1+"$@"}と書く周到ぶりですが、
その反面、$0 を、"$0"じゃなく裸のまま $0 と書いちゃってます。

今はディレクトリ名にスペースを含むこともあったりするし、
ちゃんと "$0" と記述したものを出力するべきじゃないでしょうか。
逆に、$0で桶なら、${1+"$@"}だけ拘っているのが、
クォリティ的にちぐはぐに思います。

識者の意見求む。
0706名無しさん@お腹いっぱい。2005/07/22(金) 21:31:01
今はディレクトリ名にスペースを含むこともあったりするし、
0707名無しさん@お腹いっぱい。2005/07/22(金) 21:36:07
藤岡弘、
0708名無しさん@お腹いっぱい。2005/07/22(金) 21:44:56
確かに「今は」の意味が分からんな
0709名無しさん@お腹いっぱい。2005/07/22(金) 22:21:07
Sambaで共有して、エクスプローラーでフォルダーを作ったりもするから、
"/usr/local/Program Files" の下にシェルスクリプトがあったり
するんじゃないの?
0710名無しさん@お腹いっぱい。2005/07/22(金) 22:41:00
Sambaなんて10年前からあるじゃん
0711名無しさん@お腹いっぱい。2005/07/22(金) 22:42:03
>>707
http://www.wwwwwwwwww.net/1/soko/VIP00991.JPG
0712名無しさん@お腹いっぱい。2005/07/22(金) 22:44:46
10年前は今じゃないの?
0713名無しさん@お腹いっぱい。2005/07/22(金) 22:50:12
10年前と今の区別がつかない老人がいるスレはここですか?
0714名無しさん@お腹いっぱい。2005/07/22(金) 22:53:05
>>705
a2pのバグと思われ。(s2pもそうかな)
所詮perlのおまけソフトなので、
それがperlクオリティー。
0715名無しさん@お腹いっぱい。2005/07/23(土) 02:08:25
${1+"$@"}の意味がわかりません (><)
0716名無しさん@お腹いっぱい。2005/07/23(土) 07:42:24
>715 >293-
0717sasasa2005/07/23(土) 12:17:12
別のスクリプトをlsという名前に変えた際に正しいlsが表示されるようにするにはどうすればいいのでしょう?
0718名無しさん@お腹いっぱい。2005/07/23(土) 12:18:39
command ls
0719名無しさん@お腹いっぱい。2005/07/23(土) 12:30:13
>>717
その、新しいスクリプトのlsが存在するディレクトリに
先にPATHを通す。

PATH=/home/hoge/bin:$PATH; export PATH

とか。
(csh系は糞なので敢えて説明はしないがrehash等が必要)

>>718 はアフォなので無視。
# commandコマンドの動作を勘違いしてるようだし、
# command自体、Bourneシェルでは使えない

あ、「正しいls」というのが、「元の標準のls」という意味なら、
/bin/ls と、フルパスで実行する。
0720名無しさん@お腹いっぱい。2005/07/23(土) 12:36:58
>>719
(゚Д゚)ハァ?
0721名無しさん@お腹いっぱい。2005/07/23(土) 12:38:58
>>719
(゚Д゚)ハァ?
0722名無しさん@お腹いっぱい。2005/07/23(土) 12:59:06
>>718
lsがシェル関数だとcommand lsで回避できますが、
スクリプトだとだめでした。

>>719
ありがとうございます。
やっぱり絶対PATHしかないんですね。
0723sasasa2005/07/23(土) 13:16:11
あとプロファイルにおいて
"
'
`
の意味って何を意味しているんですか?
0724名無しさん@お腹いっぱい。2005/07/23(土) 13:20:29
>>723
'"` はクォートという。
質問が基本的過ぎるので、
man shして、クォートの欄を読むか、
シェルスクリプトの参考書のクォートの欄を読め。
ここでの質問はもっと具体的なものでよろしこ。
0725名無しさん@お腹いっぱい。2005/07/23(土) 13:30:51
>>723
たとえば、
rm -rf /
は危険なコマンドとして有名だが、
' 'を使って、 'rm -rf /' とすると、
スペースを含めて「rm -rf /」という名前のコマンドとみなされるので、
実行しても、

# 'rm -rf /'
rm -rf /: No such file or directory

と、エラーになるので全く安全。

では練習問題。' 'を ` ` に変えて

# `rm -rf /`

をやってみよう。
0726名無しさん@お腹いっぱい。2005/07/23(土) 13:37:28
>>725
これはひどい練習問題だ。
0727名無しさん@お腹いっぱい。2005/07/23(土) 13:39:38
しかもプロンプトが#でいやらしいぜ
0728名無しさん@お腹いっぱい。2005/07/23(土) 14:03:50
>>725
全く安全というか、意味ねーし
0729名無しさん@お腹いっぱい。2005/07/23(土) 14:04:34
>>728
(゜Д゜)ハァ?
0730名無しさん@お腹いっぱい。2005/07/23(土) 14:37:16
>>725
お前、意地悪だな
0731名無しさん@お腹いっぱい。2005/07/23(土) 14:47:26
>>723
課題の内容をここで聞いてるのか・・・・。
ちなみにきっと俺とお前は同じ大学だろう。
0732名無しさん@お腹いっぱい。2005/07/23(土) 14:54:24
>>717
http://pc8.2ch.net/test/read.cgi/unix/1119703835/573
0733名無しさん@お腹いっぱい。2005/07/23(土) 15:43:56
>>725
ぷげら
0734名無しさん@お腹いっぱい。2005/07/25(月) 00:07:31
質問させてください。

特定のディレクトリを次々にバックアップするために、
コピー元 => コピー先
のペアをリスト化してループ処理させたいのですが、
どのように記述すればよいのでしょうか。
0735名無しさん@お腹いっぱい。2005/07/25(月) 00:09:40
なにしたいのかいまいちわからんが
find でがんばる、とか?
0736名無しさん@お腹いっぱい。2005/07/25(月) 00:16:59
>>734
なんだいな?backuplistファイルの内容が
source1 dest1
source2 dest2
...
とかなってたら、
cat backuplist | while read source dest
do
cp $source $dest
done
とかでいいじゃん。cpの代わりにtarなりcpioなり、cp -aなり、好きにして。
0737名無しさん@お腹いっぱい。2005/07/25(月) 00:17:07
>>735
えーと、

list={
. { /hoge/hoge1 => /fugo/fugoA }
. { /hoge/hoge2 => /fugo/fugoB }
. { /hoge/hoge3 => /fugo/fugoC }
}

foreach ( pair in list )
. コピー等の処理 pair[0] , pair[1]

みたいなことをしたいんです。


0738名無しさん@お腹いっぱい。2005/07/25(月) 00:18:04
>>736
まさにそれです^^
ありがとうございました。
0739名無しさん@お腹いっぱい。2005/07/25(月) 00:50:55
joinとpasteの違いってなんですか?
0740名無しさん@お腹いっぱい。2005/07/25(月) 01:00:25
man join
man paste
0741名無しさん@お腹いっぱい。2005/07/25(月) 10:19:39
>>725
そんな餌に釣られるクマー!


linuxが起動しなくなったんですけど(><)
0742名無しさん@お腹いっぱい。2005/07/25(月) 21:08:56
>>741
エラーが出るよ。
0743名無しさん@お腹いっぱい。2005/07/26(火) 01:00:43
すみません、質問があります。
mvコマンドで、一度に移動できるファイル数には上限があるのでしょうか?
最大で99999個のファイルを移動できるのか調査しているのですが・・・・

catコマンドが一度に1000件づつしか処理できないようなのですが。
ご存知の方がおりましたらどうぞよろしくお願いします。
0744名無しさん@お腹いっぱい。2005/07/26(火) 01:22:27
mv自身はintの上限-2個まで移動できると思う
0745名無しさん@お腹いっぱい。2005/07/26(火) 01:41:35
>>743
そんな調査するより xargs を使うべきじゃないの。
07467432005/07/26(火) 02:21:40
>>744 そうですか、それなら可能ですかね。。。?アドバイスありがとうございます。

>>743 xargsですか。ちょっと知らないコマンドですが、調べてみますね。レス感謝です。
0747名無しさん@お腹いっぱい。2005/07/26(火) 02:21:47
>>743
find /usr/include -name '*.h'|xargs grep ARG_MAX
0748名無しさん@お腹いっぱい。2005/07/26(火) 02:40:21
getconf ARG_MAX
0749名無しさん@お腹いっぱい。2005/07/26(火) 02:46:40
>>743
こういったことの周りの知識を知らないのも問題だが、
知識不足なのにいたずらに限界に挑戦しようとする方も問題。
知識不足なら知識不足なりに秘孔をついてしまわぬよう安全策をとるのが一つの見識。
0750名無しさん@お腹いっぱい。2005/07/26(火) 07:55:30
>>745
確かに xargs -n で引数を分割して実行できるが、
xargsはスペースや改行等を含んだファイル名を
正しく扱えないという、仕様上のバグがあるので、
xargs自体obsolete or deprecated。

xargs -0 (xargs --null)が使えるのはGNU xargsだけなので、
一般には使えないと考えるべき。
0751名無しさん@お腹いっぱい。2005/07/26(火) 09:42:40
逆に、ファイル名に問題あるのが確実にない状況なら十分使える。
でなきゃ GNU の入れりゃいいじゃん。
0752名無しさん@お腹いっぱい。2005/07/26(火) 09:44:18
>>750
だけではない。
0753名無しさん@お腹いっぱい。2005/07/26(火) 09:47:48
>>752
何が?
0754名無しさん@お腹いっぱい。2005/07/26(火) 09:59:11
(xargs -0 (xargs --null)が使えるのはGNU xargs)だけではない。
0755名無しさん@お腹いっぱい。2005/07/26(火) 11:01:49
>>751
「ファイル名に問題ないことが確実」な状況って、
自分の作業用ディレクトリ下で、
書き捨てスクリプトを書く場合くらいしかないぞ。
ユーザー開放のディレクトリ以下を一括処理したい場合、
どういうファイルネームが存在するかの仮定をしちゃいけないし、
GNU物を勝手に入れるのも禁止だから、
結局xargsなんて使えん、のが結論。
0756名無しさん@お腹いっぱい。2005/07/26(火) 11:03:45
>>755
勝手に入れちゃだめならしかるべき手続きを踏めばいいじゃない。
0757名無しさん@お腹いっぱい。2005/07/26(火) 11:11:25
ユーザー開放のディレクトリ以下を一括処理したい、と仮定されました。
0758名無しさん@お腹いっぱい。2005/07/26(火) 12:30:03
まあWindowsユーザは空白含みとか日本語ファイル名は普通に平気で付けるしな
特にSambaサーバにしてるならそういうファイル名は全然珍しくないわな
0759名無しさん@お腹いっぱい。2005/07/26(火) 16:14:40
自分も windows では日本語空白記号なんでも使うな。
0760名無しさん@お腹いっぱい。2005/07/26(火) 16:24:47
そこで、zargs ですよ。
0761名無しさん@お腹いっぱい。2005/07/26(火) 17:55:03
>>750

Solaris 9 だと空白は大丈夫だし、改行も \ でエスケープすれば問題なしですが。

$ /bin/echo 'a b\nc\\\nd' | xargs -L 1 -I '{}' /bin/echo "'{}'"
{a b}
{c
d}
0762名無しさん@お腹いっぱい。2005/07/26(火) 17:56:12
>>761
いまどきSolaris使っている馬鹿ってpupupu−−−
0763名無しさん@お腹いっぱい。2005/07/26(火) 18:23:08
>>762
「Soralis」と書けばよかったのに
0764名無しさん@お腹いっぱい。2005/07/28(木) 08:09:48
>>761

xargsの-L 1オプション使ったら、
1行ごとにコマンド(echo)が実行されてしまうから、
元質問の、「まとめて処理」ができないだろ。

それに、「改行を \ でエスケープ」と言っても、
そう都合良く findで出力できないだろ。

さらに、ファイル名に普通の文字として、
" や ' や \ などが含まれていると
やっぱり駄目だろ。

よって、xargsは使えん。
0765名無しさん@お腹いっぱい。2005/07/28(木) 08:23:23
改行文字がファイル名に含まれてるケースって、そんなにあるか?
基本的にそれは考慮せんでもいいと思うんだが
0766名無しさん@お腹いっぱい。2005/07/28(木) 09:24:00
ファイル名にはヌル文字も使えなかったっけ?
だとしたら xargs -0 も完全な解決策にはならないが。
0767名無しさん@お腹いっぱい。2005/07/28(木) 10:05:15
>>766
ファイル名にnull文字は使えねーよ。
だからxargs -0が最もマトモな解決法なのだが、
Solarisとかで使えないから問題になってるんだよ。
0768名無しさん@お腹いっぱい。2005/07/28(木) 10:10:17
>>765
改行は滅多にないとしても、
ファイル名に ' " \ などが含まれているのは
よくある。
「Don't Cry.mp3」とかね。

xargsが ' " \ を特殊文字扱いするのが問題になる。
0769名無しさん@お腹いっぱい。2005/07/28(木) 11:46:07
>>768
xargsが単純に改行をセパレータとして扱うような
プログラムだったなら、はるかにマシだっただろうね
0770名無しさん@お腹いっぱい。2005/07/28(木) 14:45:33
大学のマシンに xargs が なぜか /usr/local/X11/bin にあったのを思い出した
0771名無しさん@お腹いっぱい。2005/07/28(木) 14:50:42
>770
あっ、そんな記憶ある。
NEWS-OS 4 (3かな?) じゃないかな。
0772名無しさん@お腹いっぱい。2005/07/28(木) 18:31:44
NEWS-OS 4は xargs が付属していないね。
/usr/5binにすらない。
(/usr/5bin/cpioとかならある・・ちなみにunameもない・・)
まあ、xargsは元SysV系ということで、
「使わなくても済むはずのコマンド」の扱いだったのだろう。
07737612005/07/28(木) 19:56:55
>>764

761 で -L 1 を付けたのは、この例だと 1 行ずつ処理しないと
表示が分かりづらいからです。説明が悪かったですね。

改行の入ったファイル名は (find 的に) 無理ですが、
何とかすれば何とかなります。

$ touch "sp ace"
$ touch "single'quote"
$ touch 'double"quote'
$ touch 'back\slash'
$ find . -type f | sed -e 's/\\/\\\\/g' -e 's/"/\\"/g' -e 's/\(.*\)/"\1"/' | xargs /bin/sh -c 'echo "[$1][$2][$3][$4]"' --
[./sp ace][./single'quote][./double"quote][./back\slash]

ま、そこまでして使いたいかと言えば No ですが。
0774名無しさん@お腹いっぱい。2005/07/28(木) 20:27:47
>>771
たしかにマシンのほとんどはNEWSだった。記憶があやふやだったので
local をつけたけど、やはり/usr/X11/binだったのかな
07757712005/07/29(金) 00:50:15
>772, 774
記憶違いだったようで、スミマセン。
ひょっとしたら、初心者の私が
「ファイル名が x で始まるのに、どうして/usr/bin/X11にないんだ」
(笑わないでオクレ!)
と思ったのが記憶に残っていたのかもしない。
あっ、 NEWS-OSの X 関係は /usr/bin|lib/X11というのも違うかも。

近くの席にはSUN 3 が有ったなぁ。
0776名無しさん@お腹いっぱい。2005/07/29(金) 03:39:56
>>772
xargs はあった方が良いと思うんだが。
これの代わりをするには、たくさんコマンド組み合わせてやらないといかん希ガス
0777名無しさん@お腹いっぱい。2005/07/29(金) 08:14:57
よくわからんが775は771ではない。772の間違いかな。ただ、X関係の下に
あったという記憶は同じようだけど。NEWSのキーボードのタッチは好きだった。
「~」の位置のせいで痛いミスをしたことがあったが…

xargsはコマンドライン以外で使ったことがないかもしれん。
0778名無しさん@お腹いっぱい。2005/07/29(金) 08:19:04
>>776
xargsは実行時効率とタイプ量減らすためって気がする

たんに機能の話だけで言えば
cmdA | xargs cmdB

cmdA | while read i; do cmdB $i; done
でいいし(後者は効率が悪いがIFSで適切なデリミタを設定することもできる)
0779名無しさん@お腹いっぱい。2005/07/29(金) 08:28:34
いつまで引っ張る気だ。
0780名無しさん@お腹いっぱい。2005/07/29(金) 10:04:04
771=775 です。
随分昔の話なので、私の記憶が間違っていたのかと思いました。

>777
コマンドライン以外で使うxargs って、スクリプトの中に書くという事ですよね。
それとも、使いやすいGUIが有るとか? (そんなGUI 想像つかない)
# スレ違いなんで、このくらいにしておきます。 orz
0781名無しさん@お腹いっぱい。2005/07/29(金) 18:23:59
argument が無限に取れるシェルがあれば
xarg はいらないの?
0782名無しさん@お腹いっぱい。2005/07/29(金) 18:26:25
シェルが取れてもコマンドが取れなければあまりい意味が無い
■ このスレッドは過去ログ倉庫に格納されています