シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
前スレ: シェルスクリプト総合 その34
https://mevius.5ch.net/test/read.cgi/tech/1597990675/
探検
シェルスクリプト総合 その35
■ このスレッドは過去ログ倉庫に格納されています
2020/11/24(火) 21:37:20.06ID:mbTiTj6s
800デフォルトの名無しさん
2021/02/03(水) 05:05:52.97ID:jQBymAxP レスする前にちゃんと読み返したほうがいいよ
としか言いようがない
1.コマンド置換とreadは同じであるはず/あるべきと思った
2.それが間違いだったのに自ら先に返答レスを馬鹿にした
この2つの間違いを決して認められないだけ
だけでよくそんだけ小手先の誤魔化しを続けられるな。マジキチすぎだろう
としか言いようがない
1.コマンド置換とreadは同じであるはず/あるべきと思った
2.それが間違いだったのに自ら先に返答レスを馬鹿にした
この2つの間違いを決して認められないだけ
だけでよくそんだけ小手先の誤魔化しを続けられるな。マジキチすぎだろう
801デフォルトの名無しさん
2021/02/03(水) 05:06:58.67ID:BvAjTIO8 > 1.コマンド置換とreadは同じであるはず/あるべきと思った
思ったとか、それはお前の感想でしかない
> 2.それが間違いだったのに自ら先に返答レスを馬鹿にした
「それ」とはお前の感想である
思ったとか、それはお前の感想でしかない
> 2.それが間違いだったのに自ら先に返答レスを馬鹿にした
「それ」とはお前の感想である
802デフォルトの名無しさん
2021/02/03(水) 05:08:08.44ID:jQBymAxP 何でそんなアホな小手先の誤魔化し文書けるの??
803デフォルトの名無しさん
2021/02/03(水) 05:09:08.17ID:BvAjTIO8 ほらね。俺が言い返しても、
こいつは言い返してこない。
言い返せないというのが正しいがw
こいつは言い返してこない。
言い返せないというのが正しいがw
804デフォルトの名無しさん
2021/02/03(水) 05:11:25.52ID:jQBymAxP すぐにそういう馬鹿なこと言うし
アホな小手先の誤魔化し文になんで正面からいつまでも付き合わなきゃならんねん
アホな小手先の誤魔化し文という自覚がないのか?マジキチすぎすぎだろう
アホな小手先の誤魔化し文になんで正面からいつまでも付き合わなきゃならんねん
アホな小手先の誤魔化し文という自覚がないのか?マジキチすぎすぎだろう
805デフォルトの名無しさん
2021/02/03(水) 05:13:12.26ID:BvAjTIO8 それにコマンド置換とreadが全く違う動作をすると思ってそうだよなw
違うところがあるのは知ってるからそれは聞いてない
同じ動作をするところがあるのを、はたしてこいつは知ってるんだろうか?w
ま、また関係ない話をしてごまかすだろうな
違うところがあるのは知ってるからそれは聞いてない
同じ動作をするところがあるのを、はたしてこいつは知ってるんだろうか?w
ま、また関係ない話をしてごまかすだろうな
806デフォルトの名無しさん
2021/02/03(水) 05:16:11.71ID:jQBymAxP 後付けて決めつけが始まりましたwww
ソース読んでるし、他のシェルで試してもいるし
イマイチ何のことかだが、こいつだと言い出しそうなのは大体推測できる
こんなこと言い出したのもついさっきわかったとかだろうな。違うか?w
ソース読んでるし、他のシェルで試してもいるし
イマイチ何のことかだが、こいつだと言い出しそうなのは大体推測できる
こんなこと言い出したのもついさっきわかったとかだろうな。違うか?w
807デフォルトの名無しさん
2021/02/03(水) 05:18:11.87ID:BvAjTIO8 ほらね。俺のレスへの言及が一切なし
808デフォルトの名無しさん
2021/02/03(水) 05:19:36.98ID:BvAjTIO8 だいたいさぁ command substitution: ignored null byte in input を出すなら、
read: ignored null byte in input も出すべきだって思うだろ
これに関する動作は同じなんだから
多分それも知らなかったんだろうけどな
read: ignored null byte in input も出すべきだって思うだろ
これに関する動作は同じなんだから
多分それも知らなかったんだろうけどな
809デフォルトの名無しさん
2021/02/03(水) 05:20:21.08ID:jQBymAxP レスする前にちゃんと読み返したほうがいいよ
www
いい加減怒るヤツ出るだろうし、誤魔化しに付き合うのももういいってので
どうして4.4からコマンド置換のとこでメッセージ出すようになったか
開発者の気分だろうwもしくはそこの部分で開発者に何らかの注文があったんだろ
コマンド置換の部分だけの修正(ソースコードからは気分としか読めないけどw)なのでコマンド置換だけの話、readは関係ない
readに主題置いて聞かれたら、readはコマンド置換じゃないから という返答は特におかしくもない
1.コマンド置換とreadは同じであるはず/あるべきと思った
2.それが間違いだったのに自ら先に返答レスを馬鹿にした
この2つの間違いを決して認められないだけ
というだけのお話でしたとさw
www
いい加減怒るヤツ出るだろうし、誤魔化しに付き合うのももういいってので
どうして4.4からコマンド置換のとこでメッセージ出すようになったか
開発者の気分だろうwもしくはそこの部分で開発者に何らかの注文があったんだろ
コマンド置換の部分だけの修正(ソースコードからは気分としか読めないけどw)なのでコマンド置換だけの話、readは関係ない
readに主題置いて聞かれたら、readはコマンド置換じゃないから という返答は特におかしくもない
1.コマンド置換とreadは同じであるはず/あるべきと思った
2.それが間違いだったのに自ら先に返答レスを馬鹿にした
この2つの間違いを決して認められないだけ
というだけのお話でしたとさw
810デフォルトの名無しさん
2021/02/03(水) 05:21:04.31ID:BvAjTIO8 > どうして4.4からコマンド置換のとこでメッセージ出すようになったか
誰もそんな事気にしてない
誰もそんな事気にしてない
811デフォルトの名無しさん
2021/02/03(水) 05:21:20.27ID:BvAjTIO8 > 1.コマンド置換とreadは同じであるはず/あるべきと思った
同じところがありますね。
同じところがありますね。
812デフォルトの名無しさん
2021/02/03(水) 05:22:16.05ID:BvAjTIO8 もうネタバレしてやると
コマンド置換とreadは、どちらも ignored null byte in input は同じなんですよ
どちらも入力のnullバイトを無視してる
コマンド置換とreadは、どちらも ignored null byte in input は同じなんですよ
どちらも入力のnullバイトを無視してる
813デフォルトの名無しさん
2021/02/03(水) 05:27:21.54ID:jQBymAxP >>779ですでに書かれてることを何を一人悦に入っているのだか
すでに書かれてることを、何自分は知ってるお前(ら)は知らないと言えるんだか
>コマンド置換とreadは、どちらも ignored null byte in input は同じなんですよ
ちょっと違うんだなあ。さてどう違うでしょう?ww
すでに書かれてることを、何自分は知ってるお前(ら)は知らないと言えるんだか
>コマンド置換とreadは、どちらも ignored null byte in input は同じなんですよ
ちょっと違うんだなあ。さてどう違うでしょう?ww
814デフォルトの名無しさん
2021/02/03(水) 05:29:11.45ID:BvAjTIO8 違いはありません。どちらも同じように ignored null byte in input します。
英語わかる? 入力のNULLバイトを無視するって書いてあるんだよw
英語わかる? 入力のNULLバイトを無視するって書いてあるんだよw
815デフォルトの名無しさん
2021/02/03(水) 05:30:22.06ID:jQBymAxP ふふ〜んwww
「ちょっと違う」ことは知らないということね
「ちょっと違う」ことは知らないということね
816デフォルトの名無しさん
2021/02/03(水) 05:30:41.09ID:BvAjTIO8 1. コマンド置換とreadはどちらも入力のNULLバイトを無視する
2. 質問は「なんでreadだとこのエラーはださないんだろう?」
これだけなのにreadが主語だ!とか理由わからないことを言って
ずーっと自分の勘違いをごまかしてる
2. 質問は「なんでreadだとこのエラーはださないんだろう?」
これだけなのにreadが主語だ!とか理由わからないことを言って
ずーっと自分の勘違いをごまかしてる
817デフォルトの名無しさん
2021/02/03(水) 05:31:53.40ID:BvAjTIO8818デフォルトの名無しさん
2021/02/03(水) 05:32:05.41ID:jQBymAxP はい出ました、また話題を変えての堂々巡り巡り
レスする前にちゃんと読み返したほうがいいよ
www
一人でやってなさい。じゃね
レスする前にちゃんと読み返したほうがいいよ
www
一人でやってなさい。じゃね
819デフォルトの名無しさん
2021/02/03(水) 05:32:55.92ID:BvAjTIO8 逃げました(完)
820デフォルトの名無しさん
2021/02/03(水) 05:35:38.89ID:jQBymAxP 逃げてないよぉ
他の人に怒られるのが嫌なだけだぞw本当にお前は自分がどれほどだと思ってるねん
他の人に怒られるのが嫌なだけだぞw本当にお前は自分がどれほどだと思ってるねん
821デフォルトの名無しさん
2021/02/03(水) 05:42:02.60ID:BvAjTIO8 俺がじゃなくて、お前がアスペ
822デフォルトの名無しさん
2021/02/03(水) 05:46:48.79ID:jQBymAxP www
823デフォルトの名無しさん
2021/02/03(水) 06:57:20.76ID:nY3Ll5sQ 質問者おいてけぼりで夜通しマウント合戦
きもっ
きもっ
824デフォルトの名無しさん
2021/02/03(水) 08:29:21.99ID:OYjylJSn 質問者おいてけぼりだと思ってるやつがいるらしい
そんなやついないだろう
そんなやついないだろう
825デフォルトの名無しさん
2021/02/03(水) 08:37:12.75ID:Ah2dOrtc >>823 に1票
826デフォルトの名無しさん
2021/02/03(水) 08:52:34.64ID:E3bCmnaA 嘘くさ
827デフォルトの名無しさん
2021/02/03(水) 09:51:45.69ID:gCnP5AIU828デフォルトの名無しさん
2021/02/03(水) 11:06:47.70ID:Cm5PGF2y いつまでこの話題を続ける気だよw
829デフォルトの名無しさん
2021/02/03(水) 18:30:45.39ID:BvAjTIO8 >>827
いつものことです
いつものことです
830デフォルトの名無しさん
2021/02/04(木) 12:41:51.48ID:Jn7zqfXf 自己紹介
831デフォルトの名無しさん
2021/02/07(日) 19:23:43.78ID:95HB2PSV $find . -type f -name '*.mp4' -exec sh -c "echo /Applications/Safari.app " \;
/Applications/Safari.app
/Applications/Safari.app
$find . -type f -name '*.mp4' -exec sh -c "echo $dirname /Applications/Safari.app " \;
/Applications/Safari.app
/Applications/Safari.app
$dirname /Applications/Safari.app
/Applications
どうして2番目の例ではdirnameが作用していないように見えるのですか?
/Applications/Safari.app
/Applications/Safari.app
$find . -type f -name '*.mp4' -exec sh -c "echo $dirname /Applications/Safari.app " \;
/Applications/Safari.app
/Applications/Safari.app
$dirname /Applications/Safari.app
/Applications
どうして2番目の例ではdirnameが作用していないように見えるのですか?
832デフォルトの名無しさん
2021/02/07(日) 19:26:54.39ID:yqZHDrnv しらんけどダブクォだろ
833デフォルトの名無しさん
2021/02/07(日) 19:30:49.83ID:urVbT3ji $dirname /Applications/Safari.app
だと、dirnameという変数を展開しようとしてるだけだろ
dirnameというコマンドを実行するのではなく
コマンドプロンプトのとちょっと見分けづらいのでちゃんとスペースを置くべきだな
だと、dirnameという変数を展開しようとしてるだけだろ
dirnameというコマンドを実行するのではなく
コマンドプロンプトのとちょっと見分けづらいのでちゃんとスペースを置くべきだな
834デフォルトの名無しさん
2021/02/07(日) 19:34:34.15ID:/Qje/xZk 何がしたいの?
835デフォルトの名無しさん
2021/02/07(日) 19:39:40.46ID:urVbT3ji さっぱりわからんなw
動作確認の途中なんだろう。findしても同じ結果出すだけだしな
そのうち {} とか入れたりするんだろうが、
実行したいなら $() だろう
-exec sh -c "
は
-exec sh -c '
でないとマズそうマズいだろうな
な感じかなあ
動作確認の途中なんだろう。findしても同じ結果出すだけだしな
そのうち {} とか入れたりするんだろうが、
実行したいなら $() だろう
-exec sh -c "
は
-exec sh -c '
でないとマズそうマズいだろうな
な感じかなあ
836デフォルトの名無しさん
2021/02/07(日) 20:30:53.02ID:/kKFnkGm ${〜} だろ
echo ${dirname}/Applications/Safari.app
echo ${dirname}/Applications/Safari.app
837デフォルトの名無しさん
2021/02/07(日) 23:59:19.31ID:rB7egHB7 パラメータ展開よりbasename/dirnameコマンドのほうが分かりやすいね
~$ DIR='/ChonChon/Chon.bak'
~$ basename $DIR
Chon.bak
~$ echo ${DIR##*/}
Chon.bak
~$ basename $DIR
Chon.bak
~$ echo ${DIR#*/}
ChonChon/Chon.bak
~$ echo ${DIR##*/}
Chon.bak
~$ echo ${DIR%/*}
/ChonChon
~$ echo ${DIR%%/*}
~$ dirname $DIR
/ChonChon
~$ DIR='/ChonChon/Chon.bak'
~$ basename $DIR
Chon.bak
~$ echo ${DIR##*/}
Chon.bak
~$ basename $DIR
Chon.bak
~$ echo ${DIR#*/}
ChonChon/Chon.bak
~$ echo ${DIR##*/}
Chon.bak
~$ echo ${DIR%/*}
/ChonChon
~$ echo ${DIR%%/*}
~$ dirname $DIR
/ChonChon
838831
2021/02/08(月) 00:07:37.75ID:vQsk29JM839デフォルトの名無しさん
2021/02/08(月) 01:01:47.00ID:mwZivU/L840デフォルトの名無しさん
2021/02/08(月) 02:02:04.12ID:MxYuS/Yw >>838
$ find . -type f -name '*.mp4' -exec sh -c "echo $dirname /Applications/Safari.app " ¥;
$ dirname /Applications/Safari.app
$ find . -type f -name '*.mp4' -exec sh -c "echo $dirname /Applications/Safari.app " ¥;
$ dirname /Applications/Safari.app
841デフォルトの名無しさん
2021/02/08(月) 17:24:23.44ID:TrZhHLZT # sudo apt install xclip
CLIPB=$(xclip -o)
echo $( basename $CLIPB )
CLIPB=$(xclip -o)
echo $( basename $CLIPB )
842デフォルトの名無しさん
2021/02/08(月) 19:08:48.56ID:0fSH6U0R Ruby なら、glob を使う
# . で始まる、隠し directory, file を除く
glob_pattern = "C:/Users/Owner/Documents/*.csv"
Dir.glob( glob_pattern )
.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each { |full_path| puts full_path }
出力
C:/Users/Owner/Documents/a.csv
C:/Users/Owner/Documents/b.csv
# . で始まる、隠し directory, file を除く
glob_pattern = "C:/Users/Owner/Documents/*.csv"
Dir.glob( glob_pattern )
.select { |full_path| File.file?( full_path ) } # ファイルのみ
.each { |full_path| puts full_path }
出力
C:/Users/Owner/Documents/a.csv
C:/Users/Owner/Documents/b.csv
843デフォルトの名無しさん
2021/02/08(月) 19:27:57.47ID:5qp7IeLu すでにroot
844デフォルトの名無しさん
2021/02/08(月) 19:29:24.19ID:5qp7IeLu Rubyなら〜
C:/
特異すぎ
C:/
特異すぎ
845デフォルトの名無しさん
2021/02/08(月) 20:15:13.87ID:luijRT1t なぜ定期的にRubyが出てくるのか
846842
2021/02/08(月) 20:50:44.33ID:0fSH6U0R シェルスクリプトも、Windows 10, WSL2, Ubuntu 18.04, VSCode でやってる
Ruby は、Linux用・Windows用の両方を入れてる
Ruby は、Linux用・Windows用の両方を入れてる
847デフォルトの名無しさん
2021/02/08(月) 20:53:25.78ID:kogF3g22849デフォルトの名無しさん
2021/02/10(水) 14:26:08.93ID:BVEov/zu Alpine?busyboxってコマンド追加した場合の競合どうなってるんですかね?
たとえばdateがGNU版と挙動が違うのでcoreutils追加したんですけど
元々/bin/dateだったのが追加後も/bin/dateのままなのに呼び出されるのはしっかりcoreutilsのに変わってます
macではdateとgdateで使い分けられたのでモヤモヤします
たとえばdateがGNU版と挙動が違うのでcoreutils追加したんですけど
元々/bin/dateだったのが追加後も/bin/dateのままなのに呼び出されるのはしっかりcoreutilsのに変わってます
macではdateとgdateで使い分けられたのでモヤモヤします
850デフォルトの名無しさん
2021/02/10(水) 15:19:36.03ID:kdTQDXtx 汎用ではなくカスタマイズした環境前提だからそんなの気にしない
置き換わっても置き換わるのを知って作るそういう独自の環境を自ら望んで作る
置き換わっても置き換わるのを知って作るそういう独自の環境を自ら望んで作る
851デフォルトの名無しさん
2021/02/10(水) 18:01:20.69ID:BVEov/zu そういうものなんですねありがとうございます!
852デフォルトの名無しさん
2021/02/10(水) 20:16:55.68ID:kDXEbzyj >>849
ディストリの方針次第。Debianとかだってvim-tinyを入れるか
通常のvimを入れるかで呼び出されるvimが変わる
どちらを使うかの切り替え機能も持っている
パッケージで入れる分には、入れても動作するように作られてる
パッケージで入れて壊れたらそれはディストリのバグ
Debianなんかはbusyboxを入れてもデフォルトで置き換えたりしない
alpineはbusyboxの方がデフォルトなんだから、それで動くように作られてる
それをcoreutilsに変更しても動くように作られてるだろう
macの場合、gdateを入れるのはサードパーティのHomebrew
Apple社と一切関係ないフリーソフトで、Appleは動作保証もしてないのだから
Homebrewはデフォルトで置き換えたりしない。壊れる可能性があるから
dateを置き換えられないだけで使い分ける方が便利なわけではない
そもそもbusyboxはcoreutilsのコマンドと比較して一部の機能が
実装されてないだけで、実装されてる機能に関しては互換性があるように作られてる
しかしMacのdateはBSD版なのでgdateと互換性がない
ディストリの方針次第。Debianとかだってvim-tinyを入れるか
通常のvimを入れるかで呼び出されるvimが変わる
どちらを使うかの切り替え機能も持っている
パッケージで入れる分には、入れても動作するように作られてる
パッケージで入れて壊れたらそれはディストリのバグ
Debianなんかはbusyboxを入れてもデフォルトで置き換えたりしない
alpineはbusyboxの方がデフォルトなんだから、それで動くように作られてる
それをcoreutilsに変更しても動くように作られてるだろう
macの場合、gdateを入れるのはサードパーティのHomebrew
Apple社と一切関係ないフリーソフトで、Appleは動作保証もしてないのだから
Homebrewはデフォルトで置き換えたりしない。壊れる可能性があるから
dateを置き換えられないだけで使い分ける方が便利なわけではない
そもそもbusyboxはcoreutilsのコマンドと比較して一部の機能が
実装されてないだけで、実装されてる機能に関しては互換性があるように作られてる
しかしMacのdateはBSD版なのでgdateと互換性がない
853デフォルトの名無しさん
2021/02/12(金) 23:49:25.35ID:0z7QwFq3 超高速なシェルって登場しないもんかね?
JITエンジン搭載して最適化とかガシガシやるようなやつ
JITエンジン搭載して最適化とかガシガシやるようなやつ
854デフォルトの名無しさん
2021/02/13(土) 09:35:59.06ID:3MHGVgjG >>853
それはスクリプト言語の高速化、とはちがうのけ?
それはスクリプト言語の高速化、とはちがうのけ?
855デフォルトの名無しさん
2021/02/13(土) 11:22:13.76ID:scVpGKPS >>854
お前の言うスクリプト言語の高速化が何のことかわからんって
お前の言うスクリプト言語の高速化が何のことかわからんって
856デフォルトの名無しさん
2021/02/13(土) 15:47:07.99ID:Ieh1QGrP857デフォルトの名無しさん
2021/02/13(土) 15:50:58.00ID:scVpGKPS 超高速なシェルって〜という質問に対して
スクリプト言語の高速化とは違うのけと言われてもね
飴がほしいに対して
キャンディーとは違うのけと言うようなもんだよ
お前は何がいいたいのか
スクリプト言語の高速化とは違うのけと言われてもね
飴がほしいに対して
キャンディーとは違うのけと言うようなもんだよ
お前は何がいいたいのか
858デフォルトの名無しさん
2021/02/13(土) 16:12:05.01ID:ZrAw7sjN 思慮が浅いからわからんのだろう
思慮が浅いからトンチンカンな疑問が湧くのだろう
思慮が浅いからトンチンカンな疑問が湧くのだろう
859デフォルトの名無しさん
2021/02/13(土) 16:14:48.15ID:Ieh1QGrP860デフォルトの名無しさん
2021/02/13(土) 16:20:51.53ID:scVpGKPS 各自適当に当てはまるといっておきながら何を言ってるんだ?
(俺の定義に当てはまるものは)ノーだ
これでお前は何のことかわかるのか?
(俺の定義に当てはまるものは)ノーだ
これでお前は何のことかわかるのか?
861デフォルトの名無しさん
2021/02/13(土) 16:44:38.58ID:IQ0h7Vrd これはいつものやつ
862デフォルトの名無しさん
2021/02/13(土) 16:46:14.65ID:scVpGKPS 俺もそう思った
863デフォルトの名無しさん
2021/02/13(土) 16:50:09.98ID:IQ0h7Vrd いやお前がなんだが
いつものやつもそういうレスを前にいくつかしてたからなおだな
いつものやつもそういうレスを前にいくつかしてたからなおだな
864デフォルトの名無しさん
2021/02/13(土) 16:52:14.62ID:scVpGKPS 俺は違うぞ?何を言ってるんだか
865デフォルトの名無しさん
2021/02/13(土) 16:58:17.73ID:IQ0h7Vrd866デフォルトの名無しさん
2021/02/13(土) 21:13:09.13ID:2KIaYprT 超高速なシェルって言ってもどこを高速化したいのか分からんね
他のスクリプト言語と違ってプロセス起動を平気でやる性質があるから
JIT実装したところで、ねえ……
他のスクリプト言語と違ってプロセス起動を平気でやる性質があるから
JIT実装したところで、ねえ……
867デフォルトの名無しさん
2021/02/13(土) 21:18:19.57ID:GplYrMVz868デフォルトの名無しさん
2021/02/13(土) 21:48:07.63ID:TtDJ0hV3869デフォルトの名無しさん
2021/02/14(日) 01:27:13.76ID:u5RUQBwf デーモン起動とかにも使われるシェルスクリプトは、速さよりもちょっとでも軽いほうがええやろ。
JITなんかにメモリを使う余裕はないな。
JITなんかにメモリを使う余裕はないな。
870デフォルトの名無しさん
2021/02/14(日) 14:36:19.88ID:kcgt6YrO デーモンとかに使うのは素の/bin/shで、言う通り軽い方なのが採用されてるだろう
JIT云々はそういうのではないのだろう。今あるbashとかzshとかそういう方向の
JIT云々はそういうのではないのだろう。今あるbashとかzshとかそういう方向の
871デフォルトの名無しさん
2021/02/14(日) 15:27:49.90ID:PhDiV4m5 シェルスクリプトの高速化って結局、exprに対する$()みたいな、外部コマンドの組み込みコマンド化が原則になると思うけど、
それで行き着く先ってPerlでしかないよね
まあRob Pikeの言う通り計測しろって話ではあるので、ボトルネックが実際fork/waitじゃなければまったくの的外れだけど
それで行き着く先ってPerlでしかないよね
まあRob Pikeの言う通り計測しろって話ではあるので、ボトルネックが実際fork/waitじゃなければまったくの的外れだけど
872デフォルトの名無しさん
2021/02/14(日) 18:02:37.21ID:zXgJS0zG シェルで使えるってだけならRUSTが速そうだけど
873デフォルトの名無しさん
2021/02/14(日) 23:21:01.83ID:Xb0b89w4 >>871
JavaScriptの言語仕様を見ればわかるけど
JavaScript自体ではファイルの読み書きはできないんだよ
つまりI/Oを伴う機能は言語仕様としては本質的に不要と言える
外部コマンドなんて殆どがI/Oなので、それらを組み込む必要はない
Perlは多数組み込んでるので良くない
JavaScriptと同じように、I/Oを必要としないものは
シェル組み込みとして、メモリ計算処理を高速化すればいい
例えばメモリだけでできる単純な値比較や計算だけでもシェルは遅い
JavaScriptの言語仕様を見ればわかるけど
JavaScript自体ではファイルの読み書きはできないんだよ
つまりI/Oを伴う機能は言語仕様としては本質的に不要と言える
外部コマンドなんて殆どがI/Oなので、それらを組み込む必要はない
Perlは多数組み込んでるので良くない
JavaScriptと同じように、I/Oを必要としないものは
シェル組み込みとして、メモリ計算処理を高速化すればいい
例えばメモリだけでできる単純な値比較や計算だけでもシェルは遅い
874デフォルトの名無しさん
2021/02/14(日) 23:39:01.27ID:u5RUQBwf >>873
おまえ、いつものポジキチやろ?
おまえ、いつものポジキチやろ?
875デフォルトの名無しさん
2021/02/14(日) 23:58:12.52ID:Xb0b89w4 >>874
違うけど、お前はいつもの「ポジキチと争ってるやつ」ってことは確定かなw
違うけど、お前はいつもの「ポジキチと争ってるやつ」ってことは確定かなw
876デフォルトの名無しさん
2021/02/15(月) 00:59:58.92ID:DbVx2um6 争ってるがどこまでを指しているのかわからんが、反論してるのは複数居るだろう
確定しても意味なさげw
確定しても意味なさげw
877デフォルトの名無しさん
2021/02/15(月) 01:11:01.23ID:Yv9X0Du7 >>873
ブラウザというホスト環境にのせるために考えられた言語だからI/Oがないだけ
ホスト環境がI/OやEvent Loopを補完しないと動かないし役に立たない
そういう種類の言語の仕様にI/Oがないからといって
一般的なプログラミング言語仕様にI/Oが本質的に不要なわけない
I/O無しではどんなプログラムも役に立たないから
ブラウザというホスト環境にのせるために考えられた言語だからI/Oがないだけ
ホスト環境がI/OやEvent Loopを補完しないと動かないし役に立たない
そういう種類の言語の仕様にI/Oがないからといって
一般的なプログラミング言語仕様にI/Oが本質的に不要なわけない
I/O無しではどんなプログラムも役に立たないから
878デフォルトの名無しさん
2021/02/15(月) 01:12:58.43ID:DbVx2um6 JavaScriptは元々はブラウザ上で動くが発端だからな
勝手にどこぞからロードしてユーザの意思に関係なく勝手に動くプログラムだからな
ローカルファイルにアクセスなんて自由にできたらどうなるか火を見るより明らか
ていうのがあって、何言ってんだかなという>>874じゃないのかな。知らんけどw
勝手にどこぞからロードしてユーザの意思に関係なく勝手に動くプログラムだからな
ローカルファイルにアクセスなんて自由にできたらどうなるか火を見るより明らか
ていうのがあって、何言ってんだかなという>>874じゃないのかな。知らんけどw
879デフォルトの名無しさん
2021/02/15(月) 01:13:50.12ID:DbVx2um6 あ、なんか被ったw
880デフォルトの名無しさん
2021/02/16(火) 03:00:19.59ID:An9FQZDm >>877
C言語にも、I/Oないよ
C言語にも、I/Oないよ
881デフォルトの名無しさん
2021/02/16(火) 03:21:55.67ID:jKfE5F96 >>880
だから、#includeだったりリンカオプションだったり、めんどくさい準備が必要なんだけどな。
だから、#includeだったりリンカオプションだったり、めんどくさい準備が必要なんだけどな。
882デフォルトの名無しさん
2021/02/16(火) 06:35:07.01ID:ZcpmZlC/ 関係ないだろ
883デフォルトの名無しさん
2021/02/16(火) 10:30:49.70ID:2fDc5cBr >>880
嘘ついちゃだめ
嘘ついちゃだめ
884デフォルトの名無しさん
2021/02/16(火) 10:43:13.65ID:ZcpmZlC/ 言語とライブラリの区別をつけたほうが良いと思うよ
885デフォルトの名無しさん
2021/02/16(火) 11:56:09.07ID:VrzH5GTZ C言語を持ち出すのはアセンブリに無いと言っているようなもんだな
どういう意味かわかるかな?
どういう意味かわかるかな?
886デフォルトの名無しさん
2021/02/16(火) 12:22:40.92ID:jKfE5F96887デフォルトの名無しさん
2021/02/16(火) 13:03:01.94ID:VrzH5GTZ アセンブリ言語に無いのは当たり前なのはわかるね?
でもアセンブリでもファイルI/Oはできるよね?
C言語はアセンブリに近しい言語だというのはわかる?
だったら「言語仕様」としては無いのは普通と言える
アセンブリでファイルI/Oはアセンブリで記述したライブラリ(サブルーチン)を用いるのと同じように
てか「言語仕様」としては無いが、原典である K&R C でもすでにファイルI/Oに関しては記述があるし、
それに則っての標準としてのライブラリが「必ず」あるだろうから、言語仕様としてないあれはライブラリというのは無理筋だな
プログラミング言語だからとどれも一緒の扱いにするのが間違いでもあるな
でもアセンブリでもファイルI/Oはできるよね?
C言語はアセンブリに近しい言語だというのはわかる?
だったら「言語仕様」としては無いのは普通と言える
アセンブリでファイルI/Oはアセンブリで記述したライブラリ(サブルーチン)を用いるのと同じように
てか「言語仕様」としては無いが、原典である K&R C でもすでにファイルI/Oに関しては記述があるし、
それに則っての標準としてのライブラリが「必ず」あるだろうから、言語仕様としてないあれはライブラリというのは無理筋だな
プログラミング言語だからとどれも一緒の扱いにするのが間違いでもあるな
888デフォルトの名無しさん
2021/02/16(火) 13:06:51.96ID:VrzH5GTZ889デフォルトの名無しさん
2021/02/16(火) 16:08:25.47ID:An9FQZDm >>885
例えば8086のOUT命令はアセンブリにないことになってるの?
例えば8086のOUT命令はアセンブリにないことになってるの?
890デフォルトの名無しさん
2021/02/16(火) 16:14:30.97ID:jKfE5F96891デフォルトの名無しさん
2021/02/16(火) 16:32:25.56ID:VrzH5GTZ892デフォルトの名無しさん
2021/02/16(火) 16:47:09.77ID:VrzH5GTZ 初版とかどうなのかと思い探したらあった。いいないんたーねっつは
CHAPTER 7: INPUT AND OUTPUT
Input and output facilities are not part of the C language, so we have
de-emphasized them in our presentation thus far. Nonetheless, real pro-
grams do interact with their environment in much more complicated ways
than those we have shown before. In this chapter we will describe “the
standard I/O library,” a set of functions designed to provide a standard I/O
system for C programs. The functions are intended to present a convenient
programming interface, yet reflect only operations that can be provided on
most modern operating systems. The routines are efficient enough that
users should seldom feel the need to circumvent them “for efficiency”
regardless of how critical the application. Finally, the routines are meant to
be “portable,” in the sense that they will exist in compatible form on any
system where C exists, and that programs which confine their system
interactions to facilities provided by the standard library can be moved from
one system to another essentially without change.
We will not try to describe the entire I/O library here; we are more
interested in showing the essentials of writing C programs that interact with
their operating system environment.
CHAPTER 7: INPUT AND OUTPUT
Input and output facilities are not part of the C language, so we have
de-emphasized them in our presentation thus far. Nonetheless, real pro-
grams do interact with their environment in much more complicated ways
than those we have shown before. In this chapter we will describe “the
standard I/O library,” a set of functions designed to provide a standard I/O
system for C programs. The functions are intended to present a convenient
programming interface, yet reflect only operations that can be provided on
most modern operating systems. The routines are efficient enough that
users should seldom feel the need to circumvent them “for efficiency”
regardless of how critical the application. Finally, the routines are meant to
be “portable,” in the sense that they will exist in compatible form on any
system where C exists, and that programs which confine their system
interactions to facilities provided by the standard library can be moved from
one system to another essentially without change.
We will not try to describe the entire I/O library here; we are more
interested in showing the essentials of writing C programs that interact with
their operating system environment.
893デフォルトの名無しさん
2021/02/16(火) 16:51:36.76ID:VrzH5GTZ K&R The C Program Language が Cの原典ではないというなら話にならないからもう知らないw
フリースタンディング環境とやらののうちのどこぞの環境でファイルI/Oがないなんて、>>888と似たようなもんだろうとしか思えない
フリースタンディング環境とやらののうちのどこぞの環境でファイルI/Oがないなんて、>>888と似たようなもんだろうとしか思えない
894デフォルトの名無しさん
2021/02/16(火) 16:59:57.69ID:VrzH5GTZ895デフォルトの名無しさん
2021/02/16(火) 20:04:17.80ID:jKfE5F96 なぜC言語の話が出るのか?
なぜアセンブリの話が出るのか?
と飛躍がありすぎて、なんの話なのか、まったくわからん。w
>>893
K&Rなんか、今となっては怪しい歴史書やろ。w
記紀とか聖書とかから現実を語ることはできまい。
なぜアセンブリの話が出るのか?
と飛躍がありすぎて、なんの話なのか、まったくわからん。w
>>893
K&Rなんか、今となっては怪しい歴史書やろ。w
記紀とか聖書とかから現実を語ることはできまい。
896デフォルトの名無しさん
2021/02/16(火) 20:43:15.59ID:K7YXHG1n 自分のそれ関連でレスしておいて何言ってんだか
897デフォルトの名無しさん
2021/02/16(火) 20:46:48.66ID:K7YXHG1n かと思ったら、以下も何言ってんだかだよ
冗談で逃げただけか??
マジならお前がそう思うならそうなんだろな、お前の頭の中ではなんとかかんとかw
見損なったのぞお前w
冗談で逃げただけか??
マジならお前がそう思うならそうなんだろな、お前の頭の中ではなんとかかんとかw
見損なったのぞお前w
898デフォルトの名無しさん
2021/02/16(火) 21:04:42.04ID:fDzgwbS2 シェルスクリプトスレはいつ見ても
キチ vs キチのマウンティング合戦
サル山でもこうはならない
キチ vs キチのマウンティング合戦
サル山でもこうはならない
899デフォルトの名無しさん
2021/02/16(火) 21:26:41.96ID:ZcpmZlC/ シェルスクリプトではライブラリに相当するものは外部コマンド
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【サッカー】U-17日本代表、激闘PK戦制す 北朝鮮撃破で6大会ぶり8強入り U17W杯 [久太郎★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- Perfume・あ~ちゃんの結婚相手の一般男性、吉田カバンの社長と判明 [977261419]
- 地球から無限km先の場所ってどうなっているの?
- 自民党議員「高市は先人が築き上げた日中関係を壊した。外務省が謝罪に言ってるが自分で責任を取れ」 [834922174]
- 日本、高市のお陰で破滅に近づくwwwwwwww
- AIアーティストだけど作品公開する
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
