シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
前スレ:
シェルスクリプト総合 その28
http://mevius.5ch.net/test/read.cgi/tech/1532397676/
探検
シェルスクリプト総合 その29
■ このスレッドは過去ログ倉庫に格納されています
2018/09/21(金) 23:34:47.98ID:/eJt2TVD
153デフォルトの名無しさん
2019/04/08(月) 17:08:25.01ID:6GvfotlI154デフォルトの名無しさん
2019/04/08(月) 17:14:32.56ID:3hZl3Wdo >>152
それどれもエラーになってますよ?
それどれもエラーになってますよ?
155デフォルトの名無しさん
2019/04/08(月) 17:16:06.60ID:6GvfotlI エラーだもの。「エラーの方がわかりやすく」ってとこ?すまん変な文になった
そのままの方がわかりやすく(?)
かな。
そのままの方がわかりやすく(?)
かな。
156デフォルトの名無しさん
2019/04/08(月) 17:16:38.44ID:3hZl3Wdo157デフォルトの名無しさん
2019/04/08(月) 17:19:09.45ID:6GvfotlI ああ、「どれがエラーとして適切?」もか。「どれもエラーだがどれが適切?」というつもりだったんだが。「どれもエラーだがどれがエラメッセージとして適切?」までか
158デフォルトの名無しさん
2019/04/08(月) 17:20:08.01ID:6GvfotlI159デフォルトの名無しさん
2019/04/08(月) 17:21:42.07ID:6GvfotlI てか、またおまえか?いちいち教えてもらったのに文句つけてるんだなw
160デフォルトの名無しさん
2019/04/08(月) 17:23:26.97ID:3hZl3Wdo >>157
for i in *.txt; do rm "$i"; done
(すでに拡張子txtのファイルが全て削除されている場合)
rm: '*.txt' を削除できません: そのようなファイルやディレクトリはありません
これは適切なエラーメッセージだと思いますか?
for i in *.txt; do rm "$i"; done
(すでに拡張子txtのファイルが全て削除されている場合)
rm: '*.txt' を削除できません: そのようなファイルやディレクトリはありません
これは適切なエラーメッセージだと思いますか?
161デフォルトの名無しさん
2019/04/08(月) 17:24:20.52ID:3hZl3Wdo162デフォルトの名無しさん
2019/04/08(月) 17:24:53.61ID:6GvfotlI >>152の最後に書いてあるだろう。なんでいちいちいちいち教えなきゃならんのねん
コマンドとしては適切だろう
コマンドとしては適切だろう
163デフォルトの名無しさん
2019/04/08(月) 17:27:49.54ID:6GvfotlI >>161
いちいち教えてもらわなきゃならないのに、隙あらば文句つけるようなヤツに丁寧に教える必要はないってことだよ。社会的に一般的なことだなw
まあ、もともとはあんたに具体的に教えたくないから、あんたじゃない人に他にあるよと言ってみただけだな
てか、ぜんぜん進んでねーな。こんなやりとりしてもぜんぜん進まないよ?少しは頭を働かせて自力でやってみなさいな
いちいち教えてもらわなきゃならないのに、隙あらば文句つけるようなヤツに丁寧に教える必要はないってことだよ。社会的に一般的なことだなw
まあ、もともとはあんたに具体的に教えたくないから、あんたじゃない人に他にあるよと言ってみただけだな
てか、ぜんぜん進んでねーな。こんなやりとりしてもぜんぜん進まないよ?少しは頭を働かせて自力でやってみなさいな
164デフォルトの名無しさん
2019/04/08(月) 17:29:55.75ID:3hZl3Wdo 1. man bashにある
2. ありませんでした。
3. 他のmanにある
4. ありませんでした。
この流れか
2. ありませんでした。
3. 他のmanにある
4. ありませんでした。
この流れか
165デフォルトの名無しさん
2019/04/08(月) 17:31:26.91ID:3hZl3Wdo 日本語に訳してあげないと、書いてないことを認めなかったくせに
何言ってるんだろうね。
何言ってるんだろうね。
166デフォルトの名無しさん
2019/04/08(月) 17:31:36.42ID:6GvfotlI マジで「読めない」のな...どうしようかw
167デフォルトの名無しさん
2019/04/08(月) 17:32:31.71ID:6GvfotlI168デフォルトの名無しさん
2019/04/08(月) 17:35:16.40ID:3hZl3Wdo お前が出てくるといつも進まんよなw
169デフォルトの名無しさん
2019/04/08(月) 17:37:34.84ID:6GvfotlI あんたが進まなだけだからな、別にあんたが進まないのは俺はどうでもいいんだけど、なにか進みたがってるあんたがどう動くのかが興味ありの
なんで俺にいちいちレスしてんの?w
なんで俺にいちいちレスしてんの?w
170デフォルトの名無しさん
2019/04/08(月) 17:42:21.44ID:3hZl3Wdo > なんで俺にいちいちレスしてんの?w
お前が言ってることが嘘だからだよ。
manにそういう仕様にした理由は書いてませんでした。
お前が言ってることが嘘だからだよ。
manにそういう仕様にした理由は書いてませんでした。
171デフォルトの名無しさん
2019/04/08(月) 17:42:42.54ID:3hZl3Wdo 知らないなら、素直に知らないって言えばいいのに
172デフォルトの名無しさん
2019/04/08(月) 17:44:22.86ID:6GvfotlI173デフォルトの名無しさん
2019/04/08(月) 18:02:56.45ID:6GvfotlI 探せたか?wwまあ、探せても「読めない」可能性が高いかな
・やっぱり、探せない
・探せたが、読めなくて文句つける
・探せて、黙って逃げる
・他
どれでしょう。まあこう書いたら「他」にする可能性が高いか
・やっぱり、探せない
・探せたが、読めなくて文句つける
・探せて、黙って逃げる
・他
どれでしょう。まあこう書いたら「他」にする可能性が高いか
174デフォルトの名無しさん
2019/04/08(月) 18:16:37.06ID:3hZl3Wdo175デフォルトの名無しさん
2019/04/08(月) 18:23:16.92ID:6GvfotlI 「性懲りもなく」...「訳してあげた」んだろ
すんげええなあ、今までさんざん無能っぷりを自ら披露しているのにw 単によくレスを見なかった人がと考えはしないのね。自分がレスをよく見ないくせにw
お前のレスはぜーーーーんぶ自分内で完結している。こんな他人と交わらない方がいいんじゃないの?
呆れ果てるな。まあ、その自己の世界で妄想ダダ漏れすればいいと思うよ
すんげええなあ、今までさんざん無能っぷりを自ら披露しているのにw 単によくレスを見なかった人がと考えはしないのね。自分がレスをよく見ないくせにw
お前のレスはぜーーーーんぶ自分内で完結している。こんな他人と交わらない方がいいんじゃないの?
呆れ果てるな。まあ、その自己の世界で妄想ダダ漏れすればいいと思うよ
176デフォルトの名無しさん
2019/04/08(月) 18:24:46.51ID:3hZl3Wdo ↑ほらな。俺の言ったことを否定したいだけw
177デフォルトの名無しさん
2019/04/08(月) 18:28:18.84ID:6GvfotlI そりゃ、否定するよ。矛盾自己肯定だらけだもの
もしかして、あんたって40超えたおっさんで外人にクソガキ呼ばわりされたことない?って気になったり。まあ、違うかw
もしかして、あんたって40超えたおっさんで外人にクソガキ呼ばわりされたことない?って気になったり。まあ、違うかw
178デフォルトの名無しさん
2019/04/08(月) 18:34:08.77ID:3hZl3Wdo >>117
40超えたおっさんにクソガキ呼ばわりでもされたか?w
40超えたおっさんにクソガキ呼ばわりでもされたか?w
179デフォルトの名無しさん
2019/04/08(月) 18:34:25.94ID:3hZl3Wdo180デフォルトの名無しさん
2019/04/08(月) 18:37:29.49ID:6GvfotlI いや、そういう(一部で有名な)有名人がいてな、あんたの属性が似すぎててな。幾つかは知らんが、あんたもそのうちそうなるだろうな
年意外同じだからw 年取ればそれが変わるわけでもないぞw
年意外同じだからw 年取ればそれが変わるわけでもないぞw
181デフォルトの名無しさん
2019/04/08(月) 18:40:11.70ID:3hZl3Wdo 嫌いなやつはみんな一緒。思考回路が単純(笑)
182デフォルトの名無しさん
2019/04/08(月) 18:43:03.63ID:6GvfotlI イミフ。なんで「嫌い」とかアホなこと言っているのだか。人のふり見て我がふり直すとかあるでしょ?そういう意味だよ、そういう有名人
誰ともわからないハズなのに「嫌い」とだけの理由にできるとは...さては...ww
誰ともわからないハズなのに「嫌い」とだけの理由にできるとは...さては...ww
183デフォルトの名無しさん
2019/04/08(月) 18:45:02.15ID:3hZl3Wdo はいはい。話戻すぜ。
ファイルが見つからない時になぜ * を返すのか?
そういう仕様にした理由
^^^^^^^^^^^^^^^^^^^^^^
manに書いてあるそーです。やつのたわごとを信じる人は
(ネットじゃなくて)manの中から探してみてください。
信じない or 信じたけど裏切られたら、
ここにmanの場所が書かれることはないでしょう(予言)
ファイルが見つからない時になぜ * を返すのか?
そういう仕様にした理由
^^^^^^^^^^^^^^^^^^^^^^
manに書いてあるそーです。やつのたわごとを信じる人は
(ネットじゃなくて)manの中から探してみてください。
信じない or 信じたけど裏切られたら、
ここにmanの場所が書かれることはないでしょう(予言)
184デフォルトの名無しさん
2019/04/08(月) 18:46:10.94ID:6GvfotlI ・やっぱり、探せない
か... うん、なんかよかったww
じゃ、がんばれよ
か... うん、なんかよかったww
じゃ、がんばれよ
185デフォルトの名無しさん
2019/04/08(月) 18:50:10.35ID:3hZl3Wdo186デフォルトの名無しさん
2019/04/08(月) 18:56:04.68ID:6GvfotlI ほんと「読めないのな」。よかったはそういう意味じゃない
わざとかと思えなくもないけど、いままでの「読めなさ」からはわざとではないとしか思えない
どう見ても、お前の都合のよいことだな、さすがだよ
場所のレスもらえればお前がいままで知りたかったことがわかり、黙って逃げるだけw(そこにお前の苦悩とかなさげ)
もらえなかったら、お前の中では自己肯定の補強にになるだけとういう。間違いでもな
しょうがないな、1ヶ月後に教えてやるよw何もなかったら1ヶ月後に、この話題はw
わざとかと思えなくもないけど、いままでの「読めなさ」からはわざとではないとしか思えない
どう見ても、お前の都合のよいことだな、さすがだよ
場所のレスもらえればお前がいままで知りたかったことがわかり、黙って逃げるだけw(そこにお前の苦悩とかなさげ)
もらえなかったら、お前の中では自己肯定の補強にになるだけとういう。間違いでもな
しょうがないな、1ヶ月後に教えてやるよw何もなかったら1ヶ月後に、この話題はw
187デフォルトの名無しさん
2019/04/08(月) 19:02:14.14ID:3hZl3Wdo なんなら一年後でいいんやで?w
188デフォルトの名無しさん
2019/04/08(月) 19:09:11.60ID:6GvfotlI イミフ。下衆い意味で言っていそうではあるがwじゃ、適当な時にな
189デフォルトの名無しさん
2019/04/08(月) 19:20:16.01ID:3hZl3Wdo それまで別の話題でお会いしましょう(笑)
あ、他の人、manにないのは明らかなんで探さなくていいですよ〜w
時間の無駄でしょうし。
あ、他の人、manにないのは明らかなんで探さなくていいですよ〜w
時間の無駄でしょうし。
190デフォルトの名無しさん
2019/04/08(月) 19:24:11.57ID:3hZl3Wdo __ - ____ ________ - ___
191デフォルトの名無しさん
2019/04/08(月) 21:48:40.20ID:9U0C5XME >>136
bashがそういう仕様にした理由は, shにあわせたからです.
shがそういう動作をする理由は, expand()が0をかえしたときはもとの引数文字列でmakearg()するようにつくられているからです. おそらく, そういう仕様をきめてからそういう動作をさせたわけではないとおもいます.
bashがそういう仕様にした理由は, shにあわせたからです.
shがそういう動作をする理由は, expand()が0をかえしたときはもとの引数文字列でmakearg()するようにつくられているからです. おそらく, そういう仕様をきめてからそういう動作をさせたわけではないとおもいます.
192デフォルトの名無しさん
2019/04/08(月) 22:28:59.33ID:Ejuihx1D ようやくまともなレスがw
>>191
その動き(expandやmakearg)はソースコードから?
補足しておくと俺は「"bashは"なぜそうしたのか?」とは
聞いてなくて、シェルスクリプト(元をたどればsh?)が
どうしてそういう動作をするのかの理由を聞いてる。
で、それは特に理由はないのかな?たまたま最初の実装した人が
あまり考えず、そうしましたぐらいの理由で。
だから理由を探しても見つからないと
>>191
その動き(expandやmakearg)はソースコードから?
補足しておくと俺は「"bashは"なぜそうしたのか?」とは
聞いてなくて、シェルスクリプト(元をたどればsh?)が
どうしてそういう動作をするのかの理由を聞いてる。
で、それは特に理由はないのかな?たまたま最初の実装した人が
あまり考えず、そうしましたぐらいの理由で。
だから理由を探しても見つからないと
193デフォルトの名無しさん
2019/04/08(月) 22:36:01.12ID:Ejuihx1D まとめ
for i in *.txt; do
echo "$i"
done
何もファイルがないディレクトリで↑を実行すると
「*.txt」 というファイルが見つかったかのような動きをします。
「*.txt」というファイルだけがあるディレクトリで実行すると
全く同じように「*.txt」 というファイル名が表示されます。
つまり空ディレクトリでも「*.txt」というファイルがあっても
表示結果が全く同じになります。これは驚き最小の原則に反しています。
for i in *.txt; do
echo "$i"
done
何もファイルがないディレクトリで↑を実行すると
「*.txt」 というファイルが見つかったかのような動きをします。
「*.txt」というファイルだけがあるディレクトリで実行すると
全く同じように「*.txt」 というファイル名が表示されます。
つまり空ディレクトリでも「*.txt」というファイルがあっても
表示結果が全く同じになります。これは驚き最小の原則に反しています。
194デフォルトの名無しさん
2019/04/08(月) 22:57:42.88ID:b/SlAWxT195デフォルトの名無しさん
2019/04/08(月) 23:22:25.12ID:Ih2qq+NP の、POSIXのところは
http://pubs.opengroup.org/onlinepubs/009695299/functions/glob.html
GLOB_NOCHECK
かな?オプション名が意図不明だが説明文からは
http://pubs.opengroup.org/onlinepubs/009695299/functions/glob.html
GLOB_NOCHECK
かな?オプション名が意図不明だが説明文からは
196デフォルトの名無しさん
2019/04/08(月) 23:37:03.41ID:8H4AhNTa >>194
これを読んでも同じ結論になるわけだけど
> 先に与えた、わかりやすく簡単なルール、 「ワイルドカードパターンをマッチしたパス名のリストに展開する」と言うのは、
> オリジナルの UNIX における定義であった。 これはパターンが空のリストに展開されることも許可されていた。 例えば
略
> において、*.gif ファイルが全くない場合でも、 これは空のリストに展開されるため、エラーにならない。
> しかし POSIX では、文法的に正しくないパターンや、 マッチがなかったパターンは、 そのまま変更されずに残されることになっている。
なぜ、わかり易く簡単なルールを捨てて、POSIXでは「そのまま変更されずに残されることになっている。 」を
選んだのかが書かれてないんだよね。
これを読んでも同じ結論になるわけだけど
> 先に与えた、わかりやすく簡単なルール、 「ワイルドカードパターンをマッチしたパス名のリストに展開する」と言うのは、
> オリジナルの UNIX における定義であった。 これはパターンが空のリストに展開されることも許可されていた。 例えば
略
> において、*.gif ファイルが全くない場合でも、 これは空のリストに展開されるため、エラーにならない。
> しかし POSIX では、文法的に正しくないパターンや、 マッチがなかったパターンは、 そのまま変更されずに残されることになっている。
なぜ、わかり易く簡単なルールを捨てて、POSIXでは「そのまま変更されずに残されることになっている。 」を
選んだのかが書かれてないんだよね。
197デフォルトの名無しさん
2019/04/08(月) 23:45:50.70ID:Ih2qq+NP ・探せたが、読めなくて文句つける
か... 探してじゃなくてっぽいけどw
書いてあることが。読めれば」>>152もわかるだろうに。どういう意味で言ったかわからん最小の原則wとかやらにあっているだろう
まあ、単に「認めたくない」だけだろな
何か他にファイルなどがあるとこで、*.hogeなんてファイルがなかったとしよう、
ls *.hoge
でどう動くのが望ましい?この例「だけ」に噛み付くのじゃなく、ちゃんと頭を使って考えような
か... 探してじゃなくてっぽいけどw
書いてあることが。読めれば」>>152もわかるだろうに。どういう意味で言ったかわからん最小の原則wとかやらにあっているだろう
まあ、単に「認めたくない」だけだろな
何か他にファイルなどがあるとこで、*.hogeなんてファイルがなかったとしよう、
ls *.hoge
でどう動くのが望ましい?この例「だけ」に噛み付くのじゃなく、ちゃんと頭を使って考えような
198デフォルトの名無しさん
2019/04/08(月) 23:50:01.35ID:8H4AhNTa199デフォルトの名無しさん
2019/04/08(月) 23:52:32.47ID:8H4AhNTa >>197
ついでだから、ファイルが見つからない時
for i in *.txt; do
echo "$i"
done
はどう動くのが望ましいか書いてくれよ。
今の動きや仕様を書くんじゃなくて
どう動くのが望ましいかをね
ついでだから、ファイルが見つからない時
for i in *.txt; do
echo "$i"
done
はどう動くのが望ましいか書いてくれよ。
今の動きや仕様を書くんじゃなくて
どう動くのが望ましいかをね
200デフォルトの名無しさん
2019/04/08(月) 23:53:17.08ID:Ih2qq+NP ほんとに脊髄だけで、頭使わないのな
POSIXはシェルスクリプトだけを考えてるわけではないのだよ
ls *.a *.c *.c
で、どれかがあってどれかが無い場合の動作は?よくそれで頭使ってる風に言えるもんだ。
POSIXはシェルスクリプトだけを考えてるわけではないのだよ
ls *.a *.c *.c
で、どれかがあってどれかが無い場合の動作は?よくそれで頭使ってる風に言えるもんだ。
201デフォルトの名無しさん
2019/04/08(月) 23:54:01.05ID:8H4AhNTa202デフォルトの名無しさん
2019/04/08(月) 23:54:41.62ID:QfzJZ21c Ruby のglob を使った方が、バグらないので良い!
203デフォルトの名無しさん
2019/04/08(月) 23:55:27.24ID:8H4AhNTa 空のディレクトリで実行するとこうなるのかw
$ ls *.a *.c *.c
ls: '*.a' にアクセスできません: そのようなファイルやディレクトリはありません
ls: '*.c' にアクセスできません: そのようなファイルやディレクトリはありません
ls: '*.c' にアクセスできません: そのようなファイルやディレクトリはありません
$ ls *.a *.c *.c
ls: '*.a' にアクセスできません: そのようなファイルやディレクトリはありません
ls: '*.c' にアクセスできません: そのようなファイルやディレクトリはありません
ls: '*.c' にアクセスできません: そのようなファイルやディレクトリはありません
204デフォルトの名無しさん
2019/04/08(月) 23:58:38.45ID:8H4AhNTa 多分あいつは、
> この例「だけ」
のことしか考えてない予感がするなw
> この例「だけ」
のことしか考えてない予感がするなw
205デフォルトの名無しさん
2019/04/09(火) 00:00:36.62ID:cRtn1aSe >>202
そうだね。ファイルが見つからないときは
ちゃんと空のリストを返してくれる。
シェルスクリプトのように、「*」を返すことはないね。
irb(main):001:0> Dir.glob('*')
=> []
そうだね。ファイルが見つからないときは
ちゃんと空のリストを返してくれる。
シェルスクリプトのように、「*」を返すことはないね。
irb(main):001:0> Dir.glob('*')
=> []
206デフォルトの名無しさん
2019/04/09(火) 00:01:15.03ID:cRtn1aSe ID変わったけど、俺が ID:8H4AhNTa な
207デフォルトの名無しさん
2019/04/09(火) 00:01:53.02ID:b0dEtQwc まだ、ゴネてる。自分の思ったようにならないってだけでよくそれだけ粘れるな
POSIXの仕様に意味があるのはさんざん言った。お前が認めたくないなんて知ったこっちゃない
POSIXの仕様に合わせてそんなのが動くように普通に書けるし、嫌だったらbashのオプションであんたの好きにできるだろうに
>>201
ls: : No such file or directory
ls: : No such file or directory
ls: : No such file or directory
って、出て来るのが望ましいのね
ls: *.a: No such file or directory
ls: *.b: No such file or directory
ls: *.c: No such file or directory
POSIXの人も俺と同じだと思うよw
>>203
イミフ。なにを言いたいの?
なんで、いちいちいちいちいちいち説明教えなきゃならいないねん
POSIXの仕様に意味があるのはさんざん言った。お前が認めたくないなんて知ったこっちゃない
POSIXの仕様に合わせてそんなのが動くように普通に書けるし、嫌だったらbashのオプションであんたの好きにできるだろうに
>>201
ls: : No such file or directory
ls: : No such file or directory
ls: : No such file or directory
って、出て来るのが望ましいのね
ls: *.a: No such file or directory
ls: *.b: No such file or directory
ls: *.c: No such file or directory
POSIXの人も俺と同じだと思うよw
>>203
イミフ。なにを言いたいの?
なんで、いちいちいちいちいちいち説明教えなきゃならいないねん
208デフォルトの名無しさん
2019/04/09(火) 00:12:14.14ID:cRtn1aSe209デフォルトの名無しさん
2019/04/09(火) 00:12:42.47ID:cRtn1aSe >>207
やっぱりlsの例だけしか考えてないようだね
やっぱりlsの例だけしか考えてないようだね
210デフォルトの名無しさん
2019/04/09(火) 00:15:06.05ID:b0dEtQwc その例だけなら、回らないのが望ましいだろな。だが、POSIXはシェルスクリプトだけを考えてるわけではないからしょうがないうちだろな
で?
で?
211デフォルトの名無しさん
2019/04/09(火) 00:16:54.68ID:b0dEtQwc >>209
何を言いたいのかわからんな。どゆこと?まさか「正確」と同じパターンじゃないよな?その気しか思えないので具体的に言って
何を言いたいのかわからんな。どゆこと?まさか「正確」と同じパターンじゃないよな?その気しか思えないので具体的に言って
212デフォルトの名無しさん
2019/04/09(火) 00:18:30.84ID:cRtn1aSe ついでにPHPの場合
$ php -r "print_r(glob('*'));"
Array
(
)
Perlの場合
perl -MData::Dumper -e 'print Dumper [glob "*"]'
$VAR1 = [];
Rubyと同じく、見つからない場合は
デフォルトでは空のリストが帰ってくる。
$ php -r "print_r(glob('*'));"
Array
(
)
Perlの場合
perl -MData::Dumper -e 'print Dumper [glob "*"]'
$VAR1 = [];
Rubyと同じく、見つからない場合は
デフォルトでは空のリストが帰ってくる。
213デフォルトの名無しさん
2019/04/09(火) 00:19:17.64ID:cRtn1aSe >>210
さっきから
> POSIXはシェルスクリプトだけを考えてるわけではないから
を繰り返してるけど、シェルスクリプト以外とは何の話をしてるの?
そして、シェルスクリプト以外ではどうだって言いたいの?
さっきから
> POSIXはシェルスクリプトだけを考えてるわけではないから
を繰り返してるけど、シェルスクリプト以外とは何の話をしてるの?
そして、シェルスクリプト以外ではどうだって言いたいの?
214デフォルトの名無しさん
2019/04/09(火) 00:20:20.88ID:cRtn1aSe215デフォルトの名無しさん
2019/04/09(火) 00:20:53.10ID:b0dEtQwc >>213
マジか...
マジか...
216デフォルトの名無しさん
2019/04/09(火) 00:21:12.57ID:cRtn1aSe >>215
逃げるなよ
逃げるなよ
217デフォルトの名無しさん
2019/04/09(火) 00:24:19.08ID:b0dEtQwc >>214
ああ、なんだ「シェルスクリプト」の(それも特定な)場合か。「ls」なんて言ってるから他のコマンドとかと思ったぞ
POSIXはシェルスクリプトだけを考えてるわけではないからw
話にならない、POSIXを勉強して出直してね
ああ、なんだ「シェルスクリプト」の(それも特定な)場合か。「ls」なんて言ってるから他のコマンドとかと思ったぞ
POSIXはシェルスクリプトだけを考えてるわけではないからw
話にならない、POSIXを勉強して出直してね
218デフォルトの名無しさん
2019/04/09(火) 00:24:33.50ID:cRtn1aSe C言語めんどくせーなーと思ったら、サクッとソースコード見つかった。
https://qiita.com/sassy_watson/items/03c16bd03b56e5579477
↑のコードの ./*.txt を * に変換したけど、
やはり、空のディレクトリで * と表示されることはなく
何も表示されなかった。
POSIXってほんと何を言いたいんだろう?
https://qiita.com/sassy_watson/items/03c16bd03b56e5579477
↑のコードの ./*.txt を * に変換したけど、
やはり、空のディレクトリで * と表示されることはなく
何も表示されなかった。
POSIXってほんと何を言いたいんだろう?
219デフォルトの名無しさん
2019/04/09(火) 00:25:50.97ID:b0dEtQwc220デフォルトの名無しさん
2019/04/09(火) 00:26:21.07ID:cRtn1aSe POSIXはシェルスクリプトだけを〜とか、じゃあC言語のことなんですかねぇ
でもC言語でも空のディレクトリで * が返ってくることはないし
ほんと何が言いたいんだかw
でもC言語でも空のディレクトリで * が返ってくることはないし
ほんと何が言いたいんだかw
221デフォルトの名無しさん
2019/04/09(火) 00:27:47.89ID:cRtn1aSe POSIXはシェルスクリプトだけを考えてるわけではないから
→ Ruby・・・空の配列を返す
→ Perl・・・空の配列を返す
→ PHP・・・空の配列を返す
→ C言語・・・空の配列を返す
シェルスクリプト以外は空の配列を返します。
→ Ruby・・・空の配列を返す
→ Perl・・・空の配列を返す
→ PHP・・・空の配列を返す
→ C言語・・・空の配列を返す
シェルスクリプト以外は空の配列を返します。
222デフォルトの名無しさん
2019/04/09(火) 00:28:27.37ID:b0dEtQwc223デフォルトの名無しさん
2019/04/09(火) 00:29:23.15ID:b0dEtQwc 以後、脊髄反射マンと呼ぶからなw
224デフォルトの名無しさん
2019/04/09(火) 00:29:27.03ID:cRtn1aSe >>222
またそれか。よく読んでも、そうした理由は書いてない。
またそれか。よく読んでも、そうした理由は書いてない。
225デフォルトの名無しさん
2019/04/09(火) 00:29:47.10ID:cRtn1aSe >>223
脊髄反射マン必死だなw
脊髄反射マン必死だなw
226デフォルトの名無しさん
2019/04/09(火) 00:31:21.79ID:b0dEtQwc Supports rule 3 in the Shell and Utilities volume of IEEE Std 1003.1-2001, Section 2.13.3, Patterns Used for Filename Expansion.
227デフォルトの名無しさん
2019/04/09(火) 00:32:12.65ID:b0dEtQwc >>225
モロ体現してありがたい。オモロイなあんたは
モロ体現してありがたい。オモロイなあんたは
228デフォルトの名無しさん
2019/04/09(火) 00:32:37.61ID:cRtn1aSe229デフォルトの名無しさん
2019/04/09(火) 00:34:36.17ID:b0dEtQwc >>228
言っているけど。「読めれば」そう書いてあるんだけどな。「読めない読めない」言われてもしょうがない
あんただって、「空」だったらマズいときもあるって認めてるやん
本当にただただ「認めたくない」だけなんだな。その「コロ」っとあんたの原点に戻るあたり
まあ、がんばりや
言っているけど。「読めれば」そう書いてあるんだけどな。「読めない読めない」言われてもしょうがない
あんただって、「空」だったらマズいときもあるって認めてるやん
本当にただただ「認めたくない」だけなんだな。その「コロ」っとあんたの原点に戻るあたり
まあ、がんばりや
230デフォルトの名無しさん
2019/04/09(火) 00:35:06.66ID:cRtn1aSe そして面白いのが、シェルスクリプトは glob で見つからない場合に
検索パターンを返すのに対して、シェルスクリプト以外では
見つからない場合に、空のリストを返すって所だな。
検索パターンを返すのに対して、シェルスクリプト以外では
見つからない場合に、空のリストを返すって所だな。
231デフォルトの名無しさん
2019/04/09(火) 00:37:41.48ID:cRtn1aSe >>229
お前、マズイときもあるし、マズくない時もあるって
自分で認めてるやんw
ということはお前の主張は、所詮マズイときの例でしかなく
マズくない時には当てはまらないってことになるんだぞ
わかってるのか?お前の主張が崩れてるの
で、シェルスクリプト以外は空のリストを返しているのに
シェルスクリプトだけは、見つからなかった時に * という
文字列を返すという仕様にした理由は?
お前、マズイときもあるし、マズくない時もあるって
自分で認めてるやんw
ということはお前の主張は、所詮マズイときの例でしかなく
マズくない時には当てはまらないってことになるんだぞ
わかってるのか?お前の主張が崩れてるの
で、シェルスクリプト以外は空のリストを返しているのに
シェルスクリプトだけは、見つからなかった時に * という
文字列を返すという仕様にした理由は?
232デフォルトの名無しさん
2019/04/09(火) 00:39:30.00ID:cRtn1aSe 結局、一番マトモな理由は >>191が書いた
> おそらく, そういう仕様をきめてからそういう動作をさせたわけではないとおもいます.
これだけなんだよな。特に理由はない。
(深く考えずに)そうしてしまった。
もちろん、正式なドキュメントとして
この理由が、書かれている文書は見つかってないがね。
> おそらく, そういう仕様をきめてからそういう動作をさせたわけではないとおもいます.
これだけなんだよな。特に理由はない。
(深く考えずに)そうしてしまった。
もちろん、正式なドキュメントとして
この理由が、書かれている文書は見つかってないがね。
233デフォルトの名無しさん
2019/04/09(火) 00:42:08.93ID:cRtn1aSe あ、みなさん。もし ID:b0dEtQwc を擁護したい人がいるならば
ID:b0dEtQwc が示したドキュメントの中から、
「そういう仕様にした"理由"」を書いてある所を指摘して構わないんですよ?
ないでしょう? 誰も指摘しないもんね。それが証拠だよ。
ID:b0dEtQwc が示したドキュメントの中から、
「そういう仕様にした"理由"」を書いてある所を指摘して構わないんですよ?
ないでしょう? 誰も指摘しないもんね。それが証拠だよ。
234デフォルトの名無しさん
2019/04/09(火) 00:42:13.89ID:b0dEtQwc 何言っているの?
>この仕様、なにか便利なの?
が、お前の原点だろ?それ以後「認めなたくない」のであーだこーだ言っているだけだな
>この仕様、なにか便利なの?
が、お前の原点だろ?それ以後「認めなたくない」のであーだこーだ言っているだけだな
235デフォルトの名無しさん
2019/04/09(火) 00:43:58.23ID:b0dEtQwc とうとう誰とも言えない人に頼るようになったか...ww
236デフォルトの名無しさん
2019/04/09(火) 00:46:08.72ID:cRtn1aSe237デフォルトの名無しさん
2019/04/09(火) 00:50:22.73ID:b0dEtQwc >>236
流れというかレスを読めないあんたに言われたくないw
いや、原点の話でしかないな。あんたの都合に(それもあんたの都合の良いようになだけな)合わせる必要性はこれっぽちもないな
とりあえず、原点の問題は解消した&マズい場合もあるそれが理由ってことも解消したってことで、おしまい
流れというかレスを読めないあんたに言われたくないw
いや、原点の話でしかないな。あんたの都合に(それもあんたの都合の良いようになだけな)合わせる必要性はこれっぽちもないな
とりあえず、原点の問題は解消した&マズい場合もあるそれが理由ってことも解消したってことで、おしまい
238デフォルトの名無しさん
2019/04/09(火) 00:51:41.47ID:cRtn1aSe https://linuxjm.osdn.jp/html/LDP_man-pages/man7/glob.7.html
> において、*.gif ファイルが全くない場合でも、 これは空のリストに展開されるため、エラーにならない。
> しかし POSIX では、文法的に正しくないパターンや、 マッチがなかったパターンは、 そのまま変更されずに残されることになっている。
> bash では、次のコマンドで昔からの振る舞いに設定することができる。
>
> shopt -s nullglob
なぜ昔からの振る舞いから替えたのか?その理由が謎
(理由を明確に述べているドキュメントがない)
> において、*.gif ファイルが全くない場合でも、 これは空のリストに展開されるため、エラーにならない。
> しかし POSIX では、文法的に正しくないパターンや、 マッチがなかったパターンは、 そのまま変更されずに残されることになっている。
> bash では、次のコマンドで昔からの振る舞いに設定することができる。
>
> shopt -s nullglob
なぜ昔からの振る舞いから替えたのか?その理由が謎
(理由を明確に述べているドキュメントがない)
239デフォルトの名無しさん
2019/04/09(火) 00:52:47.78ID:cRtn1aSe240デフォルトの名無しさん
2019/04/09(火) 00:54:45.59ID:cRtn1aSe > POSIXはシェルスクリプトだけを考えてるわけではないから
↑これも結局何が言いたいのか不明だったな
まあ、何も考えずに(調べずに)シェルスクリプト以外の言語でも
* を返してるはずだって思い込んだんだろうなw
(実際には見つからない場合は空のリストを返します。)
↑これも結局何が言いたいのか不明だったな
まあ、何も考えずに(調べずに)シェルスクリプト以外の言語でも
* を返してるはずだって思い込んだんだろうなw
(実際には見つからない場合は空のリストを返します。)
241デフォルトの名無しさん
2019/04/09(火) 01:01:34.97ID:b0dEtQwc242デフォルトの名無しさん
2019/04/09(火) 01:09:06.87ID:cRtn1aSe > POSIXはシェルスクリプトだけを考えてるわけではないから
↑これで何が言いたいのかを書けば済む話
それが出来ないのはなぜだろうw
↑これで何が言いたいのかを書けば済む話
それが出来ないのはなぜだろうw
243デフォルトの名無しさん
2019/04/09(火) 01:09:51.04ID:cRtn1aSe あ、ちなみに「注目すべきとこ」には何も書いてませんよ。
いつもどおりです。
いつもどおりです。
244デフォルトの名無しさん
2019/04/09(火) 01:15:27.47ID:b0dEtQwc ほんとーーにっ、「読めない」のな、この脊髄反射マンっw
245デフォルトの名無しさん
2019/04/09(火) 01:16:58.07ID:cRtn1aSe 読めないって言わずに、具体的に引用すればいいだけなのに
それをしないのは、結局引用する場所がないからなんだよね
それをしないのは、結局引用する場所がないからなんだよね
246デフォルトの名無しさん
2019/04/09(火) 01:23:40.88ID:b0dEtQwc 「無い」から「引用できない」に変わったけど、同じパターンやな。そして前言はなかったことにという前々からの同じパターン
247デフォルトの名無しさん
2019/04/09(火) 01:25:22.47ID:cRtn1aSe >>246はとりあえずレスしてみましたってだけで
中身がなにもないことに、皆さん気づきましたか?
中身がなにもないことに、皆さん気づきましたか?
248デフォルトの名無しさん
2019/04/09(火) 01:26:56.18ID:b0dEtQwc なんか少しは自分を見直すとかあって、ここでもこんなクソ(俺のも含めて)なレスの応酬もなく、見てためになる万人が楽しめるレス、Q&Aになるかと思ったが、無理かやっぱ(偉そう偉そう)
そりゃ無理かっ。なんか急に飽きた、じゃな
そりゃ無理かっ。なんか急に飽きた、じゃな
249デフォルトの名無しさん
2019/04/09(火) 01:29:05.84ID:cRtn1aSe はい、コイツは何度目かの逃亡宣言です。
また懲りずに来ますよw
また懲りずに来ますよw
250デフォルトの名無しさん
2019/04/10(水) 08:51:10.36ID:1CG1Z7Gt bashの算術計算で小数を使う方法ってないです?
+=で加算したいんですが
+=で加算したいんですが
251デフォルトの名無しさん
2019/04/10(水) 12:14:47.90ID:sSiaigIF >>250
それ俺も欲しいんだよね。
前にやった実装は、小数点以下2位固定だったから
1.23 を 123 にして計算してから、後ろ2桁の間にドットを入れて対応したけど
小数点以下の桁数が1.2とか1.234とかだったら面倒なんだよね。
bcコマンドとか呼び出せば簡単なんだが。
それ俺も欲しいんだよね。
前にやった実装は、小数点以下2位固定だったから
1.23 を 123 にして計算してから、後ろ2桁の間にドットを入れて対応したけど
小数点以下の桁数が1.2とか1.234とかだったら面倒なんだよね。
bcコマンドとか呼び出せば簡単なんだが。
252デフォルトの名無しさん
2019/04/11(木) 17:03:23.97ID:bMTFn+JP exec 3>&1; exec >&-; exec >&3
たまにこんなのを見ますがこれはどんな時に使うんです?
ファイルディスクリプタ自体は理解しましたがfdの複製や切り替える目的が分からなくて
cmd 2>err.txtは意識せず使えてますが
たまにこんなのを見ますがこれはどんな時に使うんです?
ファイルディスクリプタ自体は理解しましたがfdの複製や切り替える目的が分からなくて
cmd 2>err.txtは意識せず使えてますが
253デフォルトの名無しさん
2019/04/11(木) 17:46:50.14ID:cVfQRf/N >>252
不勉強なんで「3」ってfdは知らないんだけど、「>&」ってリダイレクトを
使うと書き込みじゃなくて切替になるんだけど、これを使うとエラー
出力を標準出力に切り替えて標準出力で両方の出力を得たりする
ことができるです
「Command > FileName 2>&1」ってするとエラー出力の内容が標準
出力になってFileNameに両方の内容が書き込まれる
逆に「Command 2> FileName 1>&2」ってすると標準出力がエラー
出力になっるので、エラー出力でFileNameに書き込むことが出来る
で、何に使うのかっていうと、「grep」なんかは検索結果は標準出力に
でるけど「指定されたのはディレクトリだよ」みたいなメッセージは
エラー出力に出される
両方の出力をみて処理したいとかの時にはこれで切り替えて標準
出力の内容を変数に保存しておいて処理するとかに使うです
例が雑でわかりにくいかもだけど、エラーと通常の出力を同じ出力で
使う方法ってことで、あとはスクリプトなんでアイデアしだいなんで
不勉強なんで「3」ってfdは知らないんだけど、「>&」ってリダイレクトを
使うと書き込みじゃなくて切替になるんだけど、これを使うとエラー
出力を標準出力に切り替えて標準出力で両方の出力を得たりする
ことができるです
「Command > FileName 2>&1」ってするとエラー出力の内容が標準
出力になってFileNameに両方の内容が書き込まれる
逆に「Command 2> FileName 1>&2」ってすると標準出力がエラー
出力になっるので、エラー出力でFileNameに書き込むことが出来る
で、何に使うのかっていうと、「grep」なんかは検索結果は標準出力に
でるけど「指定されたのはディレクトリだよ」みたいなメッセージは
エラー出力に出される
両方の出力をみて処理したいとかの時にはこれで切り替えて標準
出力の内容を変数に保存しておいて処理するとかに使うです
例が雑でわかりにくいかもだけど、エラーと通常の出力を同じ出力で
使う方法ってことで、あとはスクリプトなんでアイデアしだいなんで
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 ★2 [お断り★]
- 中国、日本行き“50万人”キャンセル 渡航自粛でコロナ禍以来最大 [お断り★]
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★5 [ぐれ★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★4 [BFU★]
- 【速報】日本産牛肉の対中国輸出再開協議が中止 ★2 [おっさん友の会★]
- 毛寧(もう・ねい)報道官「中国に日本の水産品の市場は無い」 高市首相の国会答弁に「中国民衆の強い怒り」 [ぐれ★]
- 【悲報】高市早苗さん、もう辞職しか選択肢がない… [271912485]
- 【愛国者速報】フィフィ、中国の“日本産水産物輸入停止”措置に私見「中国依存しないとやっていけない企業は考えを改めて」 [856698234]
- 【ござる専🏡】風間🥷配信実況スレ🏯【風間いろは】
- 中国・環球時報「沖縄は日本領ではないのでは?」高市 [931948549]
- 【速報】中国政府、ゲームを禁輸。原神やブルアカ、荒野行動が日本で影響 [347751896]
- 中国「私達が怒ってるのは日本の政治家に対してで、日本の観光客や日本企業はこれまで通り歓迎する。これこそが大国としての余裕」 [377482965]
