シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その32
https://mevius.5ch.net/test/read.cgi/tech/1571929725/
シェルスクリプト総合 その33
■ このスレッドは過去ログ倉庫に格納されています
2020/03/23(月) 01:12:30.31ID:TYte82vJ
707デフォルトの名無しさん
2020/08/05(水) 10:46:33.42ID:AdI/6NZo >>705
言い返したかったら
英字の大文字小文字変換としてコード値に0x20を加減するコード
かつ、それ以外の文字は変換しないコードにしてみ?
そしたらそれは、UTF-8なら正しく動作し、
SJISだと漢字を壊すコードになるから
(SJISのための処理を追加しない限り)
言い返したかったら
英字の大文字小文字変換としてコード値に0x20を加減するコード
かつ、それ以外の文字は変換しないコードにしてみ?
そしたらそれは、UTF-8なら正しく動作し、
SJISだと漢字を壊すコードになるから
(SJISのための処理を追加しない限り)
708デフォルトの名無しさん
2020/08/05(水) 11:07:15.58ID:RWwgydsE709デフォルトの名無しさん
2020/08/05(水) 11:10:30.69ID:OjEDy2ZO710デフォルトの名無しさん
2020/08/05(水) 11:18:48.18ID:cfMvwLfN711デフォルトの名無しさん
2020/08/05(水) 11:19:10.36ID:cfMvwLfN712デフォルトの名無しさん
2020/08/05(水) 12:38:59.89ID:Mw508nfj >>709
そうそう。
それが修正されたことが「OSとしてのShift-JIS対応」だと言うんなら,
Linuxでも「OSとしてのShift-JIS対応」はされてる。
C言語であろうが何であろうが,ダメ文字に対処することは可能だからね。
そうそう。
それが修正されたことが「OSとしてのShift-JIS対応」だと言うんなら,
Linuxでも「OSとしてのShift-JIS対応」はされてる。
C言語であろうが何であろうが,ダメ文字に対処することは可能だからね。
713デフォルトの名無しさん
2020/08/05(水) 12:42:59.18ID:guh8E5Hj >>712
OSに関する点すべてを修正することが「OSとしてのSJIS対応」
局所的に一箇所だけ修正して、それ以外は修正されてないなら
それは「OSとしてのSJIS対応」ではない
完全対応かどうかって話をしてる
OSに関する点すべてを修正することが「OSとしてのSJIS対応」
局所的に一箇所だけ修正して、それ以外は修正されてないなら
それは「OSとしてのSJIS対応」ではない
完全対応かどうかって話をしてる
714デフォルトの名無しさん
2020/08/05(水) 12:50:09.73ID:Mw508nfj なんかもうあほらしくて議論する気がなくなってきたけど
WindowsのShift-JIS対応が「完全」なら,
どうしてWindows上でダメ文字対応する必要が(今だに)あるんですかね?
あ、「それはWindows上のwin32 APIで用意されているShift-JIS対応の機能を使ってないからだ!」
っていう反論はなしね。
それってあなたが「LinuxはOSとしてはヾhift-JIS対応していない」ことの理由に挙げている
「Linux上のglibcやlibiconvで用意されているShift-JIS対応の機能を使えば」っていう文脈と同じだもの。
WindowsのShift-JIS対応が「完全」なら,
どうしてWindows上でダメ文字対応する必要が(今だに)あるんですかね?
あ、「それはWindows上のwin32 APIで用意されているShift-JIS対応の機能を使ってないからだ!」
っていう反論はなしね。
それってあなたが「LinuxはOSとしてはヾhift-JIS対応していない」ことの理由に挙げている
「Linux上のglibcやlibiconvで用意されているShift-JIS対応の機能を使えば」っていう文脈と同じだもの。
715デフォルトの名無しさん
2020/08/05(水) 12:53:10.21ID:lrr9/7h8 そろそろOSのスレに行ったら?
シェルスクリプト関連からなんてOSの内部なんて知らん、せいぜいAPIがOSな感じ
WindowsだってShift-JISとUnicodeとふた系統のAPIが用意され、Shift-JISのAPIを使ってたら=使われていた使われている同じ=シェルスクリプトのスレで違いを論じあってるのがおかしい
シェルスクリプト関連からなんてOSの内部なんて知らん、せいぜいAPIがOSな感じ
WindowsだってShift-JISとUnicodeとふた系統のAPIが用意され、Shift-JISのAPIを使ってたら=使われていた使われている同じ=シェルスクリプトのスレで違いを論じあってるのがおかしい
716デフォルトの名無しさん
2020/08/05(水) 12:55:28.80ID:lrr9/7h8 >>714
アプリケーションコードレベルでなんかやってたらかな。まあやるだろうけど
OSの内部でUnicodeだからアプリケーションもUnicodeでというのは、まあやらんな、Shift-JIS APIを使ってるようなのは
シェルスクリプトで使うコマンドやシェルも同じことだな
アプリケーションコードレベルでなんかやってたらかな。まあやるだろうけど
OSの内部でUnicodeだからアプリケーションもUnicodeでというのは、まあやらんな、Shift-JIS APIを使ってるようなのは
シェルスクリプトで使うコマンドやシェルも同じことだな
717デフォルトの名無しさん
2020/08/05(水) 12:57:27.49ID:guh8E5Hj >>714
> どうしてWindows上でダメ文字対応する必要が(今だに)あるんですかね?
自分で「Windows上」って言ってるから、お前
OSの対応とOS上の対応は違うってわかっててわざと言ってるんだろ?
そいうあからさまな釣りにレスする価値ないね
でなおしてきな
> どうしてWindows上でダメ文字対応する必要が(今だに)あるんですかね?
自分で「Windows上」って言ってるから、お前
OSの対応とOS上の対応は違うってわかっててわざと言ってるんだろ?
そいうあからさまな釣りにレスする価値ないね
でなおしてきな
718デフォルトの名無しさん
2020/08/05(水) 13:04:26.79ID:lrr9/7h8 Shift-JISなんてLinuxなどでも今頃使わない廃れたコードに拘ってるのがおかしい
未だになんか(ちょっと)拘ってるOSがあるようだけど
どうせなら、Unicode(UTF-8)でのLinuxなどの問題を言えよw Shift-JISなんて誰も使わないのを論じるより益があるだろう、発端のも別にShift-JISと言っているわけではないようだし
未だになんか(ちょっと)拘ってるOSがあるようだけど
どうせなら、Unicode(UTF-8)でのLinuxなどの問題を言えよw Shift-JISなんて誰も使わないのを論じるより益があるだろう、発端のも別にShift-JISと言っているわけではないようだし
719デフォルトの名無しさん
2020/08/05(水) 13:16:42.98ID:guh8E5Hj >>718
今はOSが対応してるかの話をしてるだけ
Windowsは内部コードがUTF-16でSJIS等はUTF-16に変換して処理される
WindowsのAPIのうち、ANSI対応のAPIがSJIS等に対応しているAPIで
このAPIの存在がまさにWindowsがSJIS等の対応しているという証明になってる
そしてOSに付属しているコマンドもしっかりSJIS等に対応してある
しかしLinux/UnixにはそういうったAPI(システムコール)が存在しない
だからOSではない部分で独自に対応しないといけない上に、
付属のコマンドは多くががSJISに対応していない
今はOSが対応してるかの話をしてるだけ
Windowsは内部コードがUTF-16でSJIS等はUTF-16に変換して処理される
WindowsのAPIのうち、ANSI対応のAPIがSJIS等に対応しているAPIで
このAPIの存在がまさにWindowsがSJIS等の対応しているという証明になってる
そしてOSに付属しているコマンドもしっかりSJIS等に対応してある
しかしLinux/UnixにはそういうったAPI(システムコール)が存在しない
だからOSではない部分で独自に対応しないといけない上に、
付属のコマンドは多くががSJISに対応していない
720デフォルトの名無しさん
2020/08/05(水) 13:27:21.34ID:lrr9/7h8 >>719
Windows APIを使ったのを書いたことがないとしか思えない
Windows API には Shift-JISバージョンとUnicodeバージョンがある、Shift-JISバージョンを使っていたら内部でどうであれ同じ問題は起こり得る
同じように、Shift-JISに対応したLinuxなどではAPIで問題が起こることはないだろう、ロケールでShift-JIS設定できて問題ないんだろう実際に
何を論じてる、その違いでどう問題が起こると言っているのかさっぱりだな。てか、そんな問題は今時起こらない(UTF-8にしてるのが当たり前な)のでそんなの言っても意味ねえとしか思えんけど
Windows APIを使ったのを書いたことがないとしか思えない
Windows API には Shift-JISバージョンとUnicodeバージョンがある、Shift-JISバージョンを使っていたら内部でどうであれ同じ問題は起こり得る
同じように、Shift-JISに対応したLinuxなどではAPIで問題が起こることはないだろう、ロケールでShift-JIS設定できて問題ないんだろう実際に
何を論じてる、その違いでどう問題が起こると言っているのかさっぱりだな。てか、そんな問題は今時起こらない(UTF-8にしてるのが当たり前な)のでそんなの言っても意味ねえとしか思えんけど
721デフォルトの名無しさん
2020/08/05(水) 13:32:00.64ID:guh8E5Hj > Windows API には Shift-JISバージョンとUnicodeバージョンがある、
Shift-JISバージョンなどというものはない。
あるのはANSIバージョンだ。
そういう基本から、お前は理解していない。
Shift-JISバージョンなどというものはない。
あるのはANSIバージョンだ。
そういう基本から、お前は理解していない。
722デフォルトの名無しさん
2020/08/05(水) 13:32:21.13ID:guh8E5Hj > 同じように、Shift-JISに対応したLinuxなどでは
存在しない
存在しない
723デフォルトの名無しさん
2020/08/05(水) 13:34:49.46ID:guh8E5Hj Shift-JIS 対応 Linux でぐぐればでてくるだろ?
Linux の Shift JIS サポート
http://www.ossforum.jp/jossfiles/Linux_SJIS_Support.pdf
> なぜ Linux で Shift JIS ロケールがサポートされない
> 現在、日本で利用されている多くの Linux ディストリビューションでも、Unicode 系の UTF-8 がデ
> フォルトとされ、Shift JIS ロケールが用意されているケースでも、利用は推奨されていない。ちなみ
> に、ユーザーのロケール設定は、Linux ターミナル画面で locale コマンドを打てば LANG=
> ja_JP.UTF8 のように表示されるので確認できる。
> Shift JIS 系ロケール(sjis、cp932、ibm943 など、Appendix 1 参照)は、次のような理由のために推
> 奨されていない;
> 1. Linuxの文字処理ライブラリ関数は、Unicode を扱うことを基本としているため、本ライブラリ
> 関数を使ってインプリメントされた Linux システムコマンドでは、ファイルデータの中の文字
> 処理や、ファイル名の処理で、Unicode は正しく扱えても、Shift JIS は扱えないことがある。
> 2. Shift JIS データの処理は、「特別」な扱いとなり、メールクライアント Thunderbird など、個々
> のミドルウェアに多大な開発負担を負わせている。
> 3. 特に、正統 Shift JIS ロケール sjis では、 0x5C=U+00A5 というマッピングのために、オープ
> ン系プログラム(C言語、Java など)の動作が保証されない。cp932 などでは問題ない。
Linux の Shift JIS サポート
http://www.ossforum.jp/jossfiles/Linux_SJIS_Support.pdf
> なぜ Linux で Shift JIS ロケールがサポートされない
> 現在、日本で利用されている多くの Linux ディストリビューションでも、Unicode 系の UTF-8 がデ
> フォルトとされ、Shift JIS ロケールが用意されているケースでも、利用は推奨されていない。ちなみ
> に、ユーザーのロケール設定は、Linux ターミナル画面で locale コマンドを打てば LANG=
> ja_JP.UTF8 のように表示されるので確認できる。
> Shift JIS 系ロケール(sjis、cp932、ibm943 など、Appendix 1 参照)は、次のような理由のために推
> 奨されていない;
> 1. Linuxの文字処理ライブラリ関数は、Unicode を扱うことを基本としているため、本ライブラリ
> 関数を使ってインプリメントされた Linux システムコマンドでは、ファイルデータの中の文字
> 処理や、ファイル名の処理で、Unicode は正しく扱えても、Shift JIS は扱えないことがある。
> 2. Shift JIS データの処理は、「特別」な扱いとなり、メールクライアント Thunderbird など、個々
> のミドルウェアに多大な開発負担を負わせている。
> 3. 特に、正統 Shift JIS ロケール sjis では、 0x5C=U+00A5 というマッピングのために、オープ
> ン系プログラム(C言語、Java など)の動作が保証されない。cp932 などでは問題ない。
724デフォルトの名無しさん
2020/08/05(水) 13:37:54.50ID:lrr9/7h8725デフォルトの名無しさん
2020/08/05(水) 13:42:18.61ID:guh8E5Hj > そのANSIとやらの内部でShift-JISに対応してんだがな=Shift-JISバージョン
だから最初から俺が、SJISはWindows NTの内部文字コードであるUTF-16に変換しているから
WindowsはSJISに対応してると言ってるだろ。APIはOSの機能だ。
> だったらShift-JISなんてロケールできねえわな
今LinuxでSJISロケールに対応しているものは現存しない
あったら教えてくれや
昔、実験的に作られて実用的じゃなかったから
今LinuxでSJISロケールが存在ししてない。証拠の一つ。
Windowsが今も標準でSJISに対応してるのとは対象的だな
だから最初から俺が、SJISはWindows NTの内部文字コードであるUTF-16に変換しているから
WindowsはSJISに対応してると言ってるだろ。APIはOSの機能だ。
> だったらShift-JISなんてロケールできねえわな
今LinuxでSJISロケールに対応しているものは現存しない
あったら教えてくれや
昔、実験的に作られて実用的じゃなかったから
今LinuxでSJISロケールが存在ししてない。証拠の一つ。
Windowsが今も標準でSJISに対応してるのとは対象的だな
726デフォルトの名無しさん
2020/08/05(水) 13:52:00.11ID:guh8E5Hj ん?もしかしてこいつ。ANSIバージョンのAPIで
もしSJISだったら特殊な処理を行う。みたいな行き当たりばったりな
コードが入ってると思ってんじゃねーか?w
ANSIバージョンのAPIは単純に現在のコードページ(SJIS等)から
UTF-16に変換(またははその逆)をしてるだけなんだが
Windows NTは内部的には全部UTF-16で処理してるのだからSJIS特有の処理は行っていない
OSの機能としてANSIバージョンは文字コードの変換機能が行われてるだけ
繰り返すが。OSの機能として。これがOSの機能。
もしSJISだったら特殊な処理を行う。みたいな行き当たりばったりな
コードが入ってると思ってんじゃねーか?w
ANSIバージョンのAPIは単純に現在のコードページ(SJIS等)から
UTF-16に変換(またははその逆)をしてるだけなんだが
Windows NTは内部的には全部UTF-16で処理してるのだからSJIS特有の処理は行っていない
OSの機能としてANSIバージョンは文字コードの変換機能が行われてるだけ
繰り返すが。OSの機能として。これがOSの機能。
727デフォルトの名無しさん
2020/08/05(水) 13:54:00.12ID:lrr9/7h8 何その最初のごまかしは。お前は、
>Shift-JISバージョンなどというものはない。
>あるのはANSIバージョンだ。
と言っているんだけど?ただの厳密な(?)名称のをか?残念ながら日本ではShift-JISを使うのが当たり前で、ある意味後でUnicodeがなので、歴然とShift-JISバージョンのAPIという認識されてる
書いたことないなら知らんだろうけど
>昔、実験的に作られて実用的じゃなかったから
>今LinuxでSJISロケールが存在ししてない。証拠の一つ。
何それww存在してないわけではなくデフォで入ってないとかじゃないの?てか、やっぱり何それ
だったら「全く」Shift-JISに拘る根拠は皆無だな
>Shift-JISバージョンなどというものはない。
>あるのはANSIバージョンだ。
と言っているんだけど?ただの厳密な(?)名称のをか?残念ながら日本ではShift-JISを使うのが当たり前で、ある意味後でUnicodeがなので、歴然とShift-JISバージョンのAPIという認識されてる
書いたことないなら知らんだろうけど
>昔、実験的に作られて実用的じゃなかったから
>今LinuxでSJISロケールが存在ししてない。証拠の一つ。
何それww存在してないわけではなくデフォで入ってないとかじゃないの?てか、やっぱり何それ
だったら「全く」Shift-JISに拘る根拠は皆無だな
728デフォルトの名無しさん
2020/08/05(水) 13:56:15.83ID:guh8E5Hj >>727
お前が認識してるだけだろw
世界中でANSIバージョンはSJISバージョンのAPIだと思ってるわけがないだろ
ほんと世界が狭いなw
> 何それww存在してないわけではなくデフォで入ってないとかじゃないの?てか、やっぱり何それ
だから追加できるなら、その追加方法をいえって。
削除されて追加できんねーんだよ
俺の言葉の揚げ足を取るんじゃなくて
お前が証拠を突きつければいいだけ
できないんだよなw
お前が認識してるだけだろw
世界中でANSIバージョンはSJISバージョンのAPIだと思ってるわけがないだろ
ほんと世界が狭いなw
> 何それww存在してないわけではなくデフォで入ってないとかじゃないの?てか、やっぱり何それ
だから追加できるなら、その追加方法をいえって。
削除されて追加できんねーんだよ
俺の言葉の揚げ足を取るんじゃなくて
お前が証拠を突きつければいいだけ
できないんだよなw
729デフォルトの名無しさん
2020/08/05(水) 13:56:44.04ID:lrr9/7h8 >>726
Shift-JIS バージョンの API と Unicode バージョンの API ふた系統あると「俺は」「最初から」言っているんだがな
お前が Shift-JISバージョンなんてない ANSIがあるだけだ と言い出したんだろうが
何その妄想。酷すぎw そんなこと考えるとしたらお前の方だろうがw
無知を色々晒して偉そうにのたまうからそんなわけわからんこと言い出すんだよ
Shift-JIS バージョンの API と Unicode バージョンの API ふた系統あると「俺は」「最初から」言っているんだがな
お前が Shift-JISバージョンなんてない ANSIがあるだけだ と言い出したんだろうが
何その妄想。酷すぎw そんなこと考えるとしたらお前の方だろうがw
無知を色々晒して偉そうにのたまうからそんなわけわからんこと言い出すんだよ
730デフォルトの名無しさん
2020/08/05(水) 13:57:02.63ID:guh8E5Hj > 削除されて追加できんねーんだよ
削除されてというか一部で実験的に作られた程度で
本流にマージされたことはない
訂正な
削除されてというか一部で実験的に作られた程度で
本流にマージされたことはない
訂正な
731デフォルトの名無しさん
2020/08/05(水) 13:57:59.41ID:lrr9/7h8732デフォルトの名無しさん
2020/08/05(水) 13:58:02.44ID:guh8E5Hj >>729
> Shift-JIS バージョンの API と Unicode バージョンの API ふた系統あると「俺は」「最初から」言っているんだがな
SJISバージョンのAPIというものはない。
なんど言えば理解するんだ?
そしてANSIバージョン+SJISのコードページに対応して
Windowsが出荷されてるんだから。
ほれみろ。WindowsはSJISに対応してるじゃねーか
> Shift-JIS バージョンの API と Unicode バージョンの API ふた系統あると「俺は」「最初から」言っているんだがな
SJISバージョンのAPIというものはない。
なんど言えば理解するんだ?
そしてANSIバージョン+SJISのコードページに対応して
Windowsが出荷されてるんだから。
ほれみろ。WindowsはSJISに対応してるじゃねーか
733デフォルトの名無しさん
2020/08/05(水) 13:58:49.12ID:guh8E5Hj > ググればすぐあるけど?頑張れよ
それ自分で見つけられなかったときの言い訳じゃんw
相手に探させようとするww
それ自分で見つけられなかったときの言い訳じゃんw
相手に探させようとするww
734デフォルトの名無しさん
2020/08/05(水) 13:59:08.02ID:lrr9/7h8 そこの拘るだけしかないんだな。意味ないな、ガンバレ
735デフォルトの名無しさん
2020/08/05(水) 14:00:12.88ID:guh8E5Hj 今SJISの話をしてるのだからSJISに拘るのは当たり前
736デフォルトの名無しさん
2020/08/05(水) 14:04:15.76ID:lrr9/7h8737デフォルトの名無しさん
2020/08/05(水) 14:05:53.97ID:L2ar51Hq > いや、ググったらすぐにあったけど?
じゃあググったキーワードを書いて
見つけたサイトじゃなくていいよ
キーワードだけでいい
それぐらいできるでしょ?
検索したキーワードなんだから
じゃあググったキーワードを書いて
見つけたサイトじゃなくていいよ
キーワードだけでいい
それぐらいできるでしょ?
検索したキーワードなんだから
738デフォルトの名無しさん
2020/08/05(水) 14:06:46.88ID:L2ar51Hq LinuxでロケールでShift-JISなんてできないということに拘るだけですが?
ゼロって何の話ですか?
ゼロって何の話ですか?
739デフォルトの名無しさん
2020/08/05(水) 14:08:17.67ID:L2ar51Hq Windowsは出荷状態でSJISに対応しているが
LinuxはShift-JISなんてできない
→そうですね
で終わる話だと思いますがね?
なんでそれでだめなんですか?
拘るというのは、そうですねで終われない人の方でしょう
LinuxはShift-JISなんてできない
→そうですね
で終わる話だと思いますがね?
なんでそれでだめなんですか?
拘るというのは、そうですねで終われない人の方でしょう
740デフォルトの名無しさん
2020/08/05(水) 14:39:14.54ID:m77ShW/O 全く面倒臭いな
・linuxカーネルはバイト列で扱うから\0と/さえ区別できれば良く文字コードの概念は基本的にない
・SJISは\0と/の条件を満たすから使える
・GNU/Linuxのユーザーランドにはglibcのlocaleサポートがあり
>683に書いてある通り
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
$ export LANG=ja_JP.sjis
でSJISも使える
これだけのこと
・linuxカーネルはバイト列で扱うから\0と/さえ区別できれば良く文字コードの概念は基本的にない
・SJISは\0と/の条件を満たすから使える
・GNU/Linuxのユーザーランドにはglibcのlocaleサポートがあり
>683に書いてある通り
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
$ export LANG=ja_JP.sjis
でSJISも使える
これだけのこと
741デフォルトの名無しさん
2020/08/05(水) 14:42:30.95ID:RWwgydsE WindowsにはA系APIがあるからセーフという理屈なら、UNIX/Linuxではiconvでもnkfでもあるんだからセーフ。w
A系APIが対応してるのは、ANSIではなく、OEM文字コードなんだけどな。
A系APIが対応してるのは、ANSIではなく、OEM文字コードなんだけどな。
742デフォルトの名無しさん
2020/08/05(水) 15:30:03.21ID:L2ar51Hq ・linuxカーネルは〜
・カーネルとOSは別である
論破w
・カーネルとOSは別である
論破w
743デフォルトの名無しさん
2020/08/05(水) 15:30:32.77ID:L2ar51Hq >>741
多くのアプリがiconvやnkfを使ってない
多くのアプリがiconvやnkfを使ってない
744デフォルトの名無しさん
2020/08/05(水) 15:32:34.75ID:Mw508nfj >>741
これ。
これ。
745デフォルトの名無しさん
2020/08/05(水) 15:34:02.34ID:Mw508nfj746デフォルトの名無しさん
2020/08/05(水) 16:06:44.71ID:RWwgydsE747デフォルトの名無しさん
2020/08/05(水) 16:21:27.81ID:L2ar51Hq カーネルやOSで"対応していない"から
ソフト側で対応するしかなくなって
結果対応してるソフトが大幅に減ってる
ソフト側で対応するしかなくなって
結果対応してるソフトが大幅に減ってる
748デフォルトの名無しさん
2020/08/05(水) 16:33:14.08ID:RWwgydsE749デフォルトの名無しさん
2020/08/05(水) 19:47:59.44ID:L2ar51Hq750デフォルトの名無しさん
2020/08/05(水) 19:57:21.12ID:Mw508nfj >>749
glibc
glibc
751デフォルトの名無しさん
2020/08/05(水) 20:01:03.00ID:L2ar51Hq glibcはC言語用ライブラリに過ぎない
752デフォルトの名無しさん
2020/08/05(水) 20:02:17.75ID:M377peH6 ここ一生文字コードの話してんな…
753デフォルトの名無しさん
2020/08/05(水) 20:29:25.50ID:RWwgydsE754デフォルトの名無しさん
2020/08/05(水) 20:30:18.97ID:RWwgydsE >>752
文字コードの話は鬼門だからね。。。
文字コードの話は鬼門だからね。。。
755デフォルトの名無しさん
2020/08/05(水) 20:32:14.77ID:xVHqlCRp キチガイは無意味なことに異常に拘るからな
756デフォルトの名無しさん
2020/08/05(水) 20:39:40.85ID:L2ar51Hq >>753
> また、Windowsの多くのAPIは、DLLで提供されてるただの関数でしかない。
それをいうなら、
Windowsの多くのAPIは、OSで提供されてるただの関数でしかない。
だろ?
今はOSが対応しているかどうかの話をしてるんだから
> また、Windowsの多くのAPIは、DLLで提供されてるただの関数でしかない。
それをいうなら、
Windowsの多くのAPIは、OSで提供されてるただの関数でしかない。
だろ?
今はOSが対応しているかどうかの話をしてるんだから
757デフォルトの名無しさん
2020/08/05(水) 21:05:44.83ID:Mw508nfj もうなんでもありやな。
Windowsってスゲー!w
Windowsってスゲー!w
758デフォルトの名無しさん
2020/08/05(水) 21:07:02.99ID:Mw508nfj いやある意味マジで凄い,とも言えるな。
Linuxだと集客力がなさすぎて,ある程度論理的思考ができる人間しか寄せ付けないけれど,
Windowsには(謎の)集客性があるから,[検閲されました]。
Linuxだと集客力がなさすぎて,ある程度論理的思考ができる人間しか寄せ付けないけれど,
Windowsには(謎の)集客性があるから,[検閲されました]。
759デフォルトの名無しさん
2020/08/05(水) 21:12:27.34ID:L2ar51Hq > [検閲されました]。
これ面白いと思って書いてんの?
これ面白いと思って書いてんの?
760デフォルトの名無しさん
2020/08/05(水) 21:30:49.87ID:xVHqlCRp761デフォルトの名無しさん
2020/08/05(水) 22:59:53.29ID:ilbg2XF8 日本語の設定表記ってjaなのかJPなのか分からなくなるわ
762デフォルトの名無しさん
2020/08/05(水) 23:11:03.71ID:Mw508nfj763デフォルトの名無しさん
2020/08/06(木) 00:08:14.61ID:pS9zPYMv ja_JP
en_US
この2つが頭に入ったらどっちがどっちか迷うことはなくなったな。
「US」が絶対に「国」だから。w
en_US
この2つが頭に入ったらどっちがどっちか迷うことはなくなったな。
「US」が絶対に「国」だから。w
764デフォルトの名無しさん
2020/08/06(木) 04:06:10.65ID:cHZDAcP7 >>685
んなもんシェルがlocale対応してないだけの問題じゃん。
んなもんシェルがlocale対応してないだけの問題じゃん。
765デフォルトの名無しさん
2020/08/06(木) 06:19:58.08ID:hlsSANZk ではシェルがlocaleに対応していたらSJIS対応になるのだろうか?
もちろん違う。なぜならlocaleがSJISに対応してないからだ
もちろん違う。なぜならlocaleがSJISに対応してないからだ
766デフォルトの名無しさん
2020/08/06(木) 08:08:10.25ID:v5q+3Q4z 結局最初の質問に対する答えとしては,
いまどきのマトモなOSは,
端末上の文字表示に既定でUTF-8を採用していて,
その場合はコマンド名に非ASCII文字を用いても問題は生じない。
でいいのかな?
いまどきのマトモなOSは,
端末上の文字表示に既定でUTF-8を採用していて,
その場合はコマンド名に非ASCII文字を用いても問題は生じない。
でいいのかな?
767デフォルトの名無しさん
2020/08/06(木) 08:15:03.38ID:hlsSANZk768デフォルトの名無しさん
2020/08/06(木) 09:06:38.59ID:hTdGagRd × localeがSJISに対応してないから
○ シェルのlocale対応が中途半端だから
○ シェルのlocale対応が中途半端だから
769デフォルトの名無しさん
2020/08/06(木) 09:09:57.95ID:mDao40Cq >>766
そう考えて差し支えないし、大抵はロケール対応してるから他の文字コードでも同様に非ASCII利用可(SJISも可)
そう考えて差し支えないし、大抵はロケール対応してるから他の文字コードでも同様に非ASCII利用可(SJISも可)
770デフォルトの名無しさん
2020/08/06(木) 10:08:45.34ID:9YoRhsMg そういえば、昔のCygwin、output-metaがoffだったな
771デフォルトの名無しさん
2020/08/06(木) 11:58:34.79ID:RYGFOdbJ シェルはOSの一部。WindowsのシェルもOSの一部
772デフォルトの名無しさん
2020/08/06(木) 12:36:15.57ID:v5q+3Q4z 荒しは黙ってNG
773デフォルトの名無しさん
2020/08/06(木) 13:00:47.50ID:Dywe59yG メガネは身体の一部。
774デフォルトの名無しさん
2020/08/06(木) 13:07:28.07ID:RYGFOdbJ >>773
体を手に入れたらメガネが付いてるわけじゃないからなぁw
体を手に入れたらメガネが付いてるわけじゃないからなぁw
775デフォルトの名無しさん
2020/08/06(木) 13:31:59.57ID:9YoRhsMg メガネは顔の一部です♪
776デフォルトの名無しさん
2020/08/06(木) 16:26:05.72ID:v5q+3Q4z メガネは顔の一部じゃない あなたは私のすべてじゃない
777デフォルトの名無しさん
2020/08/10(月) 16:59:38.66ID:BcFTAJq0 zshって:コマンドが遅いと思ったら、:という名前の関数を定義できるから
何もしないコマンドではなく関数呼び出しのようになってるんだろうな
めんどくさいね
何もしないコマンドではなく関数呼び出しのようになってるんだろうな
めんどくさいね
778デフォルトの名無しさん
2020/08/10(月) 17:59:39.62ID:IQ3fIsH1 絵文字→数値文字参照に変換したいんだけどシェルだけじゃ無理?
たとえば「😀」であったら「&# 128512;」みたいな
nkfで数値文字参照→絵文字の逆パターンはできるっぽいけど
たとえば「😀」であったら「&# 128512;」みたいな
nkfで数値文字参照→絵文字の逆パターンはできるっぽいけど
779デフォルトの名無しさん
2020/08/10(月) 18:12:59.63ID:jBTjAApo printf '&#%d;' \'
780デフォルトの名無しさん
2020/08/10(月) 18:18:15.92ID:BcFTAJq0 >778
できるよ
#!/bin/bash
unk="??" # ← うんこの絵文字
printf '%x' "'$unk" # 1f4a9
ただしbashのようにUnicode対応してるシェルじゃないと駄目
dashのように対応してないシェルだと1バイトずつの処理になるからから
UTF-8 → コードポイントへの変換処理を自前でやる必要がある
あと文字ではなく文字列の場合は1文字ずつループする必要があるね
これもbashだったら簡単だけど、dashとかだと苦労する。
dash等の場合パフォーマンスの点からodコマンドで
8進数化して処理したほうが速いかもしれない
どちらにしろまあ手間がかかる
できるよ
#!/bin/bash
unk="??" # ← うんこの絵文字
printf '%x' "'$unk" # 1f4a9
ただしbashのようにUnicode対応してるシェルじゃないと駄目
dashのように対応してないシェルだと1バイトずつの処理になるからから
UTF-8 → コードポイントへの変換処理を自前でやる必要がある
あと文字ではなく文字列の場合は1文字ずつループする必要があるね
これもbashだったら簡単だけど、dashとかだと苦労する。
dash等の場合パフォーマンスの点からodコマンドで
8進数化して処理したほうが速いかもしれない
どちらにしろまあ手間がかかる
781デフォルトの名無しさん
2020/08/10(月) 18:25:22.89ID:HYtJuMAc こんにちは
PowerShellだと自作のhoge.ps1ファイルを実行すれば
hoge.ps1に定義していた関数が使えるようになりますが
Macで同じように自作のpiyo.shに書いて,ターミナルから実行して,
piyo.shに定義していた関数をその後も有効にすることはできないでしょうか
PowerShellと同じ感覚でtest.shに
#!/bin/bash
function hello(){
echo "Hello, World!
}
と書いて実行したら,ターミナル上でその後も関数helloが有効になると思っていたのですが・・・
初心者(今日からはじめました)のでなにもわかってないと思いますが
PowerShellだと自作のhoge.ps1ファイルを実行すれば
hoge.ps1に定義していた関数が使えるようになりますが
Macで同じように自作のpiyo.shに書いて,ターミナルから実行して,
piyo.shに定義していた関数をその後も有効にすることはできないでしょうか
PowerShellと同じ感覚でtest.shに
#!/bin/bash
function hello(){
echo "Hello, World!
}
と書いて実行したら,ターミナル上でその後も関数helloが有効になると思っていたのですが・・・
初心者(今日からはじめました)のでなにもわかってないと思いますが
782デフォルトの名無しさん
2020/08/10(月) 18:27:22.34ID:IQ3fIsH1783デフォルトの名無しさん
2020/08/10(月) 18:31:59.86ID:BcFTAJq0 >>781
source(または . コマンド)で読み込む
シェルスクリプトを「実行」した場合は
新たにプロセスが作られて実行される。
今使ってるシェルでつかえるようにするには
現在のシェルに読み込まなくてはいけない
それがsourceコマンド
でもまあ個人的には外部シェルスクリプトにするほうが
便利な気もするけどな
source(または . コマンド)で読み込む
シェルスクリプトを「実行」した場合は
新たにプロセスが作られて実行される。
今使ってるシェルでつかえるようにするには
現在のシェルに読み込まなくてはいけない
それがsourceコマンド
でもまあ個人的には外部シェルスクリプトにするほうが
便利な気もするけどな
784デフォルトの名無しさん
2020/08/10(月) 18:36:45.96ID:HYtJuMAc ありがとうございました!
785デフォルトの名無しさん
2020/08/10(月) 18:36:55.03ID:BcFTAJq0 printf '%x' "'$unk" # 1f4a9
ところでこの シングルクォート を頭につけるって
仕様どこのバカが考えたんだろうな?
このせいで最初の一文字しか変換できず
文字列を文字コードにすることができなくなってる
フォーマット書式を拡張して、例えばこんなふうにしていれば
文字列を全体を変換するとかできただろうに。今からでも遅くはないが
printf '%@x' "$unk"
ところでこの シングルクォート を頭につけるって
仕様どこのバカが考えたんだろうな?
このせいで最初の一文字しか変換できず
文字列を文字コードにすることができなくなってる
フォーマット書式を拡張して、例えばこんなふうにしていれば
文字列を全体を変換するとかできただろうに。今からでも遅くはないが
printf '%@x' "$unk"
786デフォルトの名無しさん
2020/08/10(月) 18:49:27.63ID:BcFTAJq0 ちゃんとテストしてないけど、文字列全部をコードポイントにする方法
while [ "$str" ]; do
printf '%x ' "'$str"
str=${str#?} # 頭一文字を削除
done
多分動くと思うけどprintfを文字の数だけ実行しないといけないのがダサい(遅い)
bashだったら、頭から文字を削らなくても ${str:N:1} でできるはず
どちらにしろprintfの実行回数は減らせないが
ここから絵文字のみをコードポイントにするには
コードポイントの判定が必要になるので・・・
codepoint=$(printf '%x' "'$str")
これはサブシェル使ってるから更に遅くなる(ため息)
パイプ使って処理するのがまだましかねぇ
while [ "$str" ]; do
printf '%x\n' "'$str"
str=${str#?} # 頭一文字を削除
done | while IFS= read -r codepoint; do
# そのまま出力するか、実体参照で出力するか判定して切り分ける
done
めんどくせーなw
while [ "$str" ]; do
printf '%x ' "'$str"
str=${str#?} # 頭一文字を削除
done
多分動くと思うけどprintfを文字の数だけ実行しないといけないのがダサい(遅い)
bashだったら、頭から文字を削らなくても ${str:N:1} でできるはず
どちらにしろprintfの実行回数は減らせないが
ここから絵文字のみをコードポイントにするには
コードポイントの判定が必要になるので・・・
codepoint=$(printf '%x' "'$str")
これはサブシェル使ってるから更に遅くなる(ため息)
パイプ使って処理するのがまだましかねぇ
while [ "$str" ]; do
printf '%x\n' "'$str"
str=${str#?} # 頭一文字を削除
done | while IFS= read -r codepoint; do
# そのまま出力するか、実体参照で出力するか判定して切り分ける
done
めんどくせーなw
787デフォルトの名無しさん
2020/08/10(月) 19:09:20.89ID:t4rZM551 だったらPerlを使えば。
788デフォルトの名無しさん
2020/08/10(月) 19:10:29.77ID:BcFTAJq0 >>787
そのネタは飽きた
そのネタは飽きた
789デフォルトの名無しさん
2020/08/10(月) 20:01:35.10ID:jBTjAApo いつものRubyおじさんは盆休みか
790デフォルトの名無しさん
2020/08/10(月) 21:47:25.96ID:H4x6U7o8 そういう場合はバラすコマンドを書くんだよ
printfなんて引数が書式から溢れたら繰り返すという独特の仕様なんだし
printfなんて引数が書式から溢れたら繰り返すという独特の仕様なんだし
791デフォルトの名無しさん
2020/08/10(月) 22:04:46.97ID:wrD0HyDw792デフォルトの名無しさん
2020/08/10(月) 23:58:47.58ID:t4rZM551793デフォルトの名無しさん
2020/08/11(火) 06:27:29.80ID:imudTDmO 👨👨👧👧
794デフォルトの名無しさん
2020/08/11(火) 14:02:41.21ID:oiMKju9F795デフォルトの名無しさん
2020/08/11(火) 15:00:36.80ID:6EF+liXG >>794
シェルつーか、sedやな。w
シェルつーか、sedやな。w
796デフォルトの名無しさん
2020/08/11(火) 17:50:39.44ID:K2Zt4r5r printfもシェルつーかprintfコマンドやな。という言い方もできる
ほとんどはprintfはビルトインコマンドだからシェルの一部と言えるが
なんとmkshではビルトインではないのだ
だからprintfを多用するとmkshでは遅くなる
ほとんどはprintfはビルトインコマンドだからシェルの一部と言えるが
なんとmkshではビルトインではないのだ
だからprintfを多用するとmkshでは遅くなる
797デフォルトの名無しさん
2020/08/11(火) 18:15:17.47ID:lw0B26+i 速度速度言うなら...w
まあ、マジでそう思わないこともない
まあ、マジでそう思わないこともない
798デフォルトの名無しさん
2020/08/11(火) 18:20:09.85ID:K2Zt4r5r 言語(ツール)を選ぶ理由は速度が第一じゃないからね
なにか理由があって言語(ツール)を選ぶ
その上で(極端に)遅くなる場合ってのは
知っておいたほうがいい
無知で極端に遅くしておいて、自分が悪いのに
言語(ツール)のせいにするのは愚か者
なにか理由があって言語(ツール)を選ぶ
その上で(極端に)遅くなる場合ってのは
知っておいたほうがいい
無知で極端に遅くしておいて、自分が悪いのに
言語(ツール)のせいにするのは愚か者
799デフォルトの名無しさん
2020/08/11(火) 22:40:08.94ID:wY/KrlTt 一人で妄想して馬鹿にしてる感じ、誰のことを言っているのだが
800デフォルトの名無しさん
2020/08/11(火) 22:47:03.84ID:ZSHW8utc 誰も聞いてないことをで自己満してる
承認欲求が激しいんだろうな
承認欲求が激しいんだろうな
801デフォルトの名無しさん
2020/08/12(水) 00:31:12.05ID:EZbfglBp 外部コマンドをビルトイン化できるらしいがどんな用途で使うんだ
日頃使ってるechoは速度重視だからシェルに内蔵してるってのは分かるが
日頃使ってるechoは速度重視だからシェルに内蔵してるってのは分かるが
802デフォルトの名無しさん
2020/08/12(水) 01:05:34.01ID:IJKCUlyt803デフォルトの名無しさん
2020/08/12(水) 06:01:38.86ID:IJKCUlyt lessコマンドひでぇw
-? -# -~ -" とかいうオプションがあるw
-? -# -~ -" とかいうオプションがあるw
804デフォルトの名無しさん
2020/08/12(水) 11:54:29.64ID:dh92Tz6A .shファイルの実行はずっと脳死で「sh test.sh」とかでやってたけどそれだとPOSIXの関係で目的通り動いてくれないコマンドもあるのか
ログイン時のデフォルトシェルがbashでもshで叩いてしまうと意味がないと
これからは「bash test.sh」 とかでやるようにするけどshで叩く癖が抜けるまでしばらくかかりそう…
ログイン時のデフォルトシェルがbashでもshで叩いてしまうと意味がないと
これからは「bash test.sh」 とかでやるようにするけどshで叩く癖が抜けるまでしばらくかかりそう…
805デフォルトの名無しさん
2020/08/12(水) 12:35:47.57ID:RMBTHnXK806デフォルトの名無しさん
2020/08/12(水) 13:23:38.06ID:dh92Tz6A807デフォルトの名無しさん
2020/08/12(水) 15:14:39.87ID:obuPMR8V スレチでしたら申し訳ないです
どこで質問したらいいのか分かりませんでした
curlで取得したhtmlソースからページのタイトルを取得したいです
curl "https://ja.wikipedia.org/wiki/" | nkf -w | grep -oP '(?<=<title>)(.+)(?=</title>)'
こんな感じで<title>タグに挟まれた文字列を正規表現で抽出すればできそうなのですが、wiki等の一部サイトではgrepで抽出できません
googleやyahooはできました
文字コードがShift-JISなのが問題だと思いますがnkfで変換してあるのになぜできないのかわかりません
どうすれば抽出できますか?
どこで質問したらいいのか分かりませんでした
curlで取得したhtmlソースからページのタイトルを取得したいです
curl "https://ja.wikipedia.org/wiki/" | nkf -w | grep -oP '(?<=<title>)(.+)(?=</title>)'
こんな感じで<title>タグに挟まれた文字列を正規表現で抽出すればできそうなのですが、wiki等の一部サイトではgrepで抽出できません
googleやyahooはできました
文字コードがShift-JISなのが問題だと思いますがnkfで変換してあるのになぜできないのかわかりません
どうすれば抽出できますか?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★3 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 「ふざけんな!」 国会議員給与、『月5万円増』報道にネット騒然 「国民が物価高で困っているのに」「定数削減とか言いながら…」★2 [♪♪♪★]
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★3
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★4
- 【高市悲報】中国「国連安保理の許可なしに日本を攻撃可能だ」★2 [115996789]
- 【んな専🏡】華金もんなっしょいとはやれやれなのらね🍬(・o・🍬)🏰
- 日中戦争起きたら5日で自衛隊壊滅するらしい。じゃあ徴兵も無いし、俺等が必死になって反対してやる理由なくね? [237216734]
- 記者「中国が日本を攻撃すればするほど高市早苗はパワーアップwうははははははwww」 [592058334]
