【Bash】Windows Subsystem for Linux【WSL】5

レス数が1000を超えています。これ以上書き込みはできません。
0001login:Penguin2019/03/21(木) 01:54:15.81ID:10OHJcFK
Install the Windows Subsystem for Linux
https://docs.microsoft.com/en-us/windows/wsl/install-win10

前スレ
【Bash】Windows Subsystem for Linux【WSL】4
http://mao.5ch.net/test/read.cgi/linux/1541747008/

0952login:Penguin2019/06/15(土) 16:34:55.14ID:UW/+wp4S
アプリケーションからCP932に見えたら
CP932にない絵文字が正しく表示できるわけ無いだろ
リアル馬鹿だなw

0953login:Penguin2019/06/15(土) 16:40:37.45ID:qMjBI3rb
XPの時に、ファイル名にSJISにできない文字が含まれるとファイル名が壊れるって現象にぶち当たった覚えあるけど今は大丈夫なのか?

0954login:Penguin2019/06/15(土) 16:41:15.01ID:UW/+wp4S
NT3.1のときからそんな現象はない

0955login:Penguin2019/06/15(土) 16:43:05.80ID:UW/+wp4S
絵文字などCP932では表示不可能なファイル名が正しく表示できるってことは、
表示されるまでのいかなる部分でもCP932が使われてないってことを意味している。
Windowsの基本機能のいかなる部分でもCP932が使われていないという証拠である。

0956login:Penguin2019/06/15(土) 16:45:02.99ID:yYKyMGQX
>>953
わからんけどそれはアプリ側の問題じゃないの?

0957login:Penguin2019/06/15(土) 16:50:04.91ID:p0QsTHpw
うーむ…
ttps://i.imgur.com/KCirJ9N.jpg

MSのパッチの部分があるみたいだけど、どこを移植すればいいのか良く分からん
(5.2は起動しなかったので差分を調査中)

0958login:Penguin2019/06/15(土) 16:52:56.24ID:qMjBI3rb
NTFSじゃなくてFATでもファイル名がUTF-16なのか?

0959login:Penguin2019/06/15(土) 16:57:50.49ID:UW/+wp4S
>>958
LinuxでもFAT使えるんだが、Linuxだと何だと思う?

0960login:Penguin2019/06/15(土) 17:00:31.62ID:Shy5ns+9
>>953
アプリケーション側が9xとの互換用の古いA系のAPIを使っていると、UTF-16がCP932とか(ロケール設定による)に変換されてアプリケーションに渡るから壊れることがある
今普通にVSとかでコンパイルすると、UTF-16用のW系のAPIが使われるから壊れない
また、今はA系APIをUTF-8用にも使えるようになった

>>958
いわゆる8+3の古いFATでは国ごとに違うコードだったからCP932だったが、Win95以降のLFNではUTF-16

0961login:Penguin2019/06/15(土) 17:07:50.72ID:qMjBI3rb
>>960
なるほど、XPの時に起こったのはアプリが95互換機能つかってたからなのか。
今は大丈夫なのね。

0962login:Penguin2019/06/15(土) 17:29:11.38ID:3oVnYJwT
>>951
>>952
>>955
自分が間違っていたので、訂正してお詫びする。申し訳ない。
Windows10上でファイル名を絵文字にできることを確認した。

言い訳になるが、Windowsで圧縮したZipファイル内のファイル名は今もCP932なんだだ。
(それをLinuxで展開するときは、CP932を指定しないと、ファイル名のマルチバイト文字が化けてしまう)
おかげで今もWindowsのファイル名はCP932だと思いこんでいた。

0963login:Penguin2019/06/15(土) 18:30:20.43ID:OZuY4437
ZIPの作者はもうお亡くなりに

0964login:Penguin2019/06/15(土) 18:33:07.39ID:UW/+wp4S
死因なにかと思ったらアル中かよw

0965login:Penguin2019/06/15(土) 19:23:37.24ID:0tvnU2xk
そんなことになってるのか
文字コードって複雑怪奇だな

