[過去ログ]
シェルスクリプト総合 その31 (1002レス)
シェルスクリプト総合 その31 http://mevius.5ch.net/test/read.cgi/tech/1565446670/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
1: デフォルトの名無しさん [sage] 2019/08/10(土) 23:17:50.64 ID:L+B8OP2P シェルスクリプトに関する総合スレッドです。 全般 ・荒しは無視しましょう。 ・丁寧な姿勢を心掛けましょう。 ・ネチケット(死語)を意識しましょう。 ・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。 シェルスクリプト総合 その30 https://mevius.5ch.net/test/read.cgi/tech/1561989867/ http://mevius.5ch.net/test/read.cgi/tech/1565446670/1
2: デフォルトの名無しさん [sage] 2019/08/10(土) 23:19:50.86 ID:L+B8OP2P お約束 ・特記なき場合、POSIX 準拠の sh 可換シェルが既定です。(Bourne Shellは既にレガシーです) つまりシバンは #!/bin/sh です。 特定のシェル(bash, zsh, (m|pd)ksh, (d)ash, yash, posh, fish, (t)csh など)の専用機能に依存する場合は明示しましょう。 macOS (10.14以前), GNU/Linux ユーザー(Debian, Ubuntu 系以外) は /bin/sh の実体が bash なので*特に*注意 自覚なき bashism---シバンが #!/bin/sh なのに bash に依存する構文を使っていませんか? ただし Debian, Ubuntu などでは /bin/sh の実体は POSIX sh 互換の dash ですのであまり気にしないでも大丈夫です。 FreeBSD ユーザーは /bin/sh の実体が ash なので注意。 Solaris, OpenBSD ユーザーは /bin/sh の実体が ksh なので注意。 macOS 10.15以降のユーザーは/bin/sh の実体が zsh なので注意。 android ユーザーは /bin/sh の実体が mksh なので注意。 csh/tcshでのシェルスクリプトは*まったく推奨しません*。 (参考URL: http://www.speech-lab.org/~hiroki/csh-whynot.euc) ・POSIX に準拠しましょう 有用なリンクは https://en.wikipedia.org/wiki/POSIX にまとめられています。 最新の仕様はこちらへ: http://pubs.opengroup.org/onlinepubs/9699919799/ (左上の「Shell & Utilities」から各コマンドやファイルの仕様を参照することができます) ・Version 7 UNIX の sh(1) に一番近いのは OpenSolaris 由来の Heirloom sh、次点で Debian などに搭載されている Dash shell Heirloom sh: http://heirloom.sourceforge.net/sh.html Dash shell: http://gondor.apana.org.au/~herbert/dash/ ・UNIX にはシェルスクリプトに便利な小さなコマンドがいろいろあります Man ページや各種リンク(http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.htmlなど)を見ましょう。 apropos(1) ないしは man(1) の-kオプションでそれらしい単語による簡単な検索もできます。 ・ワイルドカードは正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) ・シェルスクリプトのことをシェルってゆうな http://mevius.5ch.net/test/read.cgi/tech/1565446670/2
31: デフォルトの名無しさん [sage] 2019/08/11(日) 18:24:50.03 ID:k+c7cOcw ええぇ、自分でMacもって言ってなかったかな? 元レスの人のがが何かはわからないが、その可能性はなくもない、だったらの話だが エアプで見栄であれもこれもと羅列しただけ?w http://mevius.5ch.net/test/read.cgi/tech/1565446670/31
149: デフォルトの名無しさん [sage] 2019/08/19(月) 17:39:47.54 ID:xlQPwL5+ ・POSIXに準拠することにはメリットがある ↑これは俺もそう思うけど(正しいかどうかは別にして) ・今のPOSIXでは不十分なので,規格を拡張して,各社にそれを追従するよう促すべきだ ↑これは違うと思う。POSIXの「不便さ」は「どこでも動く」ことの引き換えであることを忘れてはいけいない(ルポ風) http://mevius.5ch.net/test/read.cgi/tech/1565446670/149
154: デフォルトの名無しさん [sage] 2019/08/19(月) 20:19:55.37 ID:WiF5XT2w bashで長いシェル書いてるといつもたくさんファイルを生成してしまうんだが上手い具合に生成しなくて済む方法ってある? http://mevius.5ch.net/test/read.cgi/tech/1565446670/154
187: デフォルトの名無しさん [sage] 2019/08/20(火) 17:57:11.37 ID:Gkd3xMH4 無知ですまんがAWKおじさんってだれ? なんか否定的な書き方だけど悪名高いコテハン? http://mevius.5ch.net/test/read.cgi/tech/1565446670/187
204: デフォルトの名無しさん [sage] 2019/08/20(火) 21:24:50.14 ID:Gkd3xMH4 sortの話はもう終わったでしょ、お爺ちゃん。 http://mevius.5ch.net/test/read.cgi/tech/1565446670/204
217: デフォルトの名無しさん [sage] 2019/08/21(水) 12:37:03.95 ID:+hDHTeft bashしか使わない人がbash依存して何か問題あるのかね シェルに限らずLinuxしか使わない人が「Windowsでも動く」プログラムを書く必要はないし (シェアの低い変なコンピュータ使ってる人はその人だけ苦労すればいい) http://mevius.5ch.net/test/read.cgi/tech/1565446670/217
256: デフォルトの名無しさん [sage] 2019/08/21(水) 16:35:44.19 ID:MMv7CGOe 初めて触れたRH8も、Cygwinもbashだったから、 今でもふつうにbash使ってるな。 それにしても、bashはなんでこんなに嫌われてるんだ?w http://mevius.5ch.net/test/read.cgi/tech/1565446670/256
257: デフォルトの名無しさん [sage] 2019/08/21(水) 16:44:32.20 ID:MKRUgKM/ ま、bashがデフォルトシェルじゃないOSもそれなりにあるもんな http://mevius.5ch.net/test/read.cgi/tech/1565446670/257
361: デフォルトの名無しさん [sage] 2019/08/25(日) 02:30:04.13 ID:RhAWwavs 再掲してやろうw > From: [36] デフォルトの名無しさん <sage> > Date: 2019/08/11(日) 16:10:55.15 ID:++HFlOfG > > 現実世界では私は神なのだ さっさとsortコマンドの話に答えろよw http://mevius.5ch.net/test/read.cgi/tech/1565446670/361
480: デフォルトの名無しさん [sage] 2019/09/01(日) 00:08:11.60 ID:1i1y7fC5 POSIXって右と左で中身がガバガバだから作られた最低限の共通仕様じゃないのか 無人島じゃ家電は役立たずでもアーミーナイフならどこでも使える的な http://mevius.5ch.net/test/read.cgi/tech/1565446670/480
546: デフォルトの名無しさん [sage] 2019/09/02(月) 06:47:31.22 ID:mejwNGsW こんな場末のスレで煽りしか入れられないなんて,かわいそう。 http://mevius.5ch.net/test/read.cgi/tech/1565446670/546
612: デフォルトの名無しさん [sage] 2019/09/13(金) 17:57:13.42 ID:DBJTu1IU bashのプロセス置換機能を活用して、シェル作業やスクリプト書きを効率化する https://sechiro.haten blog.com/entry/2013/08/15/bash%E3%81%AE%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E7%BD%AE%E6%8F%9B%E6%A9%9F%E8%83%BD%E3%82%92%E6%B4%BB%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81%E3%82%B7%E3%82%A7%E3%83%AB%E4%BD%9C%E6%A5%AD%E3%82%84%E3%82%B9 そのスクリプトの出処はここだな 出力のプロレス置換ってこう使うのか 入力のプロセス置換はよく使ってるけどそっちはどうもな http://mevius.5ch.net/test/read.cgi/tech/1565446670/612
718: デフォルトの名無しさん [sage] 2019/10/01(火) 19:26:55.18 ID:8eIOCDAd >>716 内部関数なのにってとこがね&普通の他の言語とはやはり違うな(まあ当然だが)という(内部汚染とかこれの本題ではないっすよ) zshはkshを習ってだけど、ちょこちょこ習えてないなあ。kshの否定面のレスだけど、kshは人に優しいとこもあるとも思うw a=0 ls | while read line; do [ "$line" = 'hoge' ] && a=1 done [ a -eq 1 ] && ... っていう見た目他の言語的では当たり前のがちゃんと動くというwまあ、異端だけど とりあえず、どうしようもないそういうものということでいいのね。どうも http://mevius.5ch.net/test/read.cgi/tech/1565446670/718
743: デフォルトの名無しさん [sage] 2019/10/01(火) 23:53:15.78 ID:8eIOCDAd return なんすけど。returnの意味知ってる?とかいう。いや、しつれい エラー情報でもない、単なる終了ステータス。exit ではないのは、まあ、関数だからと、exit と区別がつかないからかなw http://mevius.5ch.net/test/read.cgi/tech/1565446670/743
744: デフォルトの名無しさん [sage] 2019/10/01(火) 23:59:02.30 ID:8eIOCDAd function name () { } が、POSIXではないのは(これからも採用されないかも?採用するの?)というのは、関数じゃねえー、所詮コマンドだなというとこかなと思ったりしてみたり、今回w >>742そのレベルで馬鹿にできるのはあなたがそのレベルと言っているようなもんかなとw てか、return なのにそれを返り値と見るのを頭から否定するのは、いままでの同一人物としか思えないんだけど。シェルスクリプトは知っているがシェルスクリプトしか知らないシェルスクリプトにだけ拘るw http://mevius.5ch.net/test/read.cgi/tech/1565446670/744
818: デフォルトの名無しさん [sage] 2019/10/03(木) 23:43:58.79 ID:6kVVAM38 簡単なシェルスクリプトしか書けんが何が覚えとけって言語ある? s以外のsedの機能をようやく覚えたけどコマンドは文字列操作系で手一杯だわ やっぱりperlの呪文覚えるしかないか http://mevius.5ch.net/test/read.cgi/tech/1565446670/818
975: デフォルトの名無しさん [sage] 2019/10/26(土) 11:29:02.54 ID:3fttRo5u 質問が出てる時点で、意図がわからないコードってことなんだがw 957 名前:デフォルトの名無しさん[sage] 投稿日:2019/10/24(木) 17:49:17.77 ID:mthfJT/n [2/3] >>954 それってTRUE=0とするのと何が違うの? それに>>954ののコードは、set -eで正しく動かない TRUE=$([ 0 = 0 ];echo $?) FALSE=$([ ! $TRUE ];echo $?) 意図が不明確なコードを書いて、バグを入れるのは アホでしか無いよ http://mevius.5ch.net/test/read.cgi/tech/1565446670/975
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
1.335s*