シェルスクリプトに関する総合スレッドです。
全般
・荒しは無視しましょう。
・丁寧な姿勢を心掛けましょう。
・ネチケット(死語)を意識しましょう。
・「○○(他の言語)でいいやん」は禁止。他のスレに行ってください。
・「POSIX原理主義」「ユニケージ」「USP研究所」はPOSIXとUnixを曲解し
間違ったシェルスクリプトを広めている宗教です。洗脳されないようにしてください。
前スレ: シェルスクリプト総合 その36
https://mevius.5ch.net/test/read.cgi/tech/1614212414/
関連スレ
・【Bash】Windows Subsystem for Linux【WSL】11
https://mao.5ch.net/test/read.cgi/linux/1627507889/
・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/
・過去UNIXで使われていた ksh というシェルについて
https://mevius.5ch.net/test/read.cgi/unix/1582358403/
・【POSIX】UNIXプログラミング【BSD】 [転載禁止](c)2ch.net
https://mevius.5ch.net/test/read.cgi/unix/1443103705/
・おまえら! shell は何を使っているんですか?
https://mevius.5ch.net/test/read.cgi/unix/1012330865/
探検
シェルスクリプト総合 その37
■ このスレッドは過去ログ倉庫に格納されています
2021/10/05(火) 22:49:30.91ID:KsbWuyFp
275デフォルトの名無しさん
2021/12/09(木) 11:59:18.64ID:4q0mFQ+L276デフォルトの名無しさん
2021/12/09(木) 12:30:42.74 >>275
おおそんな便利なコマンドがあったんですね
$bash sample1.sh | tee result.txt & sleep 5 && bash sample2.sh
でsample2内で取得できましたありがとうございます
ゴテゴテですが一応やりたかったことはできました
https://colab.research.google.com/drive/1nHbgd_KRiSF3uoaRKsM8shhMqFrI6PB0
おおそんな便利なコマンドがあったんですね
$bash sample1.sh | tee result.txt & sleep 5 && bash sample2.sh
でsample2内で取得できましたありがとうございます
ゴテゴテですが一応やりたかったことはできました
https://colab.research.google.com/drive/1nHbgd_KRiSF3uoaRKsM8shhMqFrI6PB0
277デフォルトの名無しさん
2021/12/09(木) 21:58:36.81ID:Mbxb9x/j for ((i=0; i < 10; i++)) {
...
}
風
i=-1; while : $((i+=1)); [ $i -lt 10 ]; do
...
done
...
}
風
i=-1; while : $((i+=1)); [ $i -lt 10 ]; do
...
done
278デフォルトの名無しさん
2021/12/09(木) 22:10:34.91ID:ghcaSzTo >>271 mkfifoで名前付きパイプを使ってもいいと思った
取りこぼしが無いよう、先にパイプを作る必要はあるが
mkfifo pipe
sample2.sh < pipe &
sample.sh > pipe &
fg %-
みたいな
取りこぼしが無いよう、先にパイプを作る必要はあるが
mkfifo pipe
sample2.sh < pipe &
sample.sh > pipe &
fg %-
みたいな
279デフォルトの名無しさん
2021/12/09(木) 22:21:13.87ID:2QHtVdpK sample2の引数にsample1を取って中で実行させるんじゃ駄目なの?
280デフォルトの名無しさん
2021/12/10(金) 00:49:10.12ID:0uGej2hE >>279
終わった話に、あやしいやりかたの提案。w
終わった話に、あやしいやりかたの提案。w
281デフォルトの名無しさん
2021/12/10(金) 01:52:13.39ID:Uh57IFJZ282デフォルトの名無しさん
2021/12/10(金) 01:56:31.72ID:Uh57IFJZ >>271
expect コマンドを使うと複雑な事も出来ると思う。
expect コマンドを使うと複雑な事も出来ると思う。
283デフォルトの名無しさん
2021/12/11(土) 14:27:15.50ID:uPYAT6Ja >>274
普通はファイルが存在するならコマンドを実行する、と書くし、非存在時のechoコマンドの
出力先が標準出力な点も気になる(標準エラー出力であるべき)。また、catコマンド実行時に
ファイルが見つからなければ、"そのようなファイルやディレクトリはありません"とコマンド
自体が(標準エラー出力に)メッセージを出すので、重複した記述でもある。
普通はファイルが存在するならコマンドを実行する、と書くし、非存在時のechoコマンドの
出力先が標準出力な点も気になる(標準エラー出力であるべき)。また、catコマンド実行時に
ファイルが見つからなければ、"そのようなファイルやディレクトリはありません"とコマンド
自体が(標準エラー出力に)メッセージを出すので、重複した記述でもある。
284デフォルトの名無しさん
2021/12/11(土) 18:07:38.11ID:vrksYrpn > 普通はファイルが存在するならコマンドを実行する、と書くし、
書かねーよ。
ファイルが存在すると判断した後の消されたどうすんだ
シェルスクリプト業界って素人が多いのか?
書かねーよ。
ファイルが存在すると判断した後の消されたどうすんだ
シェルスクリプト業界って素人が多いのか?
285デフォルトの名無しさん
2021/12/11(土) 18:07:53.48ID:vrksYrpn ファイルが存在すると判断した後に消されたどうすんだ
286デフォルトの名無しさん
2021/12/11(土) 18:10:19.61ID:0kWUcctt 業界人さんちーすっww
シェルスクリプト業界w
シェルスクリプト業界w
287デフォルトの名無しさん
2021/12/11(土) 18:15:19.56ID:vrksYrpn シェルスクリプト業界だろ?w
シェルスクリプトばーっかりやってる
シェルスクリプト最強って言ってるアホ会社ども
シェルスクリプトばーっかりやってる
シェルスクリプト最強って言ってるアホ会社ども
288デフォルトの名無しさん
2021/12/11(土) 19:15:43.81ID:jwVRIORX289デフォルトの名無しさん
2021/12/11(土) 19:21:54.38ID:Vruq/eED どうせエラー出て失敗するんだからやり直せばいいだけのことなのに
あらゆる可能性を想定して滅多に使われない機能まで組み込んで肥大化する方があるある
あらゆる可能性を想定して滅多に使われない機能まで組み込んで肥大化する方があるある
290デフォルトの名無しさん
2021/12/11(土) 19:36:54.86ID:EpvuxOsQ 問題点に対するソリューションのご提案。
・ファイルロックを取得してから操作します。
・ファイルロックを取得できなかった場合、
1.他のプロセスが既に取得している。
2.ファイルが存在しない。
・以上を確認します。
・ファイルロックを取得してから操作します。
・ファイルロックを取得できなかった場合、
1.他のプロセスが既に取得している。
2.ファイルが存在しない。
・以上を確認します。
291デフォルトの名無しさん
2021/12/11(土) 20:08:06.21ID:vrksYrpn292デフォルトの名無しさん
2021/12/11(土) 21:05:42.03ID:LF8J+dNV シ
293デフォルトの名無しさん
2021/12/11(土) 22:38:36.00ID:qYkp+8zL テキストの入力、加工、出力以外の処理を無理に書くべきじゃない
それ以上のことがやりたくなったら別の言語使った方が楽
それ以上のことがやりたくなったら別の言語使った方が楽
294デフォルトの名無しさん
2021/12/11(土) 22:39:56.90ID:vrksYrpn シェルスクリプトでcpやrmを実行するなとか言ってんの?
アホじゃね?
お前シェルスクリプトの使い方を間違ってるよ
むしろテキストの加工ならなんの言語でやってもいい
アホじゃね?
お前シェルスクリプトの使い方を間違ってるよ
むしろテキストの加工ならなんの言語でやってもいい
295デフォルトの名無しさん
2021/12/11(土) 23:30:45.47ID:dNHI9UuU どこの会社でもやたら批判的な発言をするものの具体的な答えは何も示さず
相手が何を言い返しても分かった風の立場で「それは違う」と上から目線で言い続けるだけのマシーンっているよね
一言目から答え出しておけば無駄な会話もなくなるのに
相手が何を言い返しても分かった風の立場で「それは違う」と上から目線で言い続けるだけのマシーンっているよね
一言目から答え出しておけば無駄な会話もなくなるのに
296デフォルトの名無しさん
2021/12/11(土) 23:47:58.53ID:6uvwt7oX 変な会社に勤めてるんだな
自分の特殊な環境なのに全体にするとか
ネットによく居るタイプだな
自分の特殊な環境なのに全体にするとか
ネットによく居るタイプだな
297デフォルトの名無しさん
2021/12/12(日) 00:23:59.48ID:Cge0T7le cpもmvも処理の途中でやるもんじゃないよ。出力とみなして最後にやりなよ
298デフォルトの名無しさん
2021/12/12(日) 01:33:58.51ID:oJaPYVJw 全体にする??
299デフォルトの名無しさん
2021/12/12(日) 10:52:42.84ID:y4gnCele >>295
それが今の話となんの関係があんの?
それが今の話となんの関係があんの?
300デフォルトの名無しさん
2021/12/12(日) 12:20:58.07ID:JyN9iiR1 ファイルをロックしてまで、やっているスクリプトは珍しい
普通は、ファイルが存在しなければ、そこでエラーになるだけ
普通は、ファイルが存在しなければ、そこでエラーになるだけ
301デフォルトの名無しさん
2021/12/12(日) 12:27:49.49ID:y4gnCele シェルスクリプトには真のファイルロックなんてない
ロックファイルを作ってごまかしてるだけ
だからその状態で電源OFFとかエラーで強制終了すると
中途半端にファイルが残ってトラブルになる
ロックファイルを作ってごまかしてるだけ
だからその状態で電源OFFとかエラーで強制終了すると
中途半端にファイルが残ってトラブルになる
302デフォルトの名無しさん
2021/12/12(日) 12:28:31.23ID:y4gnCele そもそもファイルをロックするなんて出た時点で
シェルスクリプトを使うのは間違ってる
データベースを使えばいい
シェルスクリプトを使うのは間違ってる
データベースを使えばいい
303デフォルトの名無しさん
2021/12/12(日) 14:20:54.91ID:WF4PQxLz 揶揄だろうにマジレスw
304デフォルトの名無しさん
2021/12/13(月) 19:52:30.36ID:LfK/mY33 flock というコマンドが・・・
305デフォルトの名無しさん
2021/12/13(月) 21:42:22.10ID:6NEloxYy306デフォルトの名無しさん
2021/12/14(火) 01:59:34.43ID:rn98eftb アドバイザリで何か不都合あるの
307デフォルトの名無しさん
2021/12/14(火) 02:24:03.30ID:qTP7/6ko308デフォルトの名無しさん
2021/12/14(火) 03:14:46.69ID:rn98eftb 面白いと思って書いたの?
309デフォルトの名無しさん
2021/12/14(火) 09:18:10.80ID:/wewuKga name=value
: $(($name = 123))
echo $value
これってPOSIX準拠?
: $(($name = 123))
echo $value
これってPOSIX準拠?
310デフォルトの名無しさん
2021/12/14(火) 15:12:29.97ID:sz49PmUD うん
311デフォルトの名無しさん
2021/12/14(火) 15:31:16.80ID:VTHB4KBI bc使わないで小数の比較演算ってできますか?
RHEL8.0環境で何もインストールしてはいけません縛りの環境を渡されてbc入ってなくて詰んでます。
RHEL8.0環境で何もインストールしてはいけません縛りの環境を渡されてbc入ってなくて詰んでます。
312デフォルトの名無しさん
2021/12/14(火) 15:53:00.42ID:0juEz1uN PerlかPythonははいってんじゃないの?
dnf(yum)用とかで。
dnf(yum)用とかで。
313デフォルトの名無しさん
2021/12/14(火) 15:56:51.63ID:/wewuKga >>310
根拠はありますか?
根拠はありますか?
314デフォルトの名無しさん
2021/12/14(火) 15:56:55.09ID:VTHB4KBI 確かに
pythonで計算することにします
ありがとうございました
pythonで計算することにします
ありがとうございました
315デフォルトの名無しさん
2021/12/14(火) 15:59:09.28ID:/wewuKga316デフォルトの名無しさん
2021/12/14(火) 16:40:48.55ID:sz49PmUD317デフォルトの名無しさん
2021/12/14(火) 17:05:42.29ID:0juEz1uN >>315
bcでそんなことを言えんの?w
bcでそんなことを言えんの?w
318デフォルトの名無しさん
2021/12/14(火) 17:15:47.75ID:vLIDlmgW プログラミング言語を使わずに計算することを考える時点で、既におかしい
319デフォルトの名無しさん
2021/12/14(火) 17:33:58.21ID:/wewuKga320デフォルトの名無しさん
2021/12/14(火) 17:44:30.18ID:sz49PmUD >>319
書いてる
書いてる
321デフォルトの名無しさん
2021/12/14(火) 17:54:50.69ID:sz49PmUD まさか「書いてる」という言質が欲しかったわけじゃないよな
言葉使いからは「いつもの」っぽいけど
書いてると言われても見つけられなさそうだな、パターン的には
言葉使いからは「いつもの」っぽいけど
書いてると言われても見つけられなさそうだな、パターン的には
322デフォルトの名無しさん
2021/12/14(火) 17:57:32.23ID:0juEz1uN323デフォルトの名無しさん
2021/12/14(火) 18:03:51.08ID:0juEz1uN いや、そう使うように書くのはなかなか面倒か。
できなくはないやろけど。w
できなくはないやろけど。w
324デフォルトの名無しさん
2021/12/14(火) 18:04:26.19ID:sz49PmUD Linuxは一貫としてbcはデフォでは入ってないんだな。なんでだろ
LinuxというかGNUがだろけど
LinuxというかGNUがだろけど
325デフォルトの名無しさん
2021/12/14(火) 18:15:04.93ID:sz49PmUD POSIXとの互換性、仮にGNU bcでPOSIXのがそのまま動くとしても互換動作モードやドキュメントを書くのが面倒 とかかなと思ったら、
-w, --warn
POSIX bc に対する拡張機能が入力された場合は警告を出します。
-s, --standard
POSIX bc の言語仕様に厳密に従って処理します。
きっちりあるやん。なんでだろ。ナゾい
-w, --warn
POSIX bc に対する拡張機能が入力された場合は警告を出します。
-s, --standard
POSIX bc の言語仕様に厳密に従って処理します。
きっちりあるやん。なんでだろ。ナゾい
326デフォルトの名無しさん
2021/12/14(火) 19:12:11.27ID:/wewuKga >>328
書いてませんでした
書いてませんでした
327デフォルトの名無しさん
2021/12/14(火) 19:13:20.14ID:/wewuKga >>320
書いてませんでした。
なんですぐバレる嘘をつくんだろうかね
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_04
書いてませんでした。
なんですぐバレる嘘をつくんだろうかね
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_04
328デフォルトの名無しさん
2021/12/14(火) 19:15:41.20ID:sz49PmUD 書いてるだろwww
すげえなあ
すげえなあ
329デフォルトの名無しさん
2021/12/14(火) 19:18:10.50ID:sz49PmUD なんか、予告的なアンカーだなw
書いてませんでした と言えるのがイミフ。凄すぎてわからん
書いてませんでした と言えるのがイミフ。凄すぎてわからん
330デフォルトの名無しさん
2021/12/14(火) 19:18:12.33ID:/wewuKga なるほど、本当にここに書いてあるという主張してるのか
2.6.4 Arithmetic Expansion
Arithmetic expansion provides a mechanism for evaluating an arithmetic expression and substituting its value. The format for arithmetic expansion shall be as follows:
$((expression))
The expression shall be treated as if it were in double-quotes, except that a double-quote inside the expression is not treated specially. The shell shall expand all tokens in the expression for parameter expansion, command substitution, and quote removal.
Next, the shell shall treat this as an arithmetic expression and substitute the value of the expression. The arithmetic expression shall be processed according to the rules given in Arithmetic Precision and Operations, with the following exceptions:
Only signed long integer arithmetic is required.
Only the decimal-constant, octal-constant, and hexadecimal-constant constants specified in the ISO C standard, Section 6.4.4.1 are required to be recognized as constants.
The sizeof() operator and the prefix and postfix "++" and "--" operators are not required.
Selection, iteration, and jump statements are not supported.
2.6.4 Arithmetic Expansion
Arithmetic expansion provides a mechanism for evaluating an arithmetic expression and substituting its value. The format for arithmetic expansion shall be as follows:
$((expression))
The expression shall be treated as if it were in double-quotes, except that a double-quote inside the expression is not treated specially. The shell shall expand all tokens in the expression for parameter expansion, command substitution, and quote removal.
Next, the shell shall treat this as an arithmetic expression and substitute the value of the expression. The arithmetic expression shall be processed according to the rules given in Arithmetic Precision and Operations, with the following exceptions:
Only signed long integer arithmetic is required.
Only the decimal-constant, octal-constant, and hexadecimal-constant constants specified in the ISO C standard, Section 6.4.4.1 are required to be recognized as constants.
The sizeof() operator and the prefix and postfix "++" and "--" operators are not required.
Selection, iteration, and jump statements are not supported.
331デフォルトの名無しさん
2021/12/14(火) 19:18:27.78ID:/wewuKga All changes to variables in an arithmetic expression shall be in effect after the arithmetic expansion, as in the parameter expansion "${x=value}".
If the shell variable x contains a value that forms a valid integer constant, optionally including a leading <plus-sign> or <hyphen-minus>, then the arithmetic expansions "$((x))" and "$(($x))" shall return the same value.
As an extension, the shell may recognize arithmetic expressions beyond those listed. The shell may use a signed integer type with a rank larger than the rank of signed long. The shell may use a real-floating type instead of signed long as long as it does not affect the results in cases where there is no overflow. If the expression is invalid, or the contents of a shell variable used in the expression are not recognized by the shell, the expansion fails and the shell shall write a diagnostic message to standard error indicating the failure.
どこにあるのか、言ってみ
If the shell variable x contains a value that forms a valid integer constant, optionally including a leading <plus-sign> or <hyphen-minus>, then the arithmetic expansions "$((x))" and "$(($x))" shall return the same value.
As an extension, the shell may recognize arithmetic expressions beyond those listed. The shell may use a signed integer type with a rank larger than the rank of signed long. The shell may use a real-floating type instead of signed long as long as it does not affect the results in cases where there is no overflow. If the expression is invalid, or the contents of a shell variable used in the expression are not recognized by the shell, the expansion fails and the shell shall write a diagnostic message to standard error indicating the failure.
どこにあるのか、言ってみ
332デフォルトの名無しさん
2021/12/14(火) 19:19:31.70ID:0juEz1uN >>327
そうやって、わざわざ相手にしてちゃんと調べてやる人がおるからやろ。w
そうやって、わざわざ相手にしてちゃんと調べてやる人がおるからやろ。w
333デフォルトの名無しさん
2021/12/14(火) 19:20:48.60ID:0juEz1uN あ、違うんか。
またいちびっとるとは思わんかった。
またいちびっとるとは思わんかった。
334デフォルトの名無しさん
2021/12/14(火) 19:21:00.40ID:/wewuKga 英語めないんでしょ?
2.6.4 算術式の展開
算術展開は、算術式を評価してその値を代入するためのメカニズムである。算術展開のフォーマットは以下のとおりです。
$((式))
式は二重引用符で囲まれているかのように扱われますが、式の中の二重引用符は特別に扱われません。シェルは、パラメータの展開、コマンドの置換、
引用符の除去のために、式のすべてのトークンを展開する。
次に、シェルはこれを算術式として扱い、式の値を代入する。算術式は、以下の例外を除き、
「算術の精度と演算」で示された規則に従って処理されなければならない。
符号付き長整数の算術演算のみが必要である。
ISO C規格の6.4.4.1項で規定されている
10進数定数、8進数定数、16進数定数のみを定数として認識する必要があります。
sizeof()演算子、前置および後置の "++"および"--"演算子は必須ではありません。
選択、反復、およびジャンプ文はサポートされていません。
算術式の中の変数に対するすべての変更は、"${x=value}"というパラメータ展開のように、
算術式の展開の後に効力を持つものとします。
シェルの変数xが、有効な整数定数を構成する値を含み、オプションとして先頭に<プラス記号>または
<ハイフン-マイナス>を含む場合、算術展開の"$((x)) "と"$(($x)) "は同じ値を返すものとします。
拡張機能として、シェルはここに挙げた以外の算術式を
認識することができます。シェルは、signed long のランクよりも大きいランクの符号付き整数型を使用することができます。
シェルは、オーバーフローが発生しない場合の結果に影響しない限り、signed long の代わりに real-floating 型を使用してもよい。式が無効な場合、または
式で使用されているシェル変数の内容がシェルによって認識されない場合、展開は失敗し、シェルは失敗を示す診断メッセージを標準エラーに書き込まなければならない。
2.6.4 算術式の展開
算術展開は、算術式を評価してその値を代入するためのメカニズムである。算術展開のフォーマットは以下のとおりです。
$((式))
式は二重引用符で囲まれているかのように扱われますが、式の中の二重引用符は特別に扱われません。シェルは、パラメータの展開、コマンドの置換、
引用符の除去のために、式のすべてのトークンを展開する。
次に、シェルはこれを算術式として扱い、式の値を代入する。算術式は、以下の例外を除き、
「算術の精度と演算」で示された規則に従って処理されなければならない。
符号付き長整数の算術演算のみが必要である。
ISO C規格の6.4.4.1項で規定されている
10進数定数、8進数定数、16進数定数のみを定数として認識する必要があります。
sizeof()演算子、前置および後置の "++"および"--"演算子は必須ではありません。
選択、反復、およびジャンプ文はサポートされていません。
算術式の中の変数に対するすべての変更は、"${x=value}"というパラメータ展開のように、
算術式の展開の後に効力を持つものとします。
シェルの変数xが、有効な整数定数を構成する値を含み、オプションとして先頭に<プラス記号>または
<ハイフン-マイナス>を含む場合、算術展開の"$((x)) "と"$(($x)) "は同じ値を返すものとします。
拡張機能として、シェルはここに挙げた以外の算術式を
認識することができます。シェルは、signed long のランクよりも大きいランクの符号付き整数型を使用することができます。
シェルは、オーバーフローが発生しない場合の結果に影響しない限り、signed long の代わりに real-floating 型を使用してもよい。式が無効な場合、または
式で使用されているシェル変数の内容がシェルによって認識されない場合、展開は失敗し、シェルは失敗を示す診断メッセージを標準エラーに書き込まなければならない。
335デフォルトの名無しさん
2021/12/14(火) 19:21:38.22ID:/wewuKga いちいち嘘を付く理由がわからんね
336デフォルトの名無しさん
2021/12/14(火) 19:22:29.34ID:sz49PmUD337デフォルトの名無しさん
2021/12/14(火) 19:23:44.74ID:/wewuKga 書いてないものをよく読めっていってごまかしてるのは
自分の間違いを認められないからなのかな?
自分の間違いを認められないからなのかな?
338デフォルトの名無しさん
2021/12/14(火) 19:24:02.73ID:sz49PmUD339デフォルトの名無しさん
2021/12/14(火) 19:25:13.06ID:/wewuKga だからどこにも書いてないと言ってる
なんで反論してるの?
なんで反論してるの?
340デフォルトの名無しさん
2021/12/14(火) 19:26:13.37ID:/wewuKga > シェルの変数xが、有効な整数定数を構成する値を含み、オプションとして先頭に<プラス記号>または
> <ハイフン-マイナス>を含む場合、算術展開の"$((x)) "と"$(($x)) "は同じ値を返すものとします。
ここよく読めばわかるが、書いてないと言ってる。
他に言い返す言葉はある?
> <ハイフン-マイナス>を含む場合、算術展開の"$((x)) "と"$(($x)) "は同じ値を返すものとします。
ここよく読めばわかるが、書いてないと言ってる。
他に言い返す言葉はある?
341デフォルトの名無しさん
2021/12/14(火) 19:27:50.35ID:/wewuKga やっぱりだまっちゃったかw
342デフォルトの名無しさん
2021/12/14(火) 19:29:37.68ID:sz49PmUD343デフォルトの名無しさん
2021/12/14(火) 19:31:39.59ID:/wewuKga >>342
なんで内容を端折るんだ?
たった3行だろ
全部読めよ
理解してないまま回答してるんだから
そりゃ嘘つき呼ばわりされてもしょうがない
name=value
: $(($name = 123))
echo $value
これってPOSIX準拠?
なんで内容を端折るんだ?
たった3行だろ
全部読めよ
理解してないまま回答してるんだから
そりゃ嘘つき呼ばわりされてもしょうがない
name=value
: $(($name = 123))
echo $value
これってPOSIX準拠?
344デフォルトの名無しさん
2021/12/14(火) 19:32:41.80ID:/wewuKga 英語読めない。規格書を読めないって
バカにされていた○○主義者ってのがいたなぁ
バカにされていた○○主義者ってのがいたなぁ
345デフォルトの名無しさん
2021/12/14(火) 19:34:10.98ID:sz49PmUD346デフォルトの名無しさん
2021/12/14(火) 19:34:30.12ID:/wewuKga 書いてないことを自分の都合のいいように解釈して突っ走るところもそっくりだ
347デフォルトの名無しさん
2021/12/14(火) 19:34:50.92ID:sz49PmUD348デフォルトの名無しさん
2021/12/14(火) 19:34:51.68ID:/wewuKga349デフォルトの名無しさん
2021/12/14(火) 19:35:59.31ID:/wewuKga name=value
: $(($name = 123))
echo $value
これよんで、
> 問題にしてるのは
> $(($name = 123))
> これ
> name = 123
> これ
> =
> これ
> ってことでいいんだな?
なんて質問するのも頭が悪い
: $(($name = 123))
echo $value
これよんで、
> 問題にしてるのは
> $(($name = 123))
> これ
> name = 123
> これ
> =
> これ
> ってことでいいんだな?
なんて質問するのも頭が悪い
350デフォルトの名無しさん
2021/12/14(火) 19:36:18.40ID:sz49PmUD >>346,348
いつもの 誤魔化 しかよ
つくづくだな
お前はどこがPOSIX準拠じゃないと思ってるねん?
name=value
: $(($name = 123))
echo $value
全部か?w
いつもの 誤魔化 しかよ
つくづくだな
お前はどこがPOSIX準拠じゃないと思ってるねん?
name=value
: $(($name = 123))
echo $value
全部か?w
351デフォルトの名無しさん
2021/12/14(火) 19:37:27.42ID:/wewuKga352デフォルトの名無しさん
2021/12/14(火) 19:38:15.35ID:/wewuKga ホントなんでこんなバカなんだろうな
353デフォルトの名無しさん
2021/12/14(火) 19:38:33.15ID:/wewuKga 英語というか、規格書の読み方をっ勉強したほうがいいぞ
354デフォルトの名無しさん
2021/12/14(火) 19:42:47.04ID:sz49PmUD >>351,352,353
>POSIXにはname変数の中身が整数定数でないときに
>どうなるかの挙動が書いてない
なに言ってるの? name = 123 この部分だろ?
name変数の中身が整数定数 なんて関係ないぞ
コンピューターサイエンスw的に、型が無い言語なら当たり前的にもな
お前は仕様書、規格書読むのに必要な知識が足りなさすぎだがな、
よく言うよほんと自己紹介好きw
>POSIXにはname変数の中身が整数定数でないときに
>どうなるかの挙動が書いてない
なに言ってるの? name = 123 この部分だろ?
name変数の中身が整数定数 なんて関係ないぞ
コンピューターサイエンスw的に、型が無い言語なら当たり前的にもな
お前は仕様書、規格書読むのに必要な知識が足りなさすぎだがな、
よく言うよほんと自己紹介好きw
355デフォルトの名無しさん
2021/12/14(火) 19:44:03.99ID:/wewuKga > なに言ってるの? name = 123 この部分だろ?
name = 123 と書いたのはおまえ
↓どこにも書いてない。目が悪い?それとも頭?
name=value
: $(($name = 123))
echo $value
name = 123 と書いたのはおまえ
↓どこにも書いてない。目が悪い?それとも頭?
name=value
: $(($name = 123))
echo $value
356デフォルトの名無しさん
2021/12/14(火) 19:44:44.42ID:/wewuKga > If the shell variable x contains a value that forms a valid integer constant,
読めないんだろうなぁ
はい、翻訳
シェルの変数xが、有効な整数定数を構成する値を含み、
読めないんだろうなぁ
はい、翻訳
シェルの変数xが、有効な整数定数を構成する値を含み、
357デフォルトの名無しさん
2021/12/14(火) 19:45:07.43ID:6VIYonG0 $nameをvalueに変えるparameter expansionは最初に行われるでしょ
> The shell shall expand all tokens in the expression for parameter expansion, command substitution, and quote removal.
その後は普通にvalue = 123が実行されるだけ
> The shell shall expand all tokens in the expression for parameter expansion, command substitution, and quote removal.
その後は普通にvalue = 123が実行されるだけ
358デフォルトの名無しさん
2021/12/14(火) 19:45:36.95ID:/wewuKga 「その後は普通にvalue = 123が実行されるだけ」と書いていない
359デフォルトの名無しさん
2021/12/14(火) 19:45:41.12ID:sz49PmUD >>355
じゃあ、お前の言う
>POSIXにはname変数の中身が整数定数でないときに
>どうなるかの挙動が書いてない
ってどこの部分やねん
お前は他人の文の意味を読めなさすぎ、のくせによく言うよを繰り返しすぎだな
じゃあ、お前の言う
>POSIXにはname変数の中身が整数定数でないときに
>どうなるかの挙動が書いてない
ってどこの部分やねん
お前は他人の文の意味を読めなさすぎ、のくせによく言うよを繰り返しすぎだな
360デフォルトの名無しさん
2021/12/14(火) 19:51:21.66ID:sz49PmUD361デフォルトの名無しさん
2021/12/14(火) 19:57:45.01ID:/wewuKga362デフォルトの名無しさん
2021/12/14(火) 20:15:07.62ID:/wewuKga POSIX準拠じゃないのはこれか
name="1+2"
echo $(( name ))
name="1+2"
echo $(( name ))
363デフォルトの名無しさん
2021/12/14(火) 20:16:20.29ID:/wewuKga 今までの流れからすればこう書いたほうがいいね
name="var=1+2"
echo $(( name ))
name変数の中身が整数定数でないときに
どうなるかの挙動は書いてない
name="var=1+2"
echo $(( name ))
name変数の中身が整数定数でないときに
どうなるかの挙動は書いてない
364デフォルトの名無しさん
2021/12/14(火) 20:32:34.85ID:2RbqpbYV シェルスクリプトで小数演算
dc ではいけないのか?
dc ではいけないのか?
365デフォルトの名無しさん
2021/12/18(土) 21:47:26.51ID:ThKMmio5 文字の長さに応じていい感じにタブの個数調整してくれる素敵なワンライナーとかない?
366デフォルトの名無しさん
2021/12/19(日) 00:43:08.09ID:1P9anxgU ワンライナーじゃなくてコマンドだろ
だいたいタブ個数調整と言われて
仕様がわからないとなんとも言えん
だいたいタブ個数調整と言われて
仕様がわからないとなんとも言えん
367デフォルトの名無しさん
2021/12/19(日) 04:58:32.60ID:Q8lTA8Fy unexpand
368デフォルトの名無しさん
2021/12/25(土) 20:40:43.43ID:62MjaTIU369デフォルトの名無しさん
2021/12/25(土) 21:25:20.38ID:gsyC6xqY >>368
2バイト文字では試してないけど
タブは8の倍数で位置を揃えるために必要な数が切り替わるので文字列リストの中で最大文字数のものに付与するタブを1として文字数が少なくなるほどタブを増やして行けばいいと分かった
最大文字数が42の場合
0〜7 タブ6つ
8〜15 タブ5つ
16〜23 タブ4つ
24〜31 タブ3つ
32〜39 タブ2つ
40〜47 タブ1つ
……
BINDのzoneファイルにAレコード大量追加したかっただけだから
ifで分岐させてなんとかしたけどもっと上手いことできるなら頼む
2バイト文字では試してないけど
タブは8の倍数で位置を揃えるために必要な数が切り替わるので文字列リストの中で最大文字数のものに付与するタブを1として文字数が少なくなるほどタブを増やして行けばいいと分かった
最大文字数が42の場合
0〜7 タブ6つ
8〜15 タブ5つ
16〜23 タブ4つ
24〜31 タブ3つ
32〜39 タブ2つ
40〜47 タブ1つ
……
BINDのzoneファイルにAレコード大量追加したかっただけだから
ifで分岐させてなんとかしたけどもっと上手いことできるなら頼む
370デフォルトの名無しさん
2021/12/25(土) 21:48:29.81ID:sYCPCNUA >>369
これを渡したら
<test.lst>
abc.c0м
defghijk.c0.jρ
123456.nёt
zzz.i0
これを出力して欲しい
<test_.lst>
abc.c0м IN A localhostのIP
defghijk.c0.jρ IN A localhostのIP
123456.nёt IN A localhostのIP
zzz.i0 IN A localhostのIP
↑
スマホからだからあれだがIN A以降は揃ってるつもり
これを渡したら
<test.lst>
abc.c0м
defghijk.c0.jρ
123456.nёt
zzz.i0
これを出力して欲しい
<test_.lst>
abc.c0м IN A localhostのIP
defghijk.c0.jρ IN A localhostのIP
123456.nёt IN A localhostのIP
zzz.i0 IN A localhostのIP
↑
スマホからだからあれだがIN A以降は揃ってるつもり
371デフォルトの名無しさん
2021/12/25(土) 22:27:57.12ID:qPDC9gWr printfのが簡単なんじゃないの?
372デフォルトの名無しさん
2021/12/25(土) 22:32:53.73ID:o6Yb7nqK ifとprintfでやった
373デフォルトの名無しさん
2021/12/26(日) 01:41:37.96ID:7bx5KWMB >>370
スペース区切りの複数単語が1行に入っていて1番目と2番目の間の空白を調整して2番目が全行で同じ位置から始まるようにするってことね。
スペース区切りの複数単語が1行に入っていて1番目と2番目の間の空白を調整して2番目が全行で同じ位置から始まるようにするってことね。
374デフォルトの名無しさん
2021/12/26(日) 01:44:16.01ID:7bx5KWMB あ、ちょっと違うか。2番目以降は固定で決まっているから1番目の単語だけ読ませてその後ろのタブを何個付加するかの問題か。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★5 [BFU★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【ローソン】ロゴの「L」で誤解生んだコーヒーカップ、デザイン変更へ 在庫使い切る3か月後にリニューアル [ぐれ★]
- 【悲報】SANA、発言撤回拒否 [769931615]
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
- 米シンクタンク「アメリカは台湾問題で"あいまい戦略"を取っている。高市早苗はこの方針から逸脱している」 [603416639]
- ジャーナリストがテレビで解説「台湾問題は高市総理から言ったのではなく、立憲民主が日本の対応可能能力を暴こうとしたから」 [359572271]
- 俺性格悪いなって思った瞬間あげてけ
- 船井「ククク…♥残念やけどカイジさんはこれで別室行きや…♥」黒服「来いっ…♥」カイジ「やめろ!やめてくれっ…!」
