シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その31
https://mevius.5ch.net/test/read.cgi/tech/1565446670/
探検
シェルスクリプト総合 その32
■ このスレッドは過去ログ倉庫に格納されています
2019/10/25(金) 00:08:45.53ID:6btPTvif
499デフォルトの名無しさん
2020/01/31(金) 19:37:01.40ID:dOfy+zuH 一つしか受け付けないと言うか
#!/bin/sh -e -u
って書いたら
/bin/sh "-e -u"
って解釈されるのか
全体が一つの引数
#!/bin/sh -e -u
って書いたら
/bin/sh "-e -u"
って解釈されるのか
全体が一つの引数
500デフォルトの名無しさん
2020/01/31(金) 20:39:38.35ID:NEnVm4zd 実はshebangの決まった仕様はないからOS依存
501デフォルトの名無しさん
2020/01/31(金) 21:40:42.29ID:O7+QvGXX502デフォルトの名無しさん
2020/01/31(金) 21:53:14.63ID:ppIZAX+V503デフォルトの名無しさん
2020/01/31(金) 22:07:06.55ID:EhZkCGRB この前会見したマスごみが感染元で
504デフォルトの名無しさん
2020/01/31(金) 22:09:28.96ID:MHZeJgmL505デフォルトの名無しさん
2020/01/31(金) 22:17:23.02ID:NEnVm4zd >>501
a) 1つ目のスペースの前がコマンド名、その後はスペースも含めて1つの引数 (Linux等)
b) 1つ目のスペースの前がコマンド名、その後はスペース区切りの複数の引数 (昔のBSDやOSX等)
c) スペースも含めて全部コマンド名 (実在するか不明)
d) shebang非対応 (昔はあったがほぼ絶滅)
あとは、最大長とかにも注意
a) 1つ目のスペースの前がコマンド名、その後はスペースも含めて1つの引数 (Linux等)
b) 1つ目のスペースの前がコマンド名、その後はスペース区切りの複数の引数 (昔のBSDやOSX等)
c) スペースも含めて全部コマンド名 (実在するか不明)
d) shebang非対応 (昔はあったがほぼ絶滅)
あとは、最大長とかにも注意
506デフォルトの名無しさん
2020/01/31(金) 22:38:43.88ID:O7+QvGXX macは違うのかよ。相変わらず独自文化だな。
507デフォルトの名無しさん
2020/01/31(金) 23:54:24.78ID:9zbnwalP >>505
#!の次は本来スペースだって知ってた?
#!の次は本来スペースだって知ってた?
508デフォルトの名無しさん
2020/02/01(土) 00:09:21.13ID:4wtj5811509デフォルトの名無しさん
2020/02/01(土) 01:59:55.43ID:Kd/XXZch510デフォルトの名無しさん
2020/02/01(土) 02:50:01.41ID:SC0qANHR511デフォルトの名無しさん
2020/02/01(土) 18:54:16.89ID:izL/3CDz >>510
オライリーのシェルスクリプトの本には
一部のBSD系OSで#! の後にスペースが要るみたいなこと書いてあった。
でも、これは又聞きで全部試した訳じゃないけど
そんな挙動のBSD実装はなくて、
実はGNUプロジェクトのソースコードに誰かが勘違いして書き込んだコメントが元らしい。
オライリーのシェルスクリプトの本には
一部のBSD系OSで#! の後にスペースが要るみたいなこと書いてあった。
でも、これは又聞きで全部試した訳じゃないけど
そんな挙動のBSD実装はなくて、
実はGNUプロジェクトのソースコードに誰かが勘違いして書き込んだコメントが元らしい。
512デフォルトの名無しさん
2020/02/01(土) 19:00:18.82ID:S6J9WFvX513デフォルトの名無しさん
2020/02/01(土) 19:16:51.31ID:rbhAio8f >>512
ソースチラ見した限りでは元々は a) ぽい。# の後ろはコメントとして切り捨ててるみたいだが
FreeBSDをガシガシ取り入れた時にFreeBSDが b) だからに変えたぽいかな。その後FreeBSDが a) に変わったが追従せずな
ソースチラ見した限りでは元々は a) ぽい。# の後ろはコメントとして切り捨ててるみたいだが
FreeBSDをガシガシ取り入れた時にFreeBSDが b) だからに変えたぽいかな。その後FreeBSDが a) に変わったが追従せずな
514デフォルトの名無しさん
2020/02/01(土) 19:25:08.01ID:rbhAio8f515デフォルトの名無しさん
2020/02/01(土) 19:29:08.08ID:7bhnkH1k macOSでshebangにダブルクォートが入っていた場合どうなるんだろうなぁ
すぐそこにマシンあるから調べればわかるけどさw
すぐそこにマシンあるから調べればわかるけどさw
516デフォルトの名無しさん
2020/02/01(土) 19:56:33.67ID:rbhAio8f 一番古い10.0から公開されてる最新の10.4までで、そこでダブルクォート文字は現れない、'\n'、'#'、' '、'\t' ぐらいしか文字としてナニかを判断してない
単なる文字だね。そのまま引数としての単なる文字として
単なる文字だね。そのまま引数としての単なる文字として
517デフォルトの名無しさん
2020/02/01(土) 20:38:02.21ID:7bhnkH1k 日本語が不自由だぞw
518デフォルトの名無しさん
2020/02/01(土) 20:50:05.02ID:izL/3CDz shebangは悪い文化
519デフォルトの名無しさん
2020/02/01(土) 20:54:33.24ID:7bhnkH1k shebangよりも拡張子の方が良かったのかな?
520デフォルトの名無しさん
2020/02/01(土) 20:57:55.39ID:rbhAio8f なんか説明しようとしたんだがな
ダブルクォートが入っていても関係ないよ。なぜかは調べてね
ダブルクォートが入っていても関係ないよ。なぜかは調べてね
521デフォルトの名無しさん
2020/02/01(土) 20:59:45.01ID:rbhAio8f522デフォルトの名無しさん
2020/02/01(土) 21:13:13.94ID:izL/3CDz >>521
単なる表現だから気にしないでほしいけど
悪い←実装ごとに挙動がバラバラ・標準仕様が規定を諦めている
文化←にもかかわらずほとんどの実装がこれを取り入れていて、利用者もしょうがなく使っている
という状況を言ったつもりだった。
単なる表現だから気にしないでほしいけど
悪い←実装ごとに挙動がバラバラ・標準仕様が規定を諦めている
文化←にもかかわらずほとんどの実装がこれを取り入れていて、利用者もしょうがなく使っている
という状況を言ったつもりだった。
523デフォルトの名無しさん
2020/02/01(土) 21:19:14.91ID:rbhAio8f >>522
なるほど
まあ、誰も(大多数が)困ってないんじゃなのかな、統一されてなくても
もしくはそれぞれがそれぞれが良いと思って譲らないとかかwそれは確かに悪い文化だな
誰も困ってないって方だと思うけど
なるほど
まあ、誰も(大多数が)困ってないんじゃなのかな、統一されてなくても
もしくはそれぞれがそれぞれが良いと思って譲らないとかかwそれは確かに悪い文化だな
誰も困ってないって方だと思うけど
524デフォルトの名無しさん
2020/02/01(土) 21:48:34.75ID:7bhnkH1k shebangが悪い所の一つは絶対パス指定ってところなんだよね
content-typeみたいなのだったら良かったのに
shebangのオプションに関しては使わないっていうのが正解なんだと思う
なぜならファイルを直接指定して実行すると変わっちゃうから
content-typeみたいなのだったら良かったのに
shebangのオプションに関しては使わないっていうのが正解なんだと思う
なぜならファイルを直接指定して実行すると変わっちゃうから
525デフォルトの名無しさん
2020/02/02(日) 14:26:51.03ID:xQhhTPSe てかshebang使わなくてもシェルから起動したらそのまま動かない?
と思って、念の為Bashから起動したらまさかのaliasが効かなかった……。
こういうのを避ける為に#!/bin/shとせざる得ないのか。残念。
と思って、念の為Bashから起動したらまさかのaliasが効かなかった……。
こういうのを避ける為に#!/bin/shとせざる得ないのか。残念。
526デフォルトの名無しさん
2020/02/02(日) 16:53:40.51ID:XLs1Cb+c527デフォルトの名無しさん
2020/02/02(日) 17:45:00.84ID:Cva1xhgA528デフォルトの名無しさん
2020/02/03(月) 06:12:52.05ID:UlsnX0ii みんな
#!/bin/env python
じゃないの?
環境変数使ってくれるよ
#!/bin/env python
じゃないの?
環境変数使ってくれるよ
529デフォルトの名無しさん
2020/02/03(月) 08:04:03.85ID:24GdBe+7 envがあるところは/usr/bin/envな
あとそれ使うと
#!/usr/bin/env bash -e
とかできなくなるからな
Linuxで
あとそれ使うと
#!/usr/bin/env bash -e
とかできなくなるからな
Linuxで
530デフォルトの名無しさん
2020/02/03(月) 09:05:47.42ID:gnFHl5C0 >>529
/bin/envの環境と/usr/bin/envの環境がある
/bin/envの環境と/usr/bin/envの環境がある
531デフォルトの名無しさん
2020/02/03(月) 10:00:30.45ID:24GdBe+7 >>530
envってコマンドを使うと、環境の違いを吸収してくれるから便利だぞ
envってコマンドを使うと、環境の違いを吸収してくれるから便利だぞ
532デフォルトの名無しさん
2020/02/03(月) 11:22:27.68ID:8ufJ91gq >envがあるところは/usr/bin/env
に対しての
/bin/envにある環境もあるって話だろ。「それってなに?」だろ言うなら
に対しての
/bin/envにある環境もあるって話だろ。「それってなに?」だろ言うなら
533デフォルトの名無しさん
2020/02/03(月) 11:28:54.24ID:sGoeeXwW >>531
そのenvコマンドとやらのパスが環境ごとに違うんだよなぁ…。
そのenvコマンドとやらのパスが環境ごとに違うんだよなぁ…。
534デフォルトの名無しさん
2020/02/03(月) 11:40:34.98ID:8ufJ91gq KCディフェンス覚醒したか?するか?
535デフォルトの名無しさん
2020/02/03(月) 11:41:11.41ID:8ufJ91gq やったな、KCディフェンスっ
536デフォルトの名無しさん
2020/02/03(月) 11:41:39.96ID:YoBHNt10 Mac の香具師は、env をよく使う
537デフォルトの名無しさん
2020/02/03(月) 11:41:40.96ID:8ufJ91gq すまん、誤爆もいいとこ。ちょっと興奮してたw
538デフォルトの名無しさん
2020/02/03(月) 11:57:54.57ID:MUEM5Vrv env env env ...
539デフォルトの名無しさん
2020/02/03(月) 12:09:00.93ID:sGoeeXwW なんかこの前々スレあたりで標準出力と標準エラー出力に別々の処理を施した上で
どちらも標準出力に流す方法を見た覚えがあるんだけど
今それっぽい語句で検索しても引っ掛からない。
覚えてる人いない?
どちらも標準出力に流す方法を見た覚えがあるんだけど
今それっぽい語句で検索しても引っ掛からない。
覚えてる人いない?
540デフォルトの名無しさん
2020/02/03(月) 12:58:07.85ID:24GdBe+7541417
2020/02/04(火) 21:40:22.30ID:M0ahQJ78 >>446
ありがとうございます。
コードを参考にさせていただいて、
sed -e 's/\("[^"]*"\)*,\("[^"]*"\)*/\1 \2/g'
という手法にしました。
今のところ
<<. cat |
aa,"dd,dd","aa,bb",cc,"ab c"
.
sed -e 's/\("[^"]*"\)*,\("[^"]*"\)*/\1 \2/g'
がうまいこといくので満足してます。
どうもお手数おかけしました。
ありがとうございます。
コードを参考にさせていただいて、
sed -e 's/\("[^"]*"\)*,\("[^"]*"\)*/\1 \2/g'
という手法にしました。
今のところ
<<. cat |
aa,"dd,dd","aa,bb",cc,"ab c"
.
sed -e 's/\("[^"]*"\)*,\("[^"]*"\)*/\1 \2/g'
がうまいこといくので満足してます。
どうもお手数おかけしました。
542デフォルトの名無しさん
2020/02/04(火) 22:00:02.89ID:zwthX76y case $value in
ここ)
esac
ここって何ていうの?globじゃないよね?
ここ)
esac
ここって何ていうの?globじゃないよね?
543デフォルトの名無しさん
2020/02/04(火) 22:01:37.15ID:/eeo/zhy bash(1) だと pattern って書いてある
544デフォルトの名無しさん
2020/02/04(火) 22:11:53.72ID:zwthX76y パターンかぁ。汎用的すぎるなぁ。
545デフォルトの名無しさん
2020/02/05(水) 07:03:40.14ID:TkSDhbEE (unofficial) Bash Strict Modeって知ってる?
http://redsymbol.net/articles/unofficial-bash-strict-mode/
これが何って話があるわけじゃないんだけど有名なのかな?と思って
外国だとそれなりに情報出てくるけど日本はあまり見つからない
名前が知られてないだけでsetで-eu -o pipefailしましょうというのは聞くけどね
ただIFS=$'\n\t'は知らなかったな。これやったほうがいいんかな?
スペースが削られてるから問題起きそうだけど
http://redsymbol.net/articles/unofficial-bash-strict-mode/
これが何って話があるわけじゃないんだけど有名なのかな?と思って
外国だとそれなりに情報出てくるけど日本はあまり見つからない
名前が知られてないだけでsetで-eu -o pipefailしましょうというのは聞くけどね
ただIFS=$'\n\t'は知らなかったな。これやったほうがいいんかな?
スペースが削られてるから問題起きそうだけど
546デフォルトの名無しさん
2020/02/05(水) 08:00:23.89ID:ER23be8Q547デフォルトの名無しさん
2020/02/05(水) 08:25:41.70ID:TkSDhbEE >>546
それは変数使ってるわけじゃないから問題なく動くよ
それは変数使ってるわけじゃないから問題なく動くよ
548デフォルトの名無しさん
2020/02/07(金) 21:49:29.34ID:fFz2F73L https://github.com/bashup/mdsh
↑おもしろい。シェルも使える文芸的プログラミング
↑おもしろい。シェルも使える文芸的プログラミング
549デフォルトの名無しさん
2020/02/07(金) 22:25:08.40ID:LLO+pCZY めんどくさいので3行にまとめてくれ
550デフォルトの名無しさん
2020/02/07(金) 22:46:56.58ID:LLO+pCZY なるほど。文芸的プログラミングという
ドキュメントを書くときにコードを埋め込んで
(動作確認のために?)実行できるようにするための
マークアップ言語みたいなものがあるんだな
コードの中にコメントを埋め込むのとは逆の発想か
ドキュメントを書くときにコードを埋め込んで
(動作確認のために?)実行できるようにするための
マークアップ言語みたいなものがあるんだな
コードの中にコメントを埋め込むのとは逆の発想か
551デフォルトの名無しさん
2020/02/07(金) 22:58:24.38ID:YkBBCjCg bashのsourceって英語としては意味なんだろう?
includeとかimportだったら読み込むってわかるけど、
なんでsourceって単語にしたんだろうか
includeとかimportだったら読み込むってわかるけど、
なんでsourceって単語にしたんだろうか
552デフォルトの名無しさん
2020/02/08(土) 00:06:22.51ID:Ld8bPHII なんのことかと思ったらMarkdown文書をソースとするshellがありますぞというだけかという感じ
553デフォルトの名無しさん
2020/02/08(土) 08:03:47.73ID:EnngxFza なんでそんなに偉そうなんだよw
554デフォルトの名無しさん
2020/02/08(土) 12:05:42.11ID:vyHTTWz1555デフォルトの名無しさん
2020/02/08(土) 14:06:09.11ID:EnngxFza 今から考えるとimportコマンドとかの方がいいね。
556デフォルトの名無しさん
2020/02/08(土) 14:51:42.04ID:0wE1WgKD importは他のファイル等で定義済みの関数やクラスを今の名前空間に持ってくるイメージ
sourceは他のファイルに書いてるコードを実行するイメージ
言語によってはやってること同じだったりするけど主たる目的が違う気がする
sourceは他のファイルに書いてるコードを実行するイメージ
言語によってはやってること同じだったりするけど主たる目的が違う気がする
557デフォルトの名無しさん
2020/02/08(土) 15:15:58.57ID:rR7NyU2B だな
558デフォルトの名無しさん
2020/02/08(土) 15:41:05.52ID:WgESEu8I > sourceは他のファイルに書いてるコードを実行するイメージ
動作としてはそうなんだけど、
気になってるのは英単語としてどうかなんだよね
変なことを気にしてると思うけど
そもそもsourceって動詞?ああ、動詞としての意味もあるのか?
https://talking-english.net/source/
> sourceは動詞でも使い方があり「仕入れる」といった意味になりますが、
>
> 例文
> We source our coffee beans from Venezuela.
> 私たちはコーヒー豆をベネズエラから仕入れている。
動作としてはそうなんだけど、
気になってるのは英単語としてどうかなんだよね
変なことを気にしてると思うけど
そもそもsourceって動詞?ああ、動詞としての意味もあるのか?
https://talking-english.net/source/
> sourceは動詞でも使い方があり「仕入れる」といった意味になりますが、
>
> 例文
> We source our coffee beans from Venezuela.
> 私たちはコーヒー豆をベネズエラから仕入れている。
559デフォルトの名無しさん
2020/02/08(土) 22:01:26.95ID:EnngxFza importに名前空間を移動する印象があるのは同意だけど
sourceの「他のファイルに書いてるコードを実行する」ような印象はないな。
つーかsourceってシェル以外でみかけない。
名前空間とか高級な概念を無視する、単なる対象ファイルの実行・読み込みは
includeが一番「それっぽい」な。
C言語みたいなコンパイル方式でもm4・Xresourceみたいなインタプリタ・設定ファイル形式でも。
sourceの「他のファイルに書いてるコードを実行する」ような印象はないな。
つーかsourceってシェル以外でみかけない。
名前空間とか高級な概念を無視する、単なる対象ファイルの実行・読み込みは
includeが一番「それっぽい」な。
C言語みたいなコンパイル方式でもm4・Xresourceみたいなインタプリタ・設定ファイル形式でも。
560デフォルトの名無しさん
2020/02/08(土) 23:17:01.30ID:WgESEu8I sourceの本来の名前が . だとして、
/etc/profileとかに . /etc/bash.bashrc とか書いてあるでしょ?
これは関数定義等を読み込んでると言うより、
ただそこにあるスクリプトを実行してるという感じがしない?
/etc/profileとかに . /etc/bash.bashrc とか書いてあるでしょ?
これは関数定義等を読み込んでると言うより、
ただそこにあるスクリプトを実行してるという感じがしない?
561デフォルトの名無しさん
2020/02/08(土) 23:17:36.95ID:WgESEu8I そもそもなんで . (ドット)だったのかっていう疑問もあるけどw
562デフォルトの名無しさん
2020/02/09(日) 07:56:47.77ID:u8D56ofC >>560
ああ、いや、たしかにそうなんだけど、
sourceっていう名前の(または.(ドット)って名前の)コマンドや指令が
シェルスクリプト以外で見掛けないなと思ってさ。
じゃあシェルスクリプト以外の言語でsourceに最も近いはたらきをするのは
なにかって言えば、includeかなぁ。と。
ああ、いや、たしかにそうなんだけど、
sourceっていう名前の(または.(ドット)って名前の)コマンドや指令が
シェルスクリプト以外で見掛けないなと思ってさ。
じゃあシェルスクリプト以外の言語でsourceに最も近いはたらきをするのは
なにかって言えば、includeかなぁ。と。
563デフォルトの名無しさん
2020/02/09(日) 08:09:38.60ID:WtBEbY+3 includeで言えばC言語かなぁ
でもC言語のincludeはヘッダファイルの読み込みで
(今のC++はそうとは言えないが)
実行するものはなにもないものだったよね
.やsourceを他の言語で見たことがないのは同意
なんでこの単語を選んだのか。まあ当時はそういうことをするときの
標準的な単語はなく、includeやimportの方がたまたま有名になったってだけな気もするけど
includeってC/C++以外あったっけ?
でもC言語のincludeはヘッダファイルの読み込みで
(今のC++はそうとは言えないが)
実行するものはなにもないものだったよね
.やsourceを他の言語で見たことがないのは同意
なんでこの単語を選んだのか。まあ当時はそういうことをするときの
標準的な単語はなく、includeやimportの方がたまたま有名になったってだけな気もするけど
includeってC/C++以外あったっけ?
564デフォルトの名無しさん
2020/02/09(日) 08:12:52.16ID:WtBEbY+3 include, import, load, require, source
他に何があるかな?
他に何があるかな?
565デフォルトの名無しさん
2020/02/09(日) 08:15:45.81ID:WtBEbY+3 とういうか、その話をするためにきたんじゃなかったw
makeってどういう亜種があるの?
それぞれのOSでどこまで互換性があるの?
どこかにそういう情報まとまってないかな
makeってどういう亜種があるの?
それぞれのOSでどこまで互換性があるの?
どこかにそういう情報まとまってないかな
566デフォルトの名無しさん
2020/02/09(日) 08:19:42.30ID:WtBEbY+3 https://pubs.opengroup.org/onlinepubs/9699919799/utilities/make.html
ここにPOSIXに関しては書いてあるけど、現実としてはどこまで互換性があるのかなと
つまり便利ないろんな機能(?が使いたいけど、ここには書いて無いようで
使っていいものなのかわからない
ここにPOSIXに関しては書いてあるけど、現実としてはどこまで互換性があるのかなと
つまり便利ないろんな機能(?が使いたいけど、ここには書いて無いようで
使っていいものなのかわからない
567デフォルトの名無しさん
2020/02/09(日) 08:26:03.00ID:WtBEbY+3 オライリーのGNU Make、無料で公開されてたヽ(=´▽`=)ノ
https://www.yokoweb.net/2016/08/28/gnu-make-3rd-pdf-github/
https://www.yokoweb.net/2016/08/28/gnu-make-3rd-pdf-github/
568デフォルトの名無しさん
2020/02/09(日) 08:40:31.63ID:WtBEbY+3 Makeについて調べていたら上のシバンの話、!の後にスペース入れれっていうのが見つかったでw
https://web.sfc.wide.ad.jp/~sagawa/gnujdoc/autoconf-2.59/autoconf-ja_10.html
> また,以 下のように,インタプリタ仕様として,感嘆符の後にスペースを含めてください.
>
> #! /usr/bin/perl
https://web.sfc.wide.ad.jp/~sagawa/gnujdoc/autoconf-2.59/autoconf-ja_10.html
> また,以 下のように,インタプリタ仕様として,感嘆符の後にスペースを含めてください.
>
> #! /usr/bin/perl
569デフォルトの名無しさん
2020/02/09(日) 08:41:08.32ID:WtBEbY+3 ここまでコピペするべきだった
> パスの前のスペースを省略する場合,(DYNIXのような)4.2BSDを基本 とするシステムは,
> `#! /'は4バイトのマジックナンバーとして解釈される ので,その行を無視します.
> 古いシステムでは,`#!'行の長さにも小さな 制限があり,例えばSunOS 4では,(改行を含めず)32バイトになります.
> パスの前のスペースを省略する場合,(DYNIXのような)4.2BSDを基本 とするシステムは,
> `#! /'は4バイトのマジックナンバーとして解釈される ので,その行を無視します.
> 古いシステムでは,`#!'行の長さにも小さな 制限があり,例えばSunOS 4では,(改行を含めず)32バイトになります.
570デフォルトの名無しさん
2020/02/09(日) 09:07:13.64ID:nPaz0f5T >>563
VBScript
VBScript
571デフォルトの名無しさん
2020/02/09(日) 10:20:28.40ID:gml78nRc >>569
それ間違っている
https://www.in-ulm.de/~mascheck/various/shebang/#blankrequired
>You may also read, that (allegedly) such a kernel parses "#! /" as a 32-bit (long) magic.
>4.2BSD in fact doesn't require it, although previous versions of the GNU autoconf tutorial wrongly claimed this ("10. Portable Shell Programming", corrected with release 2.64, 2009-07-26).
>But instead, see 4.2BSD, /usr/src/sys/sys/kern_exec.c (the first regular occurence). A blank is accepted but not required.
それ間違っている
https://www.in-ulm.de/~mascheck/various/shebang/#blankrequired
>You may also read, that (allegedly) such a kernel parses "#! /" as a 32-bit (long) magic.
>4.2BSD in fact doesn't require it, although previous versions of the GNU autoconf tutorial wrongly claimed this ("10. Portable Shell Programming", corrected with release 2.64, 2009-07-26).
>But instead, see 4.2BSD, /usr/src/sys/sys/kern_exec.c (the first regular occurence). A blank is accepted but not required.
572デフォルトの名無しさん
2020/02/09(日) 12:28:36.33ID:mw6BsSoR pgrepには検索文字数の制限があるのか?
573デフォルトの名無しさん
2020/02/09(日) 12:29:59.77ID:3rHefPWY そんなのあるのか? pgr
574デフォルトの名無しさん
2020/02/09(日) 13:26:52.28ID:u8D56ofC >>572
どこ情報?
どこ情報?
575デフォルトの名無しさん
2020/02/09(日) 14:04:29.38ID:Fnglc4p2 >>563
あなたはC言語がUNIXを作るために作られた言語だと知らないの?
あなたはC言語がUNIXを作るために作られた言語だと知らないの?
576デフォルトの名無しさん
2020/02/09(日) 14:07:08.39ID:Fnglc4p2 >>569
そもそもどのUNIX、Linuxの話をしているのか?
そもそもどのUNIX、Linuxの話をしているのか?
577デフォルトの名無しさん
2020/02/09(日) 14:20:04.33ID:QqkdphAP >>575
それがどう話につながるのか説明してくれ
それがどう話につながるのか説明してくれ
578デフォルトの名無しさん
2020/02/09(日) 14:57:41.05ID:RDxzsaY4 shellはUNIX上でのいちプログラム、UNIXはCで作られてる。shellだってCで(途中から?)作られていただろう。故に、
>当時はそういうことをするときの標準的な単語はなく、includeやimportの方がたまたま有名になった
ということはなく、同じならinclude使うんじゃねってとこかな?なんか違うから違うのにしたという方が読みやすいかなあ
shell scriptはPrologの構文が元じゃなかったっけ。ちょっとググったとこでは、
:-
か。なんかこれに似てるといえば似てるな . は
>当時はそういうことをするときの標準的な単語はなく、includeやimportの方がたまたま有名になった
ということはなく、同じならinclude使うんじゃねってとこかな?なんか違うから違うのにしたという方が読みやすいかなあ
shell scriptはPrologの構文が元じゃなかったっけ。ちょっとググったとこでは、
:-
か。なんかこれに似てるといえば似てるな . は
579デフォルトの名無しさん
2020/02/09(日) 15:11:26.44ID:Fnglc4p2 >>577
先に存在しているC言語とは別の考えで設計されている。カリフォルニア大学のバークレー校の複数人が考えたものだから、統一感がないのは仕方ない。
先に存在しているC言語とは別の考えで設計されている。カリフォルニア大学のバークレー校の複数人が考えたものだから、統一感がないのは仕方ない。
580デフォルトの名無しさん
2020/02/09(日) 15:48:09.09ID:mPwdKOvO581デフォルトの名無しさん
2020/02/09(日) 16:48:41.40ID:RDxzsaY4582デフォルトの名無しさん
2020/02/09(日) 16:50:22.96ID:u8D56ofC for a in XXX; do
somecmd...
done
↑ここのXXXの大きさについて、SUSやらで文書化された制限ってある?
もしあるとすればどう調べればいいかな。
XXXは引数じゃないからARG_MAXとかじゃないし、
もしかしたら実質無制限?(システムのメモリに依存とか?)
somecmd...
done
↑ここのXXXの大きさについて、SUSやらで文書化された制限ってある?
もしあるとすればどう調べればいいかな。
XXXは引数じゃないからARG_MAXとかじゃないし、
もしかしたら実質無制限?(システムのメモリに依存とか?)
583デフォルトの名無しさん
2020/02/09(日) 19:33:12.64ID:wmQivLfL ksh 2020がでたのは知ってるけどkshに一体何が起きてるんです?
20年以上の開発がゴミクズとして消えるんですか?
Rewinding this repo and encouraging community
https://github.com/att/ast/issues/1466
20年以上の開発がゴミクズとして消えるんですか?
Rewinding this repo and encouraging community
https://github.com/att/ast/issues/1466
584デフォルトの名無しさん
2020/02/10(月) 00:06:22.74ID:jvWR6fCp https://github.com/att/ast/tree/ksh2020
This branch is not supported
This branch contains the ksh2020 version of the AST tools, from January 2020,
which primarily written and maintained by @krader1961 and @siteshwar.
This branch is not supported or maintained by AT&T; the repo at
https://github.com/att/ast only officially hosts ksh93u+ and the experimental ksh93v- branch.
See #1464 and #1466 for discussion and history of this decision.
Please search for forks of this repo if you are looking for ksh2020.
This branch is not supported
This branch contains the ksh2020 version of the AST tools, from January 2020,
which primarily written and maintained by @krader1961 and @siteshwar.
This branch is not supported or maintained by AT&T; the repo at
https://github.com/att/ast only officially hosts ksh93u+ and the experimental ksh93v- branch.
See #1464 and #1466 for discussion and history of this decision.
Please search for forks of this repo if you are looking for ksh2020.
585デフォルトの名無しさん
2020/02/10(月) 00:08:02.47ID:jvWR6fCp https://github.com/att/ast/issues/1466
私はAT&T Labs Research で@lkoutsofiosと協力し、コミュニティが
快適な状態にレポを復元できるかどうかを確認するためにボランティアで参加しました。これは最後に#1464で議論されました。
私はkshや技術的な問題の専門家ではなく、歴史全体を知りませんが、私の理解は
1. ksh93u +は、AT&Tからの最終的な公式リリースです。これはブランチ2012-08-01-masterにあります
2. 後のバージョンであるksh93v-は、AT&Tを離れた後に元の作者によって提供されましたが、
このバージョンは安定しているとは見なされません。これはタグksh93vで見つけることができます
3. @ krader1961はmasterブランチを数年間維持しています。彼はコードベースを合理化しようとしました
(そしてastの残りではなくkshのみをサポートしました)が、これは互換性の問題を引き起こしました。
kshの元の作者はすべてAT&Tを去りました。社内にはまだ多くのユーザーがいますが、
プロジェクトを維持および管理できるユーザーはいません。
私はAT&T Labs Research で@lkoutsofiosと協力し、コミュニティが
快適な状態にレポを復元できるかどうかを確認するためにボランティアで参加しました。これは最後に#1464で議論されました。
私はkshや技術的な問題の専門家ではなく、歴史全体を知りませんが、私の理解は
1. ksh93u +は、AT&Tからの最終的な公式リリースです。これはブランチ2012-08-01-masterにあります
2. 後のバージョンであるksh93v-は、AT&Tを離れた後に元の作者によって提供されましたが、
このバージョンは安定しているとは見なされません。これはタグksh93vで見つけることができます
3. @ krader1961はmasterブランチを数年間維持しています。彼はコードベースを合理化しようとしました
(そしてastの残りではなくkshのみをサポートしました)が、これは互換性の問題を引き起こしました。
kshの元の作者はすべてAT&Tを去りました。社内にはまだ多くのユーザーがいますが、
プロジェクトを維持および管理できるユーザーはいません。
586デフォルトの名無しさん
2020/02/10(月) 00:11:44.63ID:jvWR6fCp 私の提案は:
・ 現在のマスターをブランチ「ksh2020」(または適切なもの)に移動します。
・そのブランチのREADME.mdおよびCHANGELOG.mdをメンテナンスされていないものとして
明確にマークします。#1464をポイントし、詳細についてはこの問題を参照してください。
・ マスターブランチを2012-08-01-masterにリセットします
・リポジトリから外部の共同編集者を削除します。AT&Tの誰もこれを維持していないので、
このフォークをアクティブなものにすることは意味がありません。GitとGithubを使用すると、
誰でも自分のスペースで好きな方向にコードを取得できます。
・ 現在のマスターをブランチ「ksh2020」(または適切なもの)に移動します。
・そのブランチのREADME.mdおよびCHANGELOG.mdをメンテナンスされていないものとして
明確にマークします。#1464をポイントし、詳細についてはこの問題を参照してください。
・ マスターブランチを2012-08-01-masterにリセットします
・リポジトリから外部の共同編集者を削除します。AT&Tの誰もこれを維持していないので、
このフォークをアクティブなものにすることは意味がありません。GitとGithubを使用すると、
誰でも自分のスペースで好きな方向にコードを取得できます。
587デフォルトの名無しさん
2020/02/10(月) 00:12:00.37ID:jvWR6fCp ・ README.mdをクリーンアップして、現在の状態を反映します。「このレポには、ASTの
AT&T ksh93u +および試験的なksh93v-バージョンが含まれます。ASTおよびkshのフォークは
後である可能性があります。」
・ CONTRIBUTING.mdを変更し、テンプレートを明確にして、このフォークを
積極的に維持しておらず、何も確認しないことを約束します。
・リポジトリの説明を「AST-AT&T Software Technology」に短縮します(#1441)
これが完了したら、AT&Tでmasterブランチのksh93u +にパッチを提供する可能性があります。
些細なこと(ビルドの問題など)でない限り、貢献を確認したり受け入れたりすることはおそらくないでしょう。
最終的には、このリポジトリをアーカイブします。
現在、会社の誰もがkshのためだけにレポを作成するつもりはないと思います。
しかし、これはかなり簡単で、コミュニティが取り上げることができると思います。
AT&T ksh93u +および試験的なksh93v-バージョンが含まれます。ASTおよびkshのフォークは
後である可能性があります。」
・ CONTRIBUTING.mdを変更し、テンプレートを明確にして、このフォークを
積極的に維持しておらず、何も確認しないことを約束します。
・リポジトリの説明を「AST-AT&T Software Technology」に短縮します(#1441)
これが完了したら、AT&Tでmasterブランチのksh93u +にパッチを提供する可能性があります。
些細なこと(ビルドの問題など)でない限り、貢献を確認したり受け入れたりすることはおそらくないでしょう。
最終的には、このリポジトリをアーカイブします。
現在、会社の誰もがkshのためだけにレポを作成するつもりはないと思います。
しかし、これはかなり簡単で、コミュニティが取り上げることができると思います。
588デフォルトの名無しさん
2020/02/10(月) 00:27:01.24ID:jvWR6fCp こういうこと?
1. AST-AT&T Software Technologyはkshだけのプロジェクトではない。kshはASTプロジェクトの一部
2. 誰かがkshだけをメンテナンスしていた。ASTプロジェクト全体をメンテナンスしてる人はいない
3. 今リリースされてるksh 2020はそれ
4. ksh 2020 は後方互換性がなく古いスクリプトが動かなくなっていた
5. それは困るのでmasterを2012-08-01-masterにリセットしてアーカイブする
6. AT&Tはこのリポジトリをメンテナンスしない。 誰か開発したいのなら、ksh2020ブランチから続きをやれ
7. ksh2020ブランチにはもうメンテナンスしてないって書いてあるからそれ消してから勝手に続きをやれ
1. AST-AT&T Software Technologyはkshだけのプロジェクトではない。kshはASTプロジェクトの一部
2. 誰かがkshだけをメンテナンスしていた。ASTプロジェクト全体をメンテナンスしてる人はいない
3. 今リリースされてるksh 2020はそれ
4. ksh 2020 は後方互換性がなく古いスクリプトが動かなくなっていた
5. それは困るのでmasterを2012-08-01-masterにリセットしてアーカイブする
6. AT&Tはこのリポジトリをメンテナンスしない。 誰か開発したいのなら、ksh2020ブランチから続きをやれ
7. ksh2020ブランチにはもうメンテナンスしてないって書いてあるからそれ消してから勝手に続きをやれ
589デフォルトの名無しさん
2020/02/10(月) 08:02:14.12ID:RPv+4ALj Google翻訳使うなとは言わないけど,わざわざそれをスレに載せるな。
せめて自分で訳したものならともかく,なんの情報でもない。
せめて自分で訳したものならともかく,なんの情報でもない。
590デフォルトの名無しさん
2020/02/10(月) 08:09:49.99ID:jvWR6fCp え?翻訳すらしないでコピペすることだってあるじゃん
そういうのを引用っていうんだよ。
引用したらだめってこと?意味がわからないなぁ
そういうのを引用っていうんだよ。
引用したらだめってこと?意味がわからないなぁ
591デフォルトの名無しさん
2020/02/10(月) 11:18:22.31ID:RPv+4ALj >>590
飛躍しすぎ。
スレと関係ないただの忠告になるからこれ以上言わんが、
引用するななんて一言も言ってないし,ただの引用のほうがよほどマシ。
ていうかGoogle翻訳したものを貼り付けて「引用」って……
あなたはGoogle翻訳(機械翻訳全般)を信じてるのかも知れないけれども,
2020年現在,これらの翻訳の質は,あなたが貼り付けた文章を見ても分かる通り,酷いもの。
半分「嘘っぱち」の文章が出てると言っても過言じゃない。
特に,機械翻訳の中でも,minhonやlibtr8nとは違って,Google翻訳は2018年ころから
「学習した英語・日本語訳文からそれっぽい文字の並びを引っ張ってくる」っていう手法を取るようになったから
「見てくれは他の機械翻訳より自然≠セけど内容が全くデタラメ」っていう最悪の事態を生み出すようになってしまった。
幸か不幸か,あなたが貼り付けた文章にそこまで酷い誤謬はないけど,上述の翻訳手法である以上,
Google翻訳した文書を貼り付けるのは,原文を貼り付けるより酷いばかりか,
何も情報を提供せずに各自がリンク先なんかで情報を確認するよう要求するほうがよほどマシなくらい。
あなたは悪気なくGoogle翻訳を使って,スレに貢献しようとしたのかもしれない。
リンク先の文書の内重要と思われる部分をスレ本体に引用することは悪いことじゃないけれど,
そこでGoogle翻訳を使ってしまうのは,ちょっとキツい言い方になるけど「嘘を教える」ことに繋がってきてしまう。
もしこれからリンク先の文章を引用する機会があれば,原文を貼り付けるか,下手でもいいから自分で翻訳してみてね。
飛躍しすぎ。
スレと関係ないただの忠告になるからこれ以上言わんが、
引用するななんて一言も言ってないし,ただの引用のほうがよほどマシ。
ていうかGoogle翻訳したものを貼り付けて「引用」って……
あなたはGoogle翻訳(機械翻訳全般)を信じてるのかも知れないけれども,
2020年現在,これらの翻訳の質は,あなたが貼り付けた文章を見ても分かる通り,酷いもの。
半分「嘘っぱち」の文章が出てると言っても過言じゃない。
特に,機械翻訳の中でも,minhonやlibtr8nとは違って,Google翻訳は2018年ころから
「学習した英語・日本語訳文からそれっぽい文字の並びを引っ張ってくる」っていう手法を取るようになったから
「見てくれは他の機械翻訳より自然≠セけど内容が全くデタラメ」っていう最悪の事態を生み出すようになってしまった。
幸か不幸か,あなたが貼り付けた文章にそこまで酷い誤謬はないけど,上述の翻訳手法である以上,
Google翻訳した文書を貼り付けるのは,原文を貼り付けるより酷いばかりか,
何も情報を提供せずに各自がリンク先なんかで情報を確認するよう要求するほうがよほどマシなくらい。
あなたは悪気なくGoogle翻訳を使って,スレに貢献しようとしたのかもしれない。
リンク先の文書の内重要と思われる部分をスレ本体に引用することは悪いことじゃないけれど,
そこでGoogle翻訳を使ってしまうのは,ちょっとキツい言い方になるけど「嘘を教える」ことに繋がってきてしまう。
もしこれからリンク先の文章を引用する機会があれば,原文を貼り付けるか,下手でもいいから自分で翻訳してみてね。
592デフォルトの名無しさん
2020/02/10(月) 11:56:29.56ID:jvWR6fCp >>591
はは、的外れすぎてワロタw
英語をそのまま貼ってもリンク先読まない人が多いから
単に変換しただけ。英語というだけでスルーする
日本語ならぱっと見でわかる。内容が気になったのならリンク先読みなさい。
読んだのなら貼り付けた意味があったということ
はは、的外れすぎてワロタw
英語をそのまま貼ってもリンク先読まない人が多いから
単に変換しただけ。英語というだけでスルーする
日本語ならぱっと見でわかる。内容が気になったのならリンク先読みなさい。
読んだのなら貼り付けた意味があったということ
593デフォルトの名無しさん
2020/02/10(月) 19:24:20.30ID:SWS6qR4K 宮城県に住んでるだったかの誰かにそっくりだな
594デフォルトの名無しさん
2020/02/10(月) 19:51:47.28ID:RPv+4ALj595デフォルトの名無しさん
2020/02/10(月) 21:25:40.41ID:MJVq5TQy596デフォルトの名無しさん
2020/02/10(月) 21:40:51.77ID:4n8TqQDg 擁護賛同してるのか?あそこの初っ端は間違っているけどな
直してやれよ
直してやれよ
597デフォルトの名無しさん
2020/02/12(水) 17:16:49.73ID:SPYER+lN コマンドの速度を測りたいときに出力を/dev/nullに捨てるとその影響で
出力を捨てないときより速く計測されてしまうことがあるんだけど
例:
$ time { < /usr/bin/od od -A nx -t x1 -v; }
...
出力略
...
real 0m0.055s
user 0m0.042s
sys 0m0.008s
$
$ time { < /usr/bin/od od -A nx -t x1 -v > /dev/null; }
real 0m0.020s
user 0m0.020s
sys 0m0.000s
これを防ぐために「端末上に書き出してるのと同じくらいの負荷が書かるけど、実際には端末上に出力されない」
みたいな状況を作りたい。
おしえてください。
出力を捨てないときより速く計測されてしまうことがあるんだけど
例:
$ time { < /usr/bin/od od -A nx -t x1 -v; }
...
出力略
...
real 0m0.055s
user 0m0.042s
sys 0m0.008s
$
$ time { < /usr/bin/od od -A nx -t x1 -v > /dev/null; }
real 0m0.020s
user 0m0.020s
sys 0m0.000s
これを防ぐために「端末上に書き出してるのと同じくらいの負荷が書かるけど、実際には端末上に出力されない」
みたいな状況を作りたい。
おしえてください。
598デフォルトの名無しさん
2020/02/12(水) 17:58:00.53ID:44kLfG7j pv 使うとか
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time { < /usr/bin/od od -A nx -t x1 -v; }
:
real 0m0.404s
user 0m0.024s
sys 0m0.005s
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time { < /usr/bin/od od -A nx -t x1 -v | pv -q -L2M > /dev/null; }
real 0m0.458s
user 0m0.019s
sys 0m0.007s
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time { < /usr/bin/od od -A nx -t x1 -v; }
:
real 0m0.404s
user 0m0.024s
sys 0m0.005s
$ sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches'
$ time { < /usr/bin/od od -A nx -t x1 -v | pv -q -L2M > /dev/null; }
real 0m0.458s
user 0m0.019s
sys 0m0.007s
599デフォルトの名無しさん
2020/02/12(水) 21:18:18.55ID:ngmZ90wk■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「日本で中国人への犯罪が多発」 日本側の否定に「先週も5人逮捕」と反論 [夜のけいちゃん★]
- 円安で増加の風俗目的の中国人インバウンド 客に処罰規定なし、悲しき売春観光大国の現状 [蚤の市★]
- 【文春】元TOKIO・国分太一(51)「女性スタッフ2名への“わいせつ事案”」日テレ事情聴取の全貌が分かった! ★6 [Ailuropoda melanoleuca★]
- 首相、台湾有事答弁で釈明に終始 政治とカネには「そんなことより」 [蚤の市★]
- 【サッカー】UEFA-CL第5節 アーセナル×バイエルン、PSG×トッテナム、リバプール×PSV、オリンピアコス×レアル [久太郎★]
- 【金沢地裁】「風俗嬢に着せようと」南砺の高校で女子バレー部のユニホームを窃盗した男が説明 検察側、拘禁刑4年を求刑 [nita★]
- 「ロシアがー!!」や「中国がー!!」をやっている人は、国内の問題に目を向けてみたら? [805596214]
- 【高市悲報】中国「ふにゃふにゃ言いながら、時が自然に解決するのを期待する—そんなジャップ流は決して通用しない」 [115996789]
- 百田尚樹「日本は税金が高すぎる。私はそれほど大金持ちではないが、毎年収入の55%を納税している。江戸時代の農民以下の扱いだ」 [309323212]
- 【1万人玉砕】ペリリュー島の戦い、かわいくアニメ化されてしまう [663277603]
- 【悲報】撮り鉄が線路脇で撮影→運転手が降りて退去を促すもゴネて動かず電車が遅延→どっちが悪いか意見が真っ二つに [802034645]
- 【ヤバい】 政府「所得税を上げる。 5兆4000億円の税収になる」 予算案を発表😨😱😭 [485983549]
