シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
シェルスクリプト総合 その32
https://mevius.5ch.net/test/read.cgi/tech/1571929725/
探検
シェルスクリプト総合 その33
■ このスレッドは過去ログ倉庫に格納されています
2020/03/23(月) 01:12:30.31ID:TYte82vJ
2020/03/23(月) 01:13:11.44ID:TYte82vJ
・特記なき場合、POSIX準拠シェルが既定です(古きBourneシェルはほぼ絶滅しました)
POSIX準拠シェルは(d)ash, bash, zsh, (m)ksh, yash, posh, (p)boshです
参考 https://unix.stackexchange.com/questions/145522/
特定のシェルの専用機能に依存する場合は明示しましょう(特にPOSIX準拠シェルではないfish, (t)csh等)
・デフォルトシェルのシバンはBourneシェル時代からの伝統で#!/bin/shを使用します。ただしその実体はOSによって様々です
Debian系 … dash CentOS系 … bash Alpine … ash(busybox) Android … mksh
FreeBSD … ash Solaris,OpenBSD … ksh
macOS … bash(Single UNIX Specification準拠のために一部動作が異なる)
・ログインシェルは/bin/shでない場合があります。例 macOS … zsh
・シェルスクリプトは可搬性を持たせるために可能な限りPOSIXに準拠しましょう
仕様 http://pubs.opengroup.org/onlinepubs/9699919799/
参考 https://en.wikipedia.org/wiki/POSIX
・bash依存はなるべく避けましょう。自覚なきbashism。シバンが#!/bin/shなのにbashに依存する構文を使っていませんか?
#!/bin/shを使うならシェル依存は厳禁です。bash依存するなら#!/bin/bashです
・BourneシェルはPOSIX標準化前に主にUNIXで使われていたシェルで多くの亜種が存在します
Bourneシェル≒Version 7 UNIXのshに一番近いのはOpenSolaris由来のHeirloom Bourne Shell、次点でSchily Bourne Shellのoboshです
Heirloom Bourne Shell: sh http://heirloom.sourceforge.net/sh.html
Schily Bourne Shell: obosh http://schilytools.sourceforge.net/bosh.html
歴史的資料 https://www.in-ulm.de/~mascheck/
・csh/tcshでのシェルスクリプトは*まったく推奨しません*
参考 http://www.speech-lab.org/~hiroki/csh-whynot.euc
・Linux/UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。Manページや各種リンクを見ましょう
aproposやman -kでそれらしい単語による簡単な検索もできます
・ワイルドカード・パターンは正規表現ではありません。正規表現の話題はスレ違い(正規表現スレへ)
・シェル芸はシェルスクリプトとは異なります
・シェルスクリプトのことをシェルってゆうな
POSIX準拠シェルは(d)ash, bash, zsh, (m)ksh, yash, posh, (p)boshです
参考 https://unix.stackexchange.com/questions/145522/
特定のシェルの専用機能に依存する場合は明示しましょう(特にPOSIX準拠シェルではないfish, (t)csh等)
・デフォルトシェルのシバンはBourneシェル時代からの伝統で#!/bin/shを使用します。ただしその実体はOSによって様々です
Debian系 … dash CentOS系 … bash Alpine … ash(busybox) Android … mksh
FreeBSD … ash Solaris,OpenBSD … ksh
macOS … bash(Single UNIX Specification準拠のために一部動作が異なる)
・ログインシェルは/bin/shでない場合があります。例 macOS … zsh
・シェルスクリプトは可搬性を持たせるために可能な限りPOSIXに準拠しましょう
仕様 http://pubs.opengroup.org/onlinepubs/9699919799/
参考 https://en.wikipedia.org/wiki/POSIX
・bash依存はなるべく避けましょう。自覚なきbashism。シバンが#!/bin/shなのにbashに依存する構文を使っていませんか?
#!/bin/shを使うならシェル依存は厳禁です。bash依存するなら#!/bin/bashです
・BourneシェルはPOSIX標準化前に主にUNIXで使われていたシェルで多くの亜種が存在します
Bourneシェル≒Version 7 UNIXのshに一番近いのはOpenSolaris由来のHeirloom Bourne Shell、次点でSchily Bourne Shellのoboshです
Heirloom Bourne Shell: sh http://heirloom.sourceforge.net/sh.html
Schily Bourne Shell: obosh http://schilytools.sourceforge.net/bosh.html
歴史的資料 https://www.in-ulm.de/~mascheck/
・csh/tcshでのシェルスクリプトは*まったく推奨しません*
参考 http://www.speech-lab.org/~hiroki/csh-whynot.euc
・Linux/UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。Manページや各種リンクを見ましょう
aproposやman -kでそれらしい単語による簡単な検索もできます
・ワイルドカード・パターンは正規表現ではありません。正規表現の話題はスレ違い(正規表現スレへ)
・シェル芸はシェルスクリプトとは異なります
・シェルスクリプトのことをシェルってゆうな
2020/03/23(月) 01:14:49.56ID:TYte82vJ
関連スレ
【Bash】Windows Subsystem for Linux【WSL】7
https://mao.5ch.net/test/read.cgi/linux/1579395785/l50
Bashでプログラミング [転載禁止](c)2ch.net
https://mao.5ch.net/test/read.cgi/linux/1443885102/
シェルスクリプト総合 その28
https://mevius.5ch.net/test/read.cgi/unix/1533154936/
zsh その7
https://mevius.5ch.net/test/read.cgi/unix/1337844883/
【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/unix/1443103705/
【Bash】Windows Subsystem for Linux【WSL】7
https://mao.5ch.net/test/read.cgi/linux/1579395785/l50
Bashでプログラミング [転載禁止](c)2ch.net
https://mao.5ch.net/test/read.cgi/linux/1443885102/
シェルスクリプト総合 その28
https://mevius.5ch.net/test/read.cgi/unix/1533154936/
zsh その7
https://mevius.5ch.net/test/read.cgi/unix/1337844883/
【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/unix/1443103705/
2020/03/23(月) 16:11:26.05ID:urYmb4Ir
タコシェルが一番好きです。なぜならおいしいから。
2020/03/23(月) 21:51:18.74ID:gNyotYW5
>>1 乙
ところで早速の質問なんだけど,GNU Bashの履歴展開に関して,
<<. cat |
&#
.
cat
↑このコマンドを実行した時に,履歴展開「!$」の値が「&」になるのと,
<<. cat |
#&
.
cat
↑このコマンドを実行した時に,履歴展開「!$」の値が「|」になるのって,
バグ?仕様?
ちなみに履歴展開「!!」の値は正常(つまり直前のコマンドライン全体に復元される)だし,
ヒアドキュメントの内容が&xやx&だったりした場合は
期待通りの挙動(すなわち最後の引数,この場合は「cat」)になる。
ところで早速の質問なんだけど,GNU Bashの履歴展開に関して,
<<. cat |
&#
.
cat
↑このコマンドを実行した時に,履歴展開「!$」の値が「&」になるのと,
<<. cat |
#&
.
cat
↑このコマンドを実行した時に,履歴展開「!$」の値が「|」になるのって,
バグ?仕様?
ちなみに履歴展開「!!」の値は正常(つまり直前のコマンドライン全体に復元される)だし,
ヒアドキュメントの内容が&xやx&だったりした場合は
期待通りの挙動(すなわち最後の引数,この場合は「cat」)になる。
2020/03/24(火) 02:17:57.55ID:cu1HFh78
catコマンドがあるのにdogコマンドってないんですか?
気になります。
気になります。
2020/03/24(火) 03:33:10.76ID:Do7E3fIs
tac コマンドがあるよ
2020/03/24(火) 03:35:04.91ID:UBy3gEYu
>>6
wachdog
wachdog
2020/03/24(火) 03:35:15.65ID:UBy3gEYu
t忘れた
2020/03/24(火) 07:10:36.15ID:fj9Tix3R
私は可愛い猫と女の子を見ていたいです。
I want to watch girl with cute cat.
I want to watch girl with cute cat.
2020/03/24(火) 11:34:18.79ID:0MDW2qu9
>>10
短い文なのに英語力の低さがダダ漏れ
短い文なのに英語力の低さがダダ漏れ
2020/03/26(木) 01:44:53.53ID:1qTCm9gt
touchやcatみたいに本来とは違う用途で使われるコマンドって他にもあるんだろうか
mvでリネームも最初は不可解だったが
mvでリネームも最初は不可解だったが
2020/03/26(木) 08:26:08.90ID:cRYr3Jpu
>>12
どんな使い方だ?
どんな使い方だ?
2020/03/26(木) 09:12:09.34ID:dMO0q1U3
触るだけだったのに作ってしまう
猫だったのに
猫だったのに
2020/03/26(木) 09:30:11.06ID:n14BBjo0
結合結果を出力するものだが単独ファイルの中身を表示するのに使うとか
2020/03/26(木) 10:06:49.81ID:q5TlNmdE
touchは?
2020/03/26(木) 10:13:00.02ID:dMO0q1U3
タッチは触るツールやろ
18デフォルトの名無しさん
2020/03/26(木) 10:36:23.24ID:SHCpGffT >>5
これ分かる方いらっしゃいますか。
これ分かる方いらっしゃいますか。
2020/03/26(木) 10:50:22.02ID:dMO0q1U3
履歴展開はインタラクティブシェルが行う
シェルスクリプト実行前の処理だと思ってるので興味がないw
シェルスクリプト実行前の処理だと思ってるので興味がないw
2020/03/26(木) 17:59:15.96ID:1qTCm9gt
touchは空ファイルも作れるってだけで本来の用途はタイムスタンプの変更でしょ
catだって中身の連結が本来の用途なんだから
だけど実際はそれ以外でよく使うってお話
catだって中身の連結が本来の用途なんだから
だけど実際はそれ以外でよく使うってお話
2020/03/26(木) 21:46:26.12ID:qqZOjzAR
その昔は C プログラミングをするとき make で管理していた
make はタイムスタンプを見てどれをコンパイルするか決めていたため
touch で手動でどこからインストールするかを制御してた
touch の使い道はその辺かなあ
新しい file を作るなら
$ cp /dev/null file
の方が私の好みではある
make はタイムスタンプを見てどれをコンパイルするか決めていたため
touch で手動でどこからインストールするかを制御してた
touch の使い道はその辺かなあ
新しい file を作るなら
$ cp /dev/null file
の方が私の好みではある
2020/03/27(金) 02:36:47.10ID:0z/Q98b2
新しいファイルを作るなら
:>file
コマンド呼び出ししないから最短で最速!
:>file
コマンド呼び出ししないから最短で最速!
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 首相官邸前で「戦争あおるな」 台湾有事巡る答弁に抗議 [蚤の市★]
- 高市首相告白「『なめられない服』を選ぶことに数時間を費やしました」「外交交渉でマウント取れる服、買わなくてはいかんかもなぁ」 [ぐれ★]
- 【高市リスク】立民・小西洋之参院議員「高市総理がとんでもない安全保障オンチで外交オンチ」 [ぐれ★]
- 『DOWNTOWN+』会員数50万人突破で見えてきた 松本人志の“月収4ケタ万円”驚愕収入 [阿弥陀ヶ峰★]
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 【フジ】13年ぶり復活「クイズ$ミリオネア」元日放送決定 挑戦者に菊池風磨&ムロツヨシ、みのもんたさん版傑作選もOA [征夷大将軍★]
- 習近平や王毅などの中共幹部、「高市答弁」に関していまだ一切言及なし。すまんこっから何が起きるの? [271912485]
- 夜勤終わり風呂なう
- 【悲報】「全国の独身男性2000万人に年間120万円の独身税をかけるだけで農家を守って米の値段を半分にできるんだよ」8万高市 [257926174]
- 【悲報】東京都民さん、20過ぎてるのに自転車に乗っててて大炎上wwwwwwwwwwww女「いい歳した男で自転車に乗るのは知的障がい者だけだよ? [483447288]
- 【朗報】Amazonブラックフライデー、神すぎる
- 【悲報】ミスター東大さん、高度な『ずらし』を披露するも愚民には理解されず大炎上wwwwwwwwwwww [455031798]