0966login:Penguin2019/06/15(土) 19:33:51.00ID:jAL8iiw3
>>964
ふ・・・複雑怪奇だな・・・?

0967login:Penguin2019/06/15(土) 21:13:11.78ID:OZuY4437
重怪奇分析

0968login:Penguin2019/06/15(土) 22:28:16.98ID:yYKyMGQX
>>965
こんなの序の口だ
文字コード問題の本当の恐ろしさはこんなものではない

0969login:Penguin2019/06/15(土) 23:32:05.26ID:UW/+wp4S
文字コードの話はスレ違い

0970login:Penguin2019/06/16(日) 02:43:03.76ID:kM2KMV6K
>>961
アプリ側の問題なんだから今もクソもない

0971login:Penguin2019/06/16(日) 11:32:06.39ID:sFQ8frXi
アプリが決めたファイル名をOSがまともに使えないのが問題なのに、なんでアプリのせいにするんだろう?
頭おかしいな。

0972login:Penguin2019/06/16(日) 11:46:14.91ID:fps871ue
アプリが決めたファイル名をOSは正しく扱えるが?

OSが決めたファイル名をアプリが扱えないんだからアプリの問題だって話だろ

0973login:Penguin2019/06/16(日) 11:48:27.96ID:l6add3Wu
Windowsはunicodeを扱うのに独立したワイド文字系のAPIを作っちゃったから
アプリが対応しないといけない
最近はようやくロケールの文字コード自体をUTF-8にする流れになってるようなので
マルチバイト系のAPIのままUnicode対応するのが今後標準になるのかもしれんけど

0974login:Penguin2019/06/16(日) 11:59:28.04ID:fps871ue
>>973
根本原因はUnicodeだけどな。
最初にUTF-8というものを作らず16bitにすべてを詰め込もうとした
Windowsはその最初のUnicodeに対応しただけ
16bitのUnicodeはどうやってもAPIを分けないと対応できない

0975login:Penguin2019/06/16(日) 12:01:02.78ID:fps871ue
ま、OSがUTF-8になったとしても、アプリが対応してないと結局意味ないんだがな
だから最初からアプリの問題

0976login:Penguin2019/06/16(日) 12:04:09.78ID:fps871ue
訂正
× OSがUTF-8になったとしても、
○ Unicode対応でないアプリのロケールを(ShiftJISではなく)UTF-8として扱う

Unicode対応でないアプリのロケールとしてUTF-8が選べるようになったとしても、
ShiftJISを前提にしているアプリが、文字コードが異なるUTF-8対応になるわけじゃない

0977login:Penguin2019/06/16(日) 12:08:35.81ID:K7vgaRG5
UNICODEの元になったJ-Starのコード体系
を勉強してから言え

0978login:Penguin2019/06/16(日) 12:18:25.09ID:fps871ue
勉強した。で、お前は何が言いたい?

0979login:Penguin2019/06/16(日) 13:17:19.78ID:K7vgaRG5
UTF-8と何が違う?

0980login:Penguin2019/06/16(日) 13:53:27.25ID:8OeAFa65
質問に質問で答えるなよ。

まずお前が何を言いたいのかに答えてからだ

0981login:Penguin2019/06/16(日) 13:53:50.97ID:qoTN4KEC
むしろunicode対応が早かったがゆえに
unicode側の変更に振り回されてる形

0982login:Penguin2019/06/16(日) 14:06:29.69ID:8OeAFa65
一時期はUTF-8は運が良かったとか思ってたけど、
Unicodeは更に混沌を極めて、UTF-8でも1文字が最大8バイトにまでなってしまって
単純なアルゴリズムで1文字の境界を知ることは不可能になってしまったからな。
どちらにしろ、Unicodeを扱うには専用のライブラリを使うことになる

0983login:Penguin2019/06/16(日) 14:26:52.84ID:96XR5gkd
>>971
何言ってんのこの馬鹿

