シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その32
https://mevius.5ch.net/test/read.cgi/tech/1571929725/
探検
シェルスクリプト総合 その33
■ このスレッドは過去ログ倉庫に格納されています
2020/03/23(月) 01:12:30.31ID:TYte82vJ
641デフォルトの名無しさん
2020/07/31(金) 21:44:42.11ID:qTuk7lt4642デフォルトの名無しさん
2020/07/31(金) 21:56:20.95ID:k/mzlDiC /usr/bin/bashにbashがあるとは限らない
というか普通無い
というか普通無い
643デフォルトの名無しさん
2020/07/31(金) 22:30:39.13ID:j/9/9lyu644デフォルトの名無しさん
2020/07/31(金) 22:35:57.38ID:h2BvMEZJ 普通は、/bin/bash
じゃないの?
じゃないの?
645デフォルトの名無しさん
2020/07/31(金) 22:55:43.76ID:qTuk7lt4646デフォルトの名無しさん
2020/07/31(金) 23:03:07.55ID:w9lTjcUH $ lsb_release -d
Description: Ubuntu 20.04.1 LTS
$ ls -1 /bin/bash
/bin/bash
$ ls -1 /usr/bin/bash
ls: cannot access '/usr/bin/bash': No such file or directory
Description: Ubuntu 20.04.1 LTS
$ ls -1 /bin/bash
/bin/bash
$ ls -1 /usr/bin/bash
ls: cannot access '/usr/bin/bash': No such file or directory
647デフォルトの名無しさん
2020/07/31(金) 23:31:35.93ID:BwwodwaD >>645
Linuxの場合/usr/binにbashがあるのは/bin -> /usr/binになっている環境ぐらい。それ以外はほぼ間違いなく/binにある。元々シングルユーザーモード用の/binになかったら、シングルユーザーモードでシェルが使えないでしょ。
最近は/binと/usr/binを統合する動きが進んでいるから将来はどっちでも良くなるかもしれないし、あるいは/binがなくなるかもしれないけど、今はまだ従来の環境も普通にあるから/bin/bashがいい。その為にシムリンクを張っているわけなので。
UbuntuやDebianは、今インストールすると統合されるけど、従来の環境からアップデートした場合は統合されない。
あとGentooとかは今クリーンインストールしても統合されない。
Linuxの場合/usr/binにbashがあるのは/bin -> /usr/binになっている環境ぐらい。それ以外はほぼ間違いなく/binにある。元々シングルユーザーモード用の/binになかったら、シングルユーザーモードでシェルが使えないでしょ。
最近は/binと/usr/binを統合する動きが進んでいるから将来はどっちでも良くなるかもしれないし、あるいは/binがなくなるかもしれないけど、今はまだ従来の環境も普通にあるから/bin/bashがいい。その為にシムリンクを張っているわけなので。
UbuntuやDebianは、今インストールすると統合されるけど、従来の環境からアップデートした場合は統合されない。
あとGentooとかは今クリーンインストールしても統合されない。
648デフォルトの名無しさん
2020/08/01(土) 01:21:21.09ID:6XTg5Iao >>647
シングルユーザー環境はまったく想定外なので。。。
ファイルパスをあわせても、実際の具体的な環境は把握できてないし、どうせ動作確認もしないから、きっぱりわりきることにしたのだ。
binの統合の話は、RHEL8のドキュメントで見た気がするけど、だったらもうとっととのっとこう、と思ったのもある。
うちのメインはCentOSだし、そうなってない環境を使うことになったら自分でシンボリックリンクを追加したらええんやろ、ということで。
シングルユーザー環境はまったく想定外なので。。。
ファイルパスをあわせても、実際の具体的な環境は把握できてないし、どうせ動作確認もしないから、きっぱりわりきることにしたのだ。
binの統合の話は、RHEL8のドキュメントで見た気がするけど、だったらもうとっととのっとこう、と思ったのもある。
うちのメインはCentOSだし、そうなってない環境を使うことになったら自分でシンボリックリンクを追加したらええんやろ、ということで。
649デフォルトの名無しさん
2020/08/01(土) 08:14:01.78ID:6JQgXAfu 又聞きで悪いが,Oracleかなにかだと,/usr/bin/にはGNU系の製品が入ってなかったとか。
/export/以下にあるとかなんとか。
/export/以下にあるとかなんとか。
650デフォルトの名無しさん
2020/08/01(土) 08:30:02.46ID:2HCIDb75 /opt/bin とかに入ってるのもあったなぁ
651649
2020/08/01(土) 10:05:25.94ID:6JQgXAfu >>650
あー。これで思い出した。
/opt/bin/だわ。
/export/は利用者のホームディレクトリとかがある所だわ。
Bashの場所とは関係ない話になるけど,
昔$HOME変数とか使わずに/home/***以下にあるやろって決め打ちしてたら
Solarisではまさかの/export/home/***にあるっていう罠に引っ掛かったw
あー。これで思い出した。
/opt/bin/だわ。
/export/は利用者のホームディレクトリとかがある所だわ。
Bashの場所とは関係ない話になるけど,
昔$HOME変数とか使わずに/home/***以下にあるやろって決め打ちしてたら
Solarisではまさかの/export/home/***にあるっていう罠に引っ掛かったw
652デフォルトの名無しさん
2020/08/01(土) 13:49:06.35ID:U7vGE7b3 何十年経ってもディレクトリが分類できる未来はないんやな
653デフォルトの名無しさん
2020/08/01(土) 17:25:34.94ID:WzMhf7ZH >>652
OS作る時にOSの仕様として組み込んでしまうぐらいしか方法無いと思う。ちょっとでも自由があると必ずそこから崩れる。
OS作る時にOSの仕様として組み込んでしまうぐらいしか方法無いと思う。ちょっとでも自由があると必ずそこから崩れる。
654デフォルトの名無しさん
2020/08/01(土) 23:28:16.58ID:huzWWnKB 10MBぐらいのテキストファイルでさ
指定したバイト目から〜バイトの範囲を取得っていうのを
やるととしたらどういう方法が一番高速だろうか?
bashismなし。外部コマンドは呼び出してもいいけど遅いな
指定したバイト目から〜バイトの範囲を取得っていうのを
やるととしたらどういう方法が一番高速だろうか?
bashismなし。外部コマンドは呼び出してもいいけど遅いな
655デフォルトの名無しさん
2020/08/02(日) 00:54:32.67ID:hIQzyyzC Perlでワンライナーが速そう。w
656デフォルトの名無しさん
2020/08/02(日) 00:55:21.79ID:KvZo8Zjs でもPerlを呼び出すコストがかかるでしょ?
657デフォルトの名無しさん
2020/08/02(日) 03:03:58.88ID:hIQzyyzC じゃあ、全文をPerlに書き直そう。w
いっそCで?
マジな話、ファイルを直に開いてseekできるPerlならトータル黒字なんでは。
知らんけど。
いっそCで?
マジな話、ファイルを直に開いてseekできるPerlならトータル黒字なんでは。
知らんけど。
658デフォルトの名無しさん
2020/08/02(日) 08:34:06.01ID:fjyVy3s+ dd, od, head/tail
コンパイル済みのCのコードのほうが速いやろ
コンパイル済みのCのコードのほうが速いやろ
659デフォルトの名無しさん
2020/08/02(日) 09:26:03.25ID:mglN/rTr >>654
dd一択。
dd一択。
660デフォルトの名無しさん
2020/08/02(日) 12:16:22.41ID:pZSLu0WP そもそも設定が/etc/に雑に放り込まれてる時点でな
個人設定だって~/直下だったり~/.dirだったり~/.config/.dirだったりてんでバラバラだし
個人設定だって~/直下だったり~/.dirだったり~/.config/.dirだったりてんでバラバラだし
661デフォルトの名無しさん
2020/08/02(日) 14:14:46.24ID:hIQzyyzC662デフォルトの名無しさん
2020/08/02(日) 14:18:23.50ID:hIQzyyzC いや、head $(())|tailとすればマシなのか。
元コメのPerl起動時間さえ気にする用途にはあわんかもだけど。
元コメのPerl起動時間さえ気にする用途にはあわんかもだけど。
663デフォルトの名無しさん
2020/08/02(日) 15:04:27.21ID:mglN/rTr664デフォルトの名無しさん
2020/08/02(日) 15:44:30.48ID:hIQzyyzC >>663
別人かもだけど、そういう気持ちは元コメから書いてあったから。。。
head/tailは、--bytesオプションがあるやろ?
算術式展開は、でもBash限定なんだっけ?
ただ、いずれにしてもddにしろheadにしろtailにしろ、スキップが読み捨てなのか直シークなのかで速度が違いそう?
別人かもだけど、そういう気持ちは元コメから書いてあったから。。。
head/tailは、--bytesオプションがあるやろ?
算術式展開は、でもBash限定なんだっけ?
ただ、いずれにしてもddにしろheadにしろtailにしろ、スキップが読み捨てなのか直シークなのかで速度が違いそう?
665デフォルトの名無しさん
2020/08/02(日) 19:23:27.16ID:mglN/rTr >>664
算術展開はPOSIXで定義されてるから
最近のPOSIX準拠を謳うシェルなら必ず使える。
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_04
算術展開はPOSIXで定義されてるから
最近のPOSIX準拠を謳うシェルなら必ず使える。
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_04
666デフォルトの名無しさん
2020/08/02(日) 19:30:06.31ID:TAOBMMvc >>661
ファイルの大きさを見て一番後ろを見に行くから遅いはずがない
ファイルの大きさを見て一番後ろを見に行くから遅いはずがない
667デフォルトの名無しさん
2020/08/02(日) 19:39:48.99ID:wSiq9/7A $ ls -1sh input.dat
10M input.dat
$ dd if=input.dat of=output.dat bs=1M skip=1 count=1
$ ls -1sh output.dat
1.0M output.dat
10M input.dat
$ dd if=input.dat of=output.dat bs=1M skip=1 count=1
$ ls -1sh output.dat
1.0M output.dat
668デフォルトの名無しさん
2020/08/02(日) 20:02:20.24ID:hIQzyyzC669デフォルトの名無しさん
2020/08/02(日) 20:07:58.65ID:hIQzyyzC670デフォルトの名無しさん
2020/08/02(日) 20:12:02.85ID:hIQzyyzC671デフォルトの名無しさん
2020/08/02(日) 20:12:54.07ID:mglN/rTr672デフォルトの名無しさん
2020/08/02(日) 22:39:25.35ID:mglN/rTr >>670
素因数分解して,最適な読み出しサイズとブロック単位を決定するのおもしろそう。
素因数分解して,最適な読み出しサイズとブロック単位を決定するのおもしろそう。
673デフォルトの名無しさん
2020/08/03(月) 07:46:56.04ID:U44E4Fsa すみません、
出来てもやるべきでないのは分かるんですけど、
日本語でシンボリックリンク張って日本語でコマンド呼び出しってできますっけ?
$ エコー ヤッホー
ヤッホー
$
みたいな。
出来てもやるべきでないのは分かるんですけど、
日本語でシンボリックリンク張って日本語でコマンド呼び出しってできますっけ?
$ エコー ヤッホー
ヤッホー
$
みたいな。
674デフォルトの名無しさん
2020/08/03(月) 08:04:35.59ID:mpHVQN+T >>673
自分でやってみたら?
自分でやってみたら?
675デフォルトの名無しさん
2020/08/04(火) 20:42:37.24ID:Bm48LwqI できると思うけどな
環境によりけりかな?
使ってる文字コードがシフトJISみたいなやつだとダメかも知れないが、それでも大丈夫なようには作れるからなんとも言えない
環境によりけりかな?
使ってる文字コードがシフトJISみたいなやつだとダメかも知れないが、それでも大丈夫なようには作れるからなんとも言えない
676デフォルトの名無しさん
2020/08/04(火) 21:14:57.71ID:SyQYqCbe そもそもLinux/UnixはShiftJISをサポートできない
OSの設計的に不可能
("無理やり"やってるのはあるが動作保証できない)
OSの設計的に不可能
("無理やり"やってるのはあるが動作保証できない)
677デフォルトの名無しさん
2020/08/04(火) 21:57:03.67ID:nAqHRtEu >>676
逆にWindowsって,「無理やり」じゃなくShift-JISに対応できてたん?
そっちの方が驚きなんだが。
俺には文脈不明の状態でエスケープ文字とバイト化文字の一部とを判別する
OSネイティブな方法が思い付かないw
逆にWindowsって,「無理やり」じゃなくShift-JISに対応できてたん?
そっちの方が驚きなんだが。
俺には文脈不明の状態でエスケープ文字とバイト化文字の一部とを判別する
OSネイティブな方法が思い付かないw
678デフォルトの名無しさん
2020/08/04(火) 22:20:38.92ID:SyQYqCbe >>677
Windows NTは最初のバージョン(1994年)から
Unicode(UTF-16)対応だからね
UTF-16は文字の一部にNULL文字が入るから
当時からC言語の標準ライブラリでは扱えないことがわかっていた
マルチバイト文字は最初から対策済みなわけよ
Windows NTは最初のバージョン(1994年)から
Unicode(UTF-16)対応だからね
UTF-16は文字の一部にNULL文字が入るから
当時からC言語の標準ライブラリでは扱えないことがわかっていた
マルチバイト文字は最初から対策済みなわけよ
679デフォルトの名無しさん
2020/08/04(火) 22:51:05.57ID:tCUx/sk1680デフォルトの名無しさん
2020/08/04(火) 23:01:03.79ID:SyQYqCbe681デフォルトの名無しさん
2020/08/04(火) 23:02:50.20ID:tCUx/sk1 >>678
同時に、OEM文字コードとしてシフトJISを採用したのだから、できない理由になってない。
ちなみに、UTF-16を採用したのは、当時は全多言語がUCS-2を前提にしてたからやろ。
振り返ると微妙な選択だったが、当時の外人にはわからんかったのはしゃあない。
同時に、OEM文字コードとしてシフトJISを採用したのだから、できない理由になってない。
ちなみに、UTF-16を採用したのは、当時は全多言語がUCS-2を前提にしてたからやろ。
振り返ると微妙な選択だったが、当時の外人にはわからんかったのはしゃあない。
682デフォルトの名無しさん
2020/08/04(火) 23:05:00.00ID:SyQYqCbe >>681
Windowsは初期バージョンから多言語対応として作られてるという話
Windowsは初期バージョンから多言語対応として作られてるという話
683デフォルトの名無しさん
2020/08/04(火) 23:06:56.83ID:Btmoo/Kt 普通にShift-JISなUNIXとかあったし。
UNIXの多くのシステムコールでは、char*型引数は単なるバイト列で、別に\とかが意見を持ったりしない(ただしファイル名の/を除く。他に例外があるかは知らない。)。
Shift-JISでは2バイト目に/もnulも来ないから普通は問題ない。
ユーザーランドは何とでもなる。
今時のlinuxなら
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
$ export LANG=ja_JP.sjis
で動く。
ja_JP.utf8とja_JP.eucJPどっちでも動くなら、localeに対応しているから、多分sjisでも動く。
普通にシェルとかも問題ない。
UNIXの多くのシステムコールでは、char*型引数は単なるバイト列で、別に\とかが意見を持ったりしない(ただしファイル名の/を除く。他に例外があるかは知らない。)。
Shift-JISでは2バイト目に/もnulも来ないから普通は問題ない。
ユーザーランドは何とでもなる。
今時のlinuxなら
# localedef -f SHIFT_JIS -i ja_JP ja_JP.SJIS
$ export LANG=ja_JP.sjis
で動く。
ja_JP.utf8とja_JP.eucJPどっちでも動くなら、localeに対応しているから、多分sjisでも動く。
普通にシェルとかも問題ない。
684デフォルトの名無しさん
2020/08/04(火) 23:09:26.33ID:tCUx/sk1 >>680
じゃあ、C言語のどこにシフトJISを拒絶する要素が?
C言語が文字コードに求めてるのは終端が「¥0」であることだけだろ。
シフトJISもその条件に反しないが。
なお、エスケープが面倒というのは、できない理由にはならないので、念のため。
じゃあ、C言語のどこにシフトJISを拒絶する要素が?
C言語が文字コードに求めてるのは終端が「¥0」であることだけだろ。
シフトJISもその条件に反しないが。
なお、エスケープが面倒というのは、できない理由にはならないので、念のため。
685デフォルトの名無しさん
2020/08/04(火) 23:15:26.51ID:tCUx/sk1686デフォルトの名無しさん
2020/08/05(水) 00:11:31.18ID:NEgglKp4 $ echo $BASH_VERSION
5.0.17(1)-release
$ echo $LANG
ja_JP.UTF-8
$ touch "$(echo ソ表.txt| nkf -s)"
$ export LANG=ja_JP.sjis
$ ls -1 *.txt
'ソ表.txt'
$ ls -1 *.txt | od -tx1a
0000000 83 5c 95 5c 2e 74 78 74 0a
etx \ nak \ . t x t nl
5.0.17(1)-release
$ echo $LANG
ja_JP.UTF-8
$ touch "$(echo ソ表.txt| nkf -s)"
$ export LANG=ja_JP.sjis
$ ls -1 *.txt
'ソ表.txt'
$ ls -1 *.txt | od -tx1a
0000000 83 5c 95 5c 2e 74 78 74 0a
etx \ nak \ . t x t nl
687デフォルトの名無しさん
2020/08/05(水) 00:11:35.72ID:AdI/6NZo688デフォルトの名無しさん
2020/08/05(水) 00:46:48.96ID:RWwgydsE689デフォルトの名無しさん
2020/08/05(水) 01:06:50.99ID:RWwgydsE >>686
それは、lsとターミナルががんばったおかげじゃない?w
ダメなケースがあるんじゃないかと思うんだけど、みんなに期待してええんかな?
あ、シフトJIS対応についてのオレの認識は、カーネルには関係ないだろうしシェルは不可能ではないが茨の道やろなあ、くらい。
それは、lsとターミナルががんばったおかげじゃない?w
ダメなケースがあるんじゃないかと思うんだけど、みんなに期待してええんかな?
あ、シフトJIS対応についてのオレの認識は、カーネルには関係ないだろうしシェルは不可能ではないが茨の道やろなあ、くらい。
690デフォルトの名無しさん
2020/08/05(水) 01:46:22.40ID:vmNTB6tp 行末に、ダメ文字があれば、
\ で、改行がエスケープされるとか?
\ で、改行がエスケープされるとか?
691デフォルトの名無しさん
2020/08/05(水) 03:13:28.66ID:AdI/6NZo やれやれだなw
例えば文字を一文字ずつ見ていって
_をスペースに置き換える処理は
漢字を壊すんだよ
例えば文字を一文字ずつ見ていって
_をスペースに置き換える処理は
漢字を壊すんだよ
692デフォルトの名無しさん
2020/08/05(水) 06:17:52.92ID:eDoiMqdf それはやなカンジ
693デフォルトの名無しさん
2020/08/05(水) 06:34:24.95ID:gqsMBs9q bashでダメ文字列を試したら、
a)問題なし
コマンドラインでの入力編集、ヒストリー、コマンドに渡る引数、外部コマンド呼び出し、カレントディレクトリの扱い、行末の\及びダメ文字の扱い、変数の代入と使用、変数のlengthとsubstring、コマンド置換、リダイレクトのファイル名、echo及びprintf、シェル関数名 など大部分
b)一部問題あり
PS1の\wが文字化け($PWDを使うと化けない)
c)問題あり
・globで、5cを含むマルチバイト文字が2文字とカウントされる(「ソ」が?ではなく??で選ばれる。他のASCIIと被る文字は問題ない。)
・変数の置換
abc=オソソソソソソソとして、
${abc//オ/ロ}は動くけど${abc//ソ/ロ}は駄目
一方で${abc//オ/ソ}は問題ない
たしか置換前の方がglob扱いだったから、これは上のglobを直せば同時に直るかもしれない
・alias名
ちょっとした修正で全く問題なくなりそう
a)問題なし
コマンドラインでの入力編集、ヒストリー、コマンドに渡る引数、外部コマンド呼び出し、カレントディレクトリの扱い、行末の\及びダメ文字の扱い、変数の代入と使用、変数のlengthとsubstring、コマンド置換、リダイレクトのファイル名、echo及びprintf、シェル関数名 など大部分
b)一部問題あり
PS1の\wが文字化け($PWDを使うと化けない)
c)問題あり
・globで、5cを含むマルチバイト文字が2文字とカウントされる(「ソ」が?ではなく??で選ばれる。他のASCIIと被る文字は問題ない。)
・変数の置換
abc=オソソソソソソソとして、
${abc//オ/ロ}は動くけど${abc//ソ/ロ}は駄目
一方で${abc//オ/ソ}は問題ない
たしか置換前の方がglob扱いだったから、これは上のglobを直せば同時に直るかもしれない
・alias名
ちょっとした修正で全く問題なくなりそう
694デフォルトの名無しさん
2020/08/05(水) 08:19:35.02ID:AdI/6NZo × ちょっとした修正で全く問題なくなりそう
○ 多数のソフトを修正しなければならないから大問題
○ 多数のソフトを修正しなければならないから大問題
695デフォルトの名無しさん
2020/08/05(水) 08:21:45.48ID:AdI/6NZo SJISの問題は _ の話だけじゃないよ
ASCII文字のほぼ半分。制御文字と数字と一部の記号除いた
アルファベット文字に関する処理すべてが漢字の文字に影響する
例えばAを検索すると一部の漢字にマッチするし
Aを置換すると一部の漢字を壊す
ASCII文字のほぼ半分。制御文字と数字と一部の記号除いた
アルファベット文字に関する処理すべてが漢字の文字に影響する
例えばAを検索すると一部の漢字にマッチするし
Aを置換すると一部の漢字を壊す
696デフォルトの名無しさん
2020/08/05(水) 08:46:51.45ID:AdI/6NZo cat sjis.txt | tr [a-z] [A-Z] > sjis2.txt
ナニヌネノ -> オカガキギ に化ける
地震で津波が発生 -> 誰尻で津濡が発生 に化ける
ナニヌネノ -> オカガキギ に化ける
地震で津波が発生 -> 誰尻で津濡が発生 に化ける
697デフォルトの名無しさん
2020/08/05(水) 09:21:26.65ID:eyNhEtAe > 誰尻で津濡が発生
俺のフィンガーテクを受けたやつはみんなこうなる
俺のフィンガーテクを受けたやつはみんなこうなる
698デフォルトの名無しさん
2020/08/05(水) 09:42:07.23ID:EDez6Utv かつてEUC対応していたこととは次元が違うん?
699デフォルトの名無しさん
2020/08/05(水) 10:01:54.20ID:Mw508nfj というか「WindowsのShift-JISへの対策・対応状況」と
「Linux (Unix) のShift-JISへの対策・対応状況」とでさして違いがない。
「LinuxでShift-JISに対応しようとすると多数のソフトの修正が必要」というのであれば
同じ問題がWindowsでも起きてる。
実際ダメ文字っていう概念はLinuxに限った概念じゃないからね。
むしろWindowsでShift-JISに対応しておらずダメ文字が問題になった例の方が、
人口比的なものもあるだろうけど、より有名じゃない?
「Linux (Unix) のShift-JISへの対策・対応状況」とでさして違いがない。
「LinuxでShift-JISに対応しようとすると多数のソフトの修正が必要」というのであれば
同じ問題がWindowsでも起きてる。
実際ダメ文字っていう概念はLinuxに限った概念じゃないからね。
むしろWindowsでShift-JISに対応しておらずダメ文字が問題になった例の方が、
人口比的なものもあるだろうけど、より有名じゃない?
700デフォルトの名無しさん
2020/08/05(水) 10:08:58.04ID:RWwgydsE >>695
それはOSの問題ではない。
そんな処理をしたユーザーが問題。
たとえば、英字の大文字小文字変換としてコード値に0x20を加減したら、ASCIIならうまくいくが、UTF-8 ならうまくいかない。
現実のテキスト処理をするなら、文字コードの仕様にあわせることはあたりまえ。
シフトJISなら、バイトがマルチバイト文字の上位バイトか下位バイトかいずれでもないかは当然区別して処理しないと。
それはOSの問題ではない。
そんな処理をしたユーザーが問題。
たとえば、英字の大文字小文字変換としてコード値に0x20を加減したら、ASCIIならうまくいくが、UTF-8 ならうまくいかない。
現実のテキスト処理をするなら、文字コードの仕様にあわせることはあたりまえ。
シフトJISなら、バイトがマルチバイト文字の上位バイトか下位バイトかいずれでもないかは当然区別して処理しないと。
701デフォルトの名無しさん
2020/08/05(水) 10:15:34.47ID:AdI/6NZo702デフォルトの名無しさん
2020/08/05(水) 10:16:23.73ID:AdI/6NZo703デフォルトの名無しさん
2020/08/05(水) 10:19:36.65ID:AdI/6NZo >>700
> たとえば、英字の大文字小文字変換としてコード値に0x20を加減したら、ASCIIならうまくいくが、UTF-8 ならうまくいかない。
アホなの?
UTF-8であっても「英字の大文字小文字変換」で「ASCIIの英字大文字」を渡したらうまくいく
お前が言ってるのは「英字の大文字小文字変換」で「ASCIIの英字大文字以外(例えばASCIIの数字)」を
渡したらうまくいかないと言ってるのと同じことだぞ
> たとえば、英字の大文字小文字変換としてコード値に0x20を加減したら、ASCIIならうまくいくが、UTF-8 ならうまくいかない。
アホなの?
UTF-8であっても「英字の大文字小文字変換」で「ASCIIの英字大文字」を渡したらうまくいく
お前が言ってるのは「英字の大文字小文字変換」で「ASCIIの英字大文字以外(例えばASCIIの数字)」を
渡したらうまくいかないと言ってるのと同じことだぞ
704デフォルトの名無しさん
2020/08/05(水) 10:26:28.53ID:RWwgydsE705デフォルトの名無しさん
2020/08/05(水) 10:27:55.11ID:RWwgydsE706デフォルトの名無しさん
2020/08/05(水) 10:43:41.96ID:AdI/6NZo >>705
だからお前が持ち出した「英字の大文字小文字変換」という例は
UTF-8でもSJISでも共に「英字の大文字」にしか対応しておらず
「英字の大文字以外」の動作は "未定義" のコードだろ
未定義なんだからうまくいかなくても想定通りの動作だ
俺が出した tr [a-z] [A-Z] というコードは
「英字の小文字を大文字に変換し"それ以外はそのまま"」というコードなんだよ
UTF-8の文字列を渡した場合は、正しく動くが
SJISの文字列を渡した場合は、正しく動かないんだよ
SJISのために余計な処理が必要になる
Linux/UnixでSJISに対応しようとしたら
このような余計な処理がたくさん必要になるという話をしてる
だからお前が持ち出した「英字の大文字小文字変換」という例は
UTF-8でもSJISでも共に「英字の大文字」にしか対応しておらず
「英字の大文字以外」の動作は "未定義" のコードだろ
未定義なんだからうまくいかなくても想定通りの動作だ
俺が出した tr [a-z] [A-Z] というコードは
「英字の小文字を大文字に変換し"それ以外はそのまま"」というコードなんだよ
UTF-8の文字列を渡した場合は、正しく動くが
SJISの文字列を渡した場合は、正しく動かないんだよ
SJISのために余計な処理が必要になる
Linux/UnixでSJISに対応しようとしたら
このような余計な処理がたくさん必要になるという話をしてる
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文字コードなんだけどな。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★3 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 【千葉】成田空港の保安検査員(八街市八街ほ)を逮捕 中国籍の女性が置き忘れた現金入りのポーチを窃盗か [ぐれ★]
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★3
- 【実況】博衣こよりのえちえちホロ分かり手クイズ🧪🏴‍☠🌸 ★4
- 【高市悲報】中国「国連安保理の許可なしに日本を攻撃可能だ」★2 [115996789]
- 【んな専🏡】華金もんなっしょいとはやれやれなのらね🍬(・o・🍬)🏰
- 日中戦争起きたら5日で自衛隊壊滅するらしい。じゃあ徴兵も無いし、俺等が必死になって反対してやる理由なくね? [237216734]
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