0984login:Penguin2019/06/16(日) 14:40:25.24ID:EEcpDzq7
NTFS上に255バイト以上のファイル名のファイルを作って、WSLから参照するとWSLがコケるな、WSL2でも一緒
制限がバイトと文字の差だと思うが…

LinuxはCIFSでマウントしてもこんななんだろうか?

0985login:Penguin2019/06/16(日) 14:45:00.58ID:8OeAFa65
NTFSは255文字で255バイトを超えるバイト数を扱えるが
ext4は255バイト。Linuxは互換性のため255バイト以内にしておいたほうが良い

sambaでファイルサーバーを作ってるが
時々Windowsの長いファイル名をLinuxで扱えなくて困る

0986login:Penguin2019/06/16(日) 14:46:11.80ID:K7vgaRG5
>>980
15万出して、同じ物だと気づかなかったのププー

0987login:Penguin2019/06/16(日) 14:49:26.77ID:8OeAFa65
>>986
なにか面白いことを言い出したなw
何が同じものだって?

0988login:Penguin2019/06/16(日) 15:01:06.47ID:J1+arhxK
次スレキボンヌ

0989login:Penguin2019/06/16(日) 15:12:15.84ID:8OeAFa65
【Bash】Windows Subsystem for Linux【WSL】6
https://mao.5ch.net/test/read.cgi/linux/1560665525/

0990login:Penguin2019/06/16(日) 15:22:11.39ID:sFQ8frXi
「OSがファイル名を決める」ようだから、ファイル名生成APIをたたけばいいのかな?
それなら字化けは起こらないもんな。
ユーザーが意図した名前で保存できないけど。

0991login:Penguin2019/06/16(日) 15:22:29.56ID:sFQ8frXi
FTP鯖をWin側に立ててみたらFTPクライアントから見えるファイル名のコードはSJISだった。
Dirコマンドをリダイレクト保存したらSJISで保存されてた。
まだまだファイル名はSJIS依存からは逃げられそうにないな。

0992login:Penguin2019/06/16(日) 15:33:28.97ID:8OeAFa65
>>990
ファイル名生成APIなんてものはないけど、
そのAPIで絵文字が生成された場合、アプリが対応していなければ文字化けが起こる
文字化けが起こるのはアプリの問題だって話をしてるんだがわかってるか?

0993login:Penguin2019/06/16(日) 15:34:06.75ID:8OeAFa65
> FTP鯖(というアプリを)Win側に立ててみたらFTPクライアントから見えるファイル名のコードはSJISだった。

完全にアプリの問題です(笑)

0994login:Penguin2019/06/16(日) 15:34:58.33ID:8OeAFa65
> Dirコマンドをリダイレクト保存したらSJISで保存されてた。

それはchcpコマンドで変更するものです。

0995login:Penguin2019/06/16(日) 15:36:57.48ID:8OeAFa65
おお!Windowsはすごい!

chcp 65001して
Dirコマンドをリダイレクト保存したらUTF-8で保存されてた。
完全にファイル名はがUTF-8対応になっているではないか!

0996login:Penguin2019/06/16(日) 15:45:38.22ID:3ft0VgBS
あほらし

0997login:Penguin2019/06/16(日) 15:47:49.97ID:8OeAFa65
ばっ!ばかな! chcpするだけでファイル名がUTF-8に変更するだと!

とか思ってるんだろうなぁw

0998login:Penguin2019/06/16(日) 16:02:47.18ID:Q5jKAwyX
OSの不具をアプリやユーザーに押し付ける奇形ベンダー
腐乱OSに喜んで犯されるドザー衛門たち

肥溜めにどっぷり浸かっていがみ合ってるのがお似合いだなw

0999login:Penguin2019/06/16(日) 16:05:14.76ID:J7l7OvK3
あ、文字コードで惨敗したみたいw

1000login:Penguin2019/06/16(日) 16:05:28.95ID:J7l7OvK3
Windowsはずっと前からUnicode対応ですからねーw

10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 87日 14時間 11分 14秒

10021002Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php

レス数が1000を超えています。これ以上書き込みはできません。