1 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/05/03(木) 17:54:23.25 .net] シェルスクリプトの総合スレです。 □お約束 ・特記なき場合はBourne Shell(/bin/sh)もしくはPOSIX準拠の互換シェルがデフォルトです。 bash/zsh/ksh/ash/dash/yash/poshなどの専用機能に依存する場合は明示しましょう。 Linuxユーザは/bin/shの正体がbashまたはdashなので特に注意。 FreeBSDユーザは/bin/shの正体がashなので注意。 ・POSIXについてのリンクは https://en.wikipedia.org/wiki/POSIX にまとめられています 最新の仕様はこちらへ pubs.opengroup.org/onlinepubs/9699919799/ (左上の「Shell & Utilities」 から参照することができます。) ・v7 shに一番近くて、現役(?)のshは、OpenSolaris由来のheirloom sh。 src.illumos.org/source/xref/illumos-gate/usr/src/cmd/sh/ heirloom.sourceforge.net/sh.html ・csh/tcshのシェルスクリプトは推奨されません。 (理由は「csh-whynot」でググれ) ・UNIXにはシェルスクリプトに便利な小さなコマンドがいろいろあります。 manや参考リンクを見ましょう。 aproposないしはman -kでそれらしい単語による簡単な検索もできます。 ・シェルで使えるワイルドカード等は正規表現ではありません。 正規表現の話題はスレ違い(正規表現スレへ) ・シェルスクリプトのことをシェルってゆうな □初心者へのアドバイス: ・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも awkまたはperlの方が適した処理にはそちらを使いましょう。 ・知らないコマンドが出てきたらmanを引きましょう。 ・思い通りに動かないときは、まずは sh -x でトレースしましょう。 □回答者への注意事項: ・シェルスクリプトでの処理方法を質問しているのに、よくわからずに 「そういうのはperl使いましょう」と回答するのはやめましょう。 安易にperlに逃げずにシェルスクリプトで処理するのが頭のいいやり方。 質問に対して問題が間違ってるといちゃもんをつけるのもやめましょう 前スレ シェルスクリプト総合 その26 https://mevius.5ch.net/test/read.cgi/unix/1489979246/
681 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 18:58:44.20 .net] No, it is Apple
682 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 19:58:16.75 .net] まあPOSIXじゃないので質問者の要請は満たしてないよね 俺が提案するとしたらexecは使わず find . | xargs -I @ basename @ | head ↑これ。
683 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:06:12.48 .net] それじゃあかんだろ。xargsのオプションが足りない
684 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:09:55.36 .net] いいのか。すまん
685 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:37:42.14 .net] 俺がやるなら xargs -I には {} を 指定するがな @というのは見たことがない 社内規約かなにかかな?
686 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:51:48.06 .net] >>656-657 定冠詞がないよ
687 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:56:44.95 .net] この問題って本質的には、 find は /etc の下の全部のファイル(10以上)を返すが、 head は 10行で打ち切ってしまうという矛盾にある。 そこは目をつぶるって方針なんだから、最初に書いてあったstderrを捨てるって 方法で正しいと思うよ
688 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 20:59:20.95 .net] >>658 xargs: basename: terminated by signal 13 って表示されちゃう >>661 俺は @ しか使ったことがない
689 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 21:30:02.51 .net] >>662 バッカこれはどっちも形容詞だよ だからネタとして成立してんじゃん
690 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 22:02:52.02 .net] >>662 マジレスアッポー
691 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 23:19:14.74 .net] コマンドの重複を数える(つまり$PATHに登録され実行可能なファイルの重複を列挙する)一番短い方法をってなんでしょう。ただし確実に動作しかつ可搬であることが条件です。 僕が考えたのは $ echo $PATH | tr ':' '\n' | xargs -I @ find @ \( -type f -a -perm -+x \) -exec basename \{\} \; | sort | uniq -c です。
692 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 23:24:18.70 .net] basenameにしたらファイル名じゃなくなるじゃん
693 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/16(土) 23:36:17.54 .net] >>668 ? もしかして-type fが見えてないだけ?
694 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 04:18:06.91 .net] パスの中に空白が入ってる or PATHの中身が多すぎたらおそらくアウト ( IFS=:; find $PATH -type f -a -perm -+x ) | sed 's|.*/||g' | sort | uniq -c ( IFS=:; for i in $PATH; do find "$i" -type f -a -perm -+x; done ) | sed 's|.*/||g' | sort | uniq -c
695 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 08:19:10.40 .net] できればsedでやりたいことなんですが aaa << bbb >> もしくは aaa <<bbb>>
696 名前:ニいうようなファイルがあったとしてaaaの次行から「>>」を含む行までを読み出したいです。 (aaaが存在する行はすでに具体的な数値で判明しています; ここでは42行目とします) 特に二番目の場合には sed -n -e '43,/>>/p'とやると43行目に「>>」があるのに見つけてくれません。 なにか手助けをおねがいします。 [] [ここ壊れてます]
697 名前:名無しさん@お腹いっぱい。 [2018/06/17(日) 09:24:18.61 .net] >>671 sed -e '42,/>>/!d' -e 42d
698 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 12:39:57.71 .net] あれんじ sed -e '43,$!d;/>>/q'
699 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 14:39:23.57 .net] 標準規約に従いましょう GNU Coding Standards https://www.gnu.org/prep/standards/standards.html
700 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 14:43:41.30 .net] 言いたいことがわからない
701 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 16:46:05.17 .net] 言っても無駄なんだろうが、そんなファイルを処理しようってのが間違ってると思う
702 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:18:43.97 .net] >>676 処理したい時はどうすればいいですかね。
703 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:23:59.83 .net] POSIXで。
704 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:24:04.76 .net] Windowsだと%TEMP%で一時ファイルの格納場所が指定できますがUnixではそういう環境変数はないのですか? $TEMPとか
705 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:27:47.07 .net] >>669 basenameって拡張子消えるよね?
706 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:28:33.83 .net] >>679 誰に対して使用して欲しいのか分からないな
707 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:40:16.19 .net] >>680 消せと言えばね
708 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:43:21.15 .net] >>679 TMPDIR かな /tmp が古からあるからな。TMPDIRが設定されていたら(OSとして初期設定されているか、なんらかの形でTMPDIR設定されてたら)TMPDIR。設定されてなかったら普通に /tmp かな
709 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 19:45:54.91 .net] >>679 ,683 >TMPDIRが設定されていたら〜 って、TMPDIRを意識していればね。当然のように、んなの知らん、/tmp 一択ってのも普通にある
710 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 20:07:00.69 .net] >>681 一応、TMPDIRはPOSIX標準環境変数らしい。 tmpfile(3)やmkstem(3)なんぞはPOSIXとしてはTMPDIRを参照しろとはなってないらしい が、実装するならTMPDIR参照するだろうし、してる。ちゃんとtmpfile(3)やmkstem(3)やmktemp(1)などを使っていれば、誰でもなんだろうけどね
711 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 20:58:57.79 .net] >>685 それってPOSIX shellの話なの?
712 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 21:18:57.03 .net] シェルじゃなくてシステム
713 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 21:19:01.81 .net] >>686 何を聞いてるのかわからん
714 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 21:19:45.24 .net] 俺…POSIXだったのか…?
715 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 21:59:03.03 .net] 関数のなかってalias使えないっぽいね somefnc() { alias AAA='pwd' AAA } # → AAA: command not found
716 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/17(日) 23:04:57.63 .net] 6.6 Aliases ... Aliases are expanded when a function definition is read, not when the function is executed, because a function definition is itself a compound command. As a consequence, aliases defined in a function are not available until after that function is executed. somefnc () { alias AAA='pwd'; } somefnc AAA otherfnc () { AAA; } otherfnc
717 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 03:25:19.77 .net] aaa="cat /etc/*release | grep -E '^NAME='" echo ${aaa} 上を実行すると、 $ ./hoge.sh cat /etc/os-release | grep -E '^NAME=' こうなってしまいます。 cat 〜の結果をaaaに入れる方法教えて欲しいです。
718 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 03:35:59.29 .net] 自己レス evalで出来ました
719 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 07:01:
] [ここ壊れてます]
720 名前:47.43 .net mailto: >>690 関数の中でaliasが使えないと言うよりか、 関数の定義が実行された時点でのalias情報が反映される。 つまりシェルスクリプトを上から実行していって、 somefunc()関数定義文が見つかると、 この関数 "全体" に対して、alias展開処理が行われてから関数が定義される だからsomefunc()関数定義文よりも前にaliasが設定されていれば そのとおりに展開されるが、関数の中はすでにalias展開済みなので もう処理されない [] [ここ壊れてます]
721 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 07:11:33.65 .net] ちなみにこれだとうまくいく somefnc() { alias AAA='pwd' eval AAA } evalは実行する段階でalias展開されるようだ evalで実行する文は、実行段階ならないと わからないのだから当然ではあるが
722 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 08:15:26.93 .net] >>695 すげぇ!ありがとう ちなみに今さっきの地震に伴う停電のせいでパソコンがおしゃかになったっぽいので 試せないw
723 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 09:27:00.32 .net] なるほど。大阪だけにおしゃかになったわけだな
724 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 09:36:50.09 .net] は?
725 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 09:40:49.35 .net] うちの研究室もすごいことになった。 ところで前々から関数のなかで alias が展開されないのを歯痒くおもっていたので eval 使えばいいというのは非常に有益な Tips だわ。
726 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 10:09:39.01 .net] あまりにもPOSIX、POSIXしつこいから、POSIXでNGにしたったわ
727 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 10:13:14.51 .net] PSOIXでいこう
728 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 10:15:28.33 .net] P0SIX(いやがらせ)
729 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 10:20:36.56 .net] P051X
730 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 10:23:39.71 .net] ぽじっくす
731 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/18(月) 17:53:22.33 .net] >>699 makefile とか crontab でもエイリアス無視だけど evalならいけるのかな 試してみよう
732 名前:名無しさん@お腹いっぱい。 [2018/06/18(月) 20:47:12.93 .net] oldcar-purchase.com/
733 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 04:10:29.03 .net] 関数の中、もしくはmakefileやcrontabで aliasを使いたい状況っていうのがよくわからないが どんなときに使うの? aliasではなく変数とかじゃ駄目なの?
734 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 04:54:42.99 .net] 自分は引数を取らず固定されたフィルタはaliasで定義することにしている 例えばeraelコマンド(ERAce Empty Line)。 alias erael='sed -e "/^$/d"' ただ大抵はシェルスクリプトの先頭に記述するのであなたの言う通り関数の中で宣言する意図は分からん。
735 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 05:16:14.31 .net] つづりeraseやで
736 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 05:53:06.78 .net] >>708 使い方としてはわかったけど、 ぶっちゃけそれだって関数作ればいいだけなんだよなぁ erase() { sed -e "/^$/d" "$@"; }
737 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 06:00:33.38 .net] >>710 いやそうなんだけど 「引数を取らず固定されたフィルタ」 ↑これを実現するのに関数は大仰な気がしてきてな。
738 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 06:15:17.17 .net] 関数とエイリアスの使い分けに意味はあるの? 使用メモリ?性能?
739 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 06:31:47.07 .net] >>712 いやまったく大差ない。 ただただaliasというだけ 分かってると思うが俺は別に「使え!」なんて言ってないから そんな気にする必要ないぜ。 個人的な問題だから。
740 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 07:04:14.39 .net] みんな知ってるかい? 関数の中で関数を定義できるってことを foo() { bar() { echo bar } } foo bar
741 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 07:22:52.49 .net] 全角字下げやめてくれ コピペで試せん
742 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 07:27:20.24 .net] foo() { bar() { echo bar } } foo bar
743 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 08:03:40.13 .net] 5chに貼られたソースコードをコピペするってwセキュリティ意識ゼロかよw 絶対こんなの相手に発注したく
744 名前:ヒぇww [] [ここ壊れてます]
745 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 13:37:44.18 .net] アクalias飲みてぇ
746 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/19(火) 18:46:56.46 .net] >>717 たかが数行のソースが危険かどうかもわからん奴には発注したくないな
747 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 02:21:04.28 .net] somefunc() { echo "${1:='need a arg'}" } のような関数を作ったのですが引数なしで起動すると -bash: $1: この方法で割当はできません と怒られるのですがどうすればいいですかね。
748 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 03:20:33.94 .net] somefunc() { arg="$1" echo "${arg:='need a arg'}" }
749 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 03:34:23.66 .net] >>721 ありがとうございます! できました! すいませんが、もしよければなぜ直接引数に:=変数置換を適用できないのか教えていただけないでしょうか。 例えば${1:-aaa}などはごく普通にできるので、不思議です。
750 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 05:12:57.83 .net] bash: $1: この方法で割当はできません bash: $1: cannot assign in this way 代入文を使って位置パラメータへの代入を行うことはできません。 Positional parameters may not be assigned to with assignment statements.
751 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 06:53:00.27 .net] すべての言語で引数に対する代入は禁止されればいいのに
752 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 07:57:59.37 .net] 引数に代入できる言語って例えば?
753 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 08:43:18.41 .net] ば…bat
754 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 10:20:31.09 .net] それ言語?
755 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 11:38:13.87 .net] Cだとargvは一度どこかに書き出さないと置換とか操作できないよね。
756 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 12:45:30.95 .net] >>728 別に直接書き換えもできる。constを「自分で」付ければできないようにもできるけど Cで書き換えるのは危険すぎるだけだな。配列/文字列等のメモリ境界保護なんてないから。OSによってはargvがメモリ保護域にあるのもあるだろけど
757 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 12:48:49.26 .net] >>728 argv の指す先は変更できないけど argv 自体は変更し放題
758 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 12:56:35.45 .net] >>730 argvの指す先(char **argv/*argv[]の中身/値でいいの?)も変更できるよ argv = myArgv; argv[1] = myArg; argv[1][0] = myChar; どれもできる
759 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/20(水) 15:25:21.41 .net] ああそうか。728だけど,すごいまぬけな発言をしてたわ。 Cでのargvはあくまで約束事としての変数名だからなんの保護・制約も掛けられてないのか。 一方シェルスクリプトでは引数変数を明確に他と区別できるようになってる。 ただし半保護状態。
760 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 05:57:06.66 .net] script(1)コマンドかそれと似たCLI記録ツールで、 ~/.profile(←ここに~/.bashrcなどを読みこむコマンドが書いてある)を読み込ませたいのですがどうすればいいですかね。
761 名前:名無しさん@お腹いっぱい。 [2018/06/21(木) 06:34:26.14 .net] >>733 #!/bin/sh exec /bin/bash --init-file "$HOME"/.profile "$@" こういうスクリプトを書く ファイル名を mysh でホームに保存したとして、次のようにして script に使わせる env SHELL="$HOME"/mysh script
762 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 08:42:01.32 .net] >>733 surce ~/.profile ではだめなの?
763 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 09:33:47.42 .net] ✕ surce △ source ◯ .
764 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 09:34:32.68 .net] 1行目は×な。
765 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 09:45:45.51 .net] bashの場合、インタラクティブでログインシェルでなければ.bashrcを読むはずだけど、それじゃ足らんの?
766 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 15:08:24.51 .net] >>734 ありがとうございます! できました!
767 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 15:25:56.39 .net] 733です。すいません。もうひとつ訊きたいことがあるのですが script(1)実行中はCO
768 名前:LUMNS=80,LINES=25に固定したいです。 しかしそのmyshに export COLUMNS=80 などと記述しても反映されません。 ~/.profileなどでは特にCOLUMNSの値を設定している訳ではないです。 これどうすればいいですかね [] [ここ壊れてます]
769 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/21(木) 17:29:46.87 .net] stty cols 80 rows 25 なんかLINESもってとこから、ターミナルのウィンドウサイズなんぞもってぽいけど、それは個々のターミナルアプリ次第&一方通行っぽい(COLUMNSの値を設定している訳ではないのはそゆこと)けど
770 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/22(金) 07:10:56.19 .net] シェルスクリプトってeval使えばメタプログラミングっぽいことできるよね。 例えば引数をfor文で増加さしてeval arg$i=\$$iみたいな。
771 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/22(金) 08:39:33.18 .net] >>742 evalはインタープリタそのものだからね
772 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/22(金) 08:56:09.19 .net] evalは一番最初に現れたプリミティブなメタプログラミング機能だからまあ当然だな。 ちな最初にeval を発明した言語はLisp な。
773 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/22(金) 15:33:32.30 .net] eval is evilを発明したのはLISPか
774 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 05:10:08.14 .net] eval is evilはJSでは
775 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 10:04:22.34 .net] evalは強力すぎて危険だからどの言語でも濫用はevil扱いだと思う。 REPLみたいにevalがぴったりした応用もあるから禁止はできんし、 シェルスクリプトは比較的ミニマムな言語だからevalしか解がないケースも多いけど。
776 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 11:22:58.87 .net] 「ミニマルな言語」って他には例えばなに? それLLとはまた違うの? いや煽ってるんではなくて単純に訊ねたい。
777 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 11:42:26.04 .net] コマンド置換の入れ子の限界を試そうと思って $ i=1; while true; do echo $i; eval $( (yes '$(echo' | head -n $i | tr -d '\n'); (yes ')' | head -n $i | tr -d '\n') ); : $((i++)); done ↑こんなコードを実行してみた。 100あたりから面白いくらいに遅くなっていく しかし500くらいまで試したけど表示は続き、限界を探る目的は達成できなかった。
778 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 13:19:07.15 .net] ミニマムはすき
779 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 14:46:23.27 .net] eval関連なんですがaliasの出力結果をevalする方法を教えてください。 具体的にはroot権限でlsがしたいのですが、その時通常のlsと同じオプションを付けて実行したいのです。 ですので(通常の状態での)alias lsの結果を変数かなにかに格納してそれを実行しようと思ったのですが良い方法が思い付きません。 そのコマンド自体もaliasにしたい(具体的にはls@rootコマンドとしてalias ls@root=の形で定義したい)です。 どうかよろしくお願いします。
780 名前:752 mailto:sage [2018/06/23(土) 14:52:25.95 .net] すいません。一番上の行は無視してください。 evalでできるかなと考えてたプロセスが漏れてしまっただけです。 多分このアプローチは間違っているので無視してください。
781 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 19:13:35.47 .net] >>750 偽物臭強いけどなw ただ身長が小さいだけじゃないかっつー 本物双子のやつは結構好き
782 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/23(土) 19:18:52.33 .net] >>751 普通にぐぐれ
783 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/24(日) 00:39:25.04 .net] >>751 aliasでなくてsudo使って関数定義するのがいいと思うけどだめなの?
784 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/24(日) 07:01:44.49 .net] LS=`alias ls` じゃだめなの?
785 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/24(日) 09:15:58.74 .net] >>753 詳しく
786 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/24(日) 10:16:34.78 .net] /tmpでいいじゃん
787 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/24(日) 22:14:10.69 .net] >>748 データ型が少ないって意味でTclとかかな。 でもTclには文字列型の他に連想配列があるのよね。 POSIX shellの範囲内だと引数配列を除けばホントに文字列しかないので。
788 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 16:44:06.12 .net]
789 名前:アんにちは ド素人です。 VPSの立ち上げ時にスタートアップシェルスクリプトを使って効率化したいです。 とあるwgetを叩くと、user名とパスワード、パスワードの再入力を求められるのですが、 このuser名、パスワードをシェルスクリプトで入力させるにはどうしたらよいでしょうか。 [] [ここ壊れてます]
790 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 17:04:46.28 .net] wgetでgithub上にある既存のシェルスクリプトを叩くと ユーザー名とパスワードを聞かれるのですが、 その入力を自動化したいという意味です。 github上のシェルスクリプトは変更できません・・・
791 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 17:16:35.68 .net] wgetでシェルスクリプト叩くてどういう意味? 出力をシェルに流し込むって事?
792 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 17:25:22.13 .net] なんかパスワード 自動入力 あたりでggったらすぐ出てきそうやな
793 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 17:29:12.30 .net] >>761 相手側の要求に従ったuser名パスワードの提供方法をwgetでするとよいでしょう どのVPS?どういう相手側のサービス?その使ったというはGitHubのどれ? https://gist.github.com/kevinold/216077/4d725773b46a2ac32c0f5a689339d3da004d7f5d これでいいのか?適当にぐぐったらVPSだしwget使ってるしw >>762 まあ、なんかセットアップでコマンド叩いたりするのだろう。そういえばwgetで認証できなかったら再入力なんて求められないよな...??あったかな??
794 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 17:55:18.59 .net] wgetは--userと--passwordでユーザー名とパスワードを指定できるはずだけど
795 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 18:04:40.17 .net] httpのBASIC認証やftpのならそれで問題はないよね。普通にBASIC認証でそのオプションを教えてっていうことだけかな
796 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 18:12:51.93 .net] manくらい嫁カス案件
797 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 19:26:12.11 .net] wgetが書かれたシェルスクリプトを呼び出すシェルスクリプトを書きたいように見えるが… まあ質問が日本語的に不自由すぎるね
798 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 20:51:22.89 .net] wgetがBASIC認証を要求してくるんですが、 パスワードをシェルスクリプトに書きたくないです。 別ファイルに生パスワードを書くのも嫌です。 かといって毎回入力するのは面倒です。 ssh-agent利用して最初に一回いれて覚えさせるだけで あとはパスワードなしにできたりしないですかね?
799 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 21:11:05.80 .net] ssh-agent/ssh-keychainはどうなんだろ、無理じゃねと思うが、keyring(Linux/BSD)/Keychain Access(macOS)を使えばふつーにできるだろうな
800 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 21:17:58.64 .net] 最初の質問と内容か変わってるし、パスワード書きたくないらしいので、役にたたないだろうけど、俺ならexpectでスクリプト書く
801 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 21:25:16.46 .net] 最初の質問者と別人じゃね?レスの書き方から同一人物にも見えるけどw
802 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/26(火) 22:26:52.66 .net] まあなんか知らんがもっとドキュメントに当たったらって気がする
803 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/27(水) 00:54:07.84 .net] jqについて教えてください。 https://ideone.com/SZlhR4 やり方が分からないので、以下のようにとりあえすyenを指定したら並び順が思ったようになりませんでした。 $ cat kudamono.json | jq -r '.genre_name, .list[].name, .list[].hinshu_list[].yen' くだもの りんご みかん いちご 180 500 200 50 63 300 null null null 続く
804 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/27(水) 00:54:30.18 .net] 以下のように標準出力に出す方法を教えてください。 くだもの りんご ふじ 180 サンふじ 500 つがる 200 みかん きんかん 50 いよかん 63 せとみ 300 いちご あまおう null ひのしずく null とちおとめ null
805 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/27(水) 01:36:22.49 .net] >>772 別の人ですよー。
806 名前:竄閧スいことを思い出したので、書いてみたの♪ [] [ここ壊れてます]
807 名前:名無しさん@お腹いっぱい。 [2018/06/27(水) 03:13:21.88 .net] >>774-775 . | .genre_name, (.list[] | .name, (.hinshu_list[] | .hinshu, .yen)) https://stedolan.github.io/jq/tutorial/ https://stedolan.github.io/jq/manual/ 見つつ https://jqplay.org で試した jq初めての俺でもすぐできたじゃねーか まじめにやれ
808 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/27(水) 07:24:03.91 .net] >>777 どうもありがとうございます! カッコを使うといいんですね
809 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/28(木) 16:24:57.87 .net] dashで動くシェルスクリプトってPOSIX準拠のシェルスクリプトだと思って問題ない?
810 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/28(木) 17:11:46.11 .net] そいつから呼ぶコマンドもPOSIXじゃないとな。
811 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/29(金) 00:29:23.70 .net] dashはPOSIX準拠である だからPOSIX準拠のコードはdashで期待どおり動く だけどdash専用のコードはPOSIX準拠ではない
812 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/29(金) 01:00:02.18 .net] kshのposixモードがかな。POSIX仕様の元となった自負があるだろうからposixモードもちゃんとしてそう
813 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/30(土) 22:10:41.02 .net] あの,すごく初歩的なことだと思うのですが, Excelなどのように隣のセルの値を参照して現在のセルの値を計算するという手法を シェルスクリプトで行うにはどうすればいいでしょうか。 具体的には,参照した値をaとして,(1-sin^2(a))/2^aを計算したいです。 Excelだと,A列に値を入力していき,B1セルに「(1-(SIN(A1))^2)/2^A1」と入力した後ドラッグすればいいのですが……。
814 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/06/30(土) 22:52:18.06 .net] a=値 echo "(1-s($a)^2)/2^$a" | bc -l とか?
815 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/01(日) 20:12:26.02 .net] cat <<. | xargs -I @ echo (1-s(@)^2)/2^@ | bc -l 3 44 -6 . こんなのでどう?
816 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:00:06.28 .net] cat と echo と print の違いが分からない あと、print と printfの違いも 教えて
817 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:00:38.56 .net] less と moreも
818 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:07:32.55 .net] manすりゃいいんじゃないの
819 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:15:59.23 .net] cat と echo,printf は全然違う。主に出力するソースが(ゆえにパイプで入力受ける受けないとなり?) echo と printf は、書式が指定できるかというか、コマンド由来とC由来かな printって?awk内のならprintはechoのようなもんかな(Ubuntuには print がコマンドであるけど Mailcap とかナニそれな普通じゃないのだな)
820 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:19:26.23 .net] ググったらechoは改行されてしまうけどprintfは自分で\nしないと改行されないってあった
821 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:23:46.00 .net] それらの違いが分からないのは使ってないからだろ 使ってないなら知る必要もないし知ろうとも思わない 自作自演かな?
822 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:26:27.85 .net] >>791 宿題
823 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:27:23.78 .net] コマンド由来とC由来ゆうてるやんw printf(1) は printf(3) と同じと思えば不思議ではないだろう。echo も -n で改行しないようにもできるけどイレギュラー、コマンド由来だからな >>791 まあ、なんの目的で聞いてるのかさっぱりわからんくはあるな。なんの自作自演なのかさっぱりだけど
824 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:27:58.46 .net] >>792 宿題かああ。程度が低いな。高校でとかか?
825 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:28:13.36 .net] >>792 あぁ…
826 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:39:06.49 .net] >コマンド由来 コマンドはつねに改行されるの?
827 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:40:31.96 .net] あと、printfのfって何? f付けたのはcが最初? fって?
828 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:44:50.94 .net] 少しは自分で調べろよ
829 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:47:13.07 .net] 調べたから改行の事分かったんだけど?
830 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:47:50.56 .net] もっと自分で調べろよ
831 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:49:35.35 .net] じゃぁfだけヒント教えて
832 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:50:22.47 .net] それな
833 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:50:43.52 .net] >>796 ,797 コマンドで何か出力するのに「改行しない」方が少ないだろうという。echo "Hello"が改行しなかったら
834 名前:プロンプトが続いてとか。改行した方がその機会が多いので省けるだろう f = フォーマット。printfはCが起源じゃないのかなあ。の前の何かの言語ではprintがあっただろうな(どういうのか知らんけど) 聞く姿勢が小学生低学年並みだな。そろそろ>>798 の言うとおり [] [ここ壊れてます]
835 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 14:55:17.35 .net] >>803 どうもありがとうございました
836 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:22:33.69 .net] 礼儀正しいな 少し見直したw
837 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:24:56.72 .net] manとinfoどっち使ってる? infoは文中から別のページに飛べるから便利そうだけどウェブブラウザのように戻る進むボタンがあるわけでも無いし全部文字だけだから現在位置が分からなくなるからmanがいいと思うんだけどどう?
838 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:25:43.12 .net] なんか最近ほんとこういうアンケートみたいなの増えたな どっかから流れてきたか?
839 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:27:19.76 .net] この質問は乾燥機かせてほしいだけだから
840 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:29:11.19 .net] UNIX板だからmanだな
841 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 15:31:13.31 .net] 何を乾燥させたいのかしばらく悩んだ
842 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 18:41:01.45 .net] 「乾燥機貸して」ってアンジャッシュのネタにあったなそういや
843 名前:名無しさん@お腹いっぱい。 [2018/07/02(月) 19:09:02.32 .net] man manて口で言うと恥ずかしいからinfo
844 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 19:35:17.38 .net] rcsのco(1)を
845 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 21:56:08.50 .net] tinfo
846 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/02(月) 22:32:14.11 .net] そのあたりのネタはもう聞き飽きた
847 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/03(火) 00:21:24.80 .net] ディレクトリの中の拡張子がm2tsのファイル全てをtsselectというコマンドに投げてその標準出力をひとつのファイルに追記で書き込みたいんですが、その際、ファイル名も一緒に書き込みたいです。 どうやってファイル名を取得するんでしょうか? $ tsselect *.m2ts > ana.log
848 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/03(火) 00:43:49.80 .net] 1行で書けなかったので、複数行に分けてfor分を使いました。
849 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/03(火) 01:01:05.23 .net] こんなん? for i in *.m2ts; do echo $i >>ana.log; tsselect $i >>ana.log; done
850 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 07:39:11.34 .net] 近頃のどこか(このスレかも)で, 「fgrepはgrepより遅い」というような話を耳にしたんですが,ほんとうですか? 手元のgrepで試したところ,ほとんど有意な差はありませんでしたが……。
851 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 08:10:45.64 .net] それぞれ独自バイナリだった昔の話な。 あとgrepよりegrepの方が速かったんで、 今でも手はegrepを優先して打っちゃうけどな。
852 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 08:43:22.98 .net] いや独自バイナリだった頃もfgrepの方が速かったような。 grepだけ非決定性オートマトンで遅い的な。
853 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 15:23:44.48 .net] ファイルの一括リネームで $ find . -name "*X*" | while read F; do mv $F ${F/X/Y}; done だとXXXがYXXになるんですけどYYYにするには繰り返さなきゃいけないんですかね?
854 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:18:50.48 .net] If pattern begins with /, all matches of pattern are replaced with string.
855 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:22:26.78 .net] 日本語で書いてくれないとわかりません できれば修正したコマンドを書いてください
856 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:25:40.84 .net] お断りします
857 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:27:15.37 .net] 断る理由とは?
858 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:29:57.71 .net] ひな鳥に餌を上げるのはひな鳥がかわいいからだ なんかこのひな鳥うざいって思ったら餌は与えない
859 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:31:49.67 .net] 可愛く思われる質問の仕方でもあったんですかね
860 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:34:15.63 .net] とりあえず「sh 変数展開」あたりでggってからここに来
861 名前:い それで分からなきゃどこかの暇人が餌与えてくれるまでずっと待ってな [] [ここ壊れてます]
862 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:35:48.08 .net] ありがとうございました
863 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 16:54:10.40 .net] もう来んなよ
864 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:24:31.29 .net] すみません ワードとかに出来る~$で始まるファイルを一括で消したいのですがどうすればいいですか。 find ./ -name "~$*" -exec rm -rf {} \; これだと上手くいかないです。 find ./ -name "~\$*" -exec rm -rf {} \; エスケープしてもダメです。 find ./ -name "~*" -exec rm -rf {} \; これだと上手くいきますが$も指定するためにはどうすればいいですか。
865 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:27:42.16 .net] シングルクォート使っとけばぁ
866 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:30:53.83 .net] >>833 上手くいかないです $ find . -name ~'$'* Unknown user: $*. $ find . -name "~'$'*" Illegal variable name. $ find . -name ~"$"* Illegal variable name. $ find . -name '~"$"*' 何も出力されない
867 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:41:11.43 .net] 自己解決 bashにしたら\で普通にエスケープできました find . -name "~\$*" なんでcsh使ってたんだろ
868 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:44:18.71 .net] csh使ってたならプロンプト$にすんなよ紛らわしい
869 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 18:46:56.81 .net] cshだと%でしたねすみません % find . -name "~\$*"
870 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 20:48:13.14 .net] なんで-rつけてんねん
871 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 20:56:00.21 .net] ファイルフォルダ関係なく消したいからフォルダがないとわかっていても付けてる
872 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:12:02.88 .net] \; より + かな。forkの遅いCygwinでは特に。
873 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:21:14.22 .net] 最後以外の改行を削除する単純で可搬な方法を探しています。 私が現在使っている方法は cat <<. | tr -d '\n' | printf '%s\n' "$(cat)" a bbb cc . です。これは可搬性は抜群ですが、冗長すぎると感じています。 できれば一つのコマンド(sedとか?)で済ませたいです。よろしくお願いします。
874 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:32:09.95 .net] awkで
875 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:34:23.01 .net] フォルダっつーかディレクトリ
876 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:37:25.99 .net] 同じだろ
877 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 21:40:52.56 .net] >>841 sed ':l;N;s/\n//;bl' とかかな。// を /,/ にすると、1行CSVに出来る。
878 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 22:22:07.40 .net] >>845 ありがとうございます! すごいですね……。:lってラベル付けでしたっけ。
879 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/04(水) 23:00:04.93 .net] >>841 cat <<. | { tr -d '\n'; echo; } a bbb cc .
880 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 09:36:25.04 .net] Mac付属のsedじゃうまく行かなかった、ってお呼びじゃないか 最近のBSD sedはどうかわからないけど
881 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 10:23:41.12 .net] >>848 え? そうなの? OS Xを持ってないので知らんが Busyboxでも行けるくらいの可搬性はあるぜ? 全部POSIXで規定されてる命令だし。
882 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 12:53:17.75 .net] macOSだけでなくBSDでだめっぽい。BSDでだめというか、GNU sedでなら動くか
883 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 14:18:26.92 .net] 主にパターンスペースに対して処理した直後にどうするってとこの違いかな。他ではBSDでもmacOSとOpenBSDでは行を処理しなかった場合どうするがちょっと動作が違ったり、いろいろ鬼門だなsedは sed '$!{H;d;};${H;g;s/\n//g;}' で、いちおう、sedもGNU sedものようだけど、ゴテっとはしてんな
884 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 14:50:09.34 .net] >>845 も結局改行を削除しているだけ&最後の改行はsedの勝手に付けるだけなので、>>847 の方がシンプルでこっちの方がって感じだな
885 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 15:36:04.46 .net] >>845 のMacやBSD向け変種でけた sed -e :l -e 'N;s/\n//;$p;bl'
886 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 15:51:48.45 .net] おおっ ラベルを別にすれば/しなきゃなのか $はそこに入れるのか、なるほど GNU sedではそれだと.
887 名前:..オプションで変えられるかな くせが強いw [] [ここ壊れてます]
888 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 17:34:11.18 .net] 教訓。移植性を重視するならsedで変なことするな。普通の正規表現だけ使え
889 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 18:25:50.29 .net] 昔はもっと酷かったんだろうな #移植性 sedだけじゃなくてgrepとかも。
890 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 18:33:28.39 .net] >>856 昔は一つしかなかったから移植性よかったよ。 GNUが台無しにした。
891 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 18:41:45.18 .net] ぐぬぅ
892 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 22:10:39.00 .net] sed で可搬性を考えると、セミコロンで分ける方法はちょっとあやしいから、 愚直に -e で分けるしか無いのかも知れない、短く書けないけどw それはさておき、sed の「無限ループに N を入れる」って、趣があると思うんだよね。 C で「ファイルを while の条件文で fgets() が EOF になるまで読み込む処理」に近いというか。
893 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 22:32:39.96 .net] >>855 >普通の正規表現だけ使え というより、一行単位サイクルで処理しろかな
894 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/05(木) 23:00:24.55 .net] >>859 溜めに溜めて溜め込んでってイメージしかないなw そのwhile〜fgets〜で言うなら、中にreallocでどんどこ的な 実際どうなんだろと65Mのファイルで「ちょっと」試したら、使用メモリは増えない(??)けど終わらんぞw
895 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/06(金) 00:57:10.67 .net] bashのプロセス置換なんですけど、最初のプロセス置換が/dev/fd/63に固定(?)されているのはなにか理由があるんですかね。 bash-4.4$ eval echo $(yes '<(echo) ' | head -n 63) とやったら/dev/fd/63からデクリメントされていって/dev/fd/5→/dev/fd/3→/dev/fd/64 という謎の変化を経てインクリメントされていくという……。 これ仕様ですかね。
896 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 16:45:13.41 .net] 仕様です 63は昔は大きい数字だったのですが 最近は小さくなってしまった
897 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 19:05:22.41 .net] 数千行のCSVの値を一個一個指定の条件に沿っているかチェックするにはシェルスクリプトでも出来ますかね? 参考書教えて頂けたら嬉しいです。 それともこういうのは他のスクリプトの方が適してたりしますか? perlも使える環境ではあります。
898 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 19:24:54.18 .net] >>864 そのチェックが他の行の参照を含まなくて、shellでできるかという質問にawkやsedも含まれているのなら、できる というか、excelでやったりしないし、最近はpythonでやることが多い
899 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 20:21:55.89 .net] 指定の条件によるな。CSVの項目も数値や文字列だけだったらシェルスクリプトだけでもできるだろう
900 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 20:52:55.66 .net] ああ、文字列の中のフィールドセパレータ(,)をフィールドセパレータとして除外というのはしないか。awkも同じかな。やってできないこともないだろうけどめんどくさいな perlはcsv処理するモジュールを入れてだっけ、pythonは最初から入っているよな
901 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 21:04:50.61 .net] それ以前にCSVのフォーマットによると思う 改行とかカンマとかダブルクォーテーションを含むとかをきちんとやりだすとシェルだけでもできるだろうけどやりたくない
902 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 23:07:51.61 .net] またCSV嵐が来てんのか
903 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 23:12:15.86 .net] カンマ入っている場合には "" もしくは '' で囲わなければならないから、それはシェルスクリプトにとっても都合がいい、 IFS=',' fields=($raw) で簡単にと思ったがそう甘くはなかった。最近流行りのevalでなんとかだとしても、$とかまた別の問題があるしなあ
904 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 23:14:30.65 .net] >>869 別にあれとは違うだろうにw 単にCSVだからって拒
905 名前:否反応示しすぎ [] [ここ壊れてます]
906 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 23:47:30.31 .net] 皆さんお答えありがとうございます。 出来るけど面倒だという感じですね。 PHP使いたいけど仕様上ダメみたいなんですよね。。。 後にメンテナンスが面倒くさそう
907 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/07(土) 23:50:19.59 .net] >>867 残念ながらpythonは入ってなかったです。DBサーバーなんで
908 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/08(日) 00:37:11.05 .net] >>873 perlで高機能な(?)Text::CSVを入れればだけど、それすらなら、 t2aki.doncha.net/?id=1403586022 なんぞの数行のをコピペってでもかな。後はperlスレだな
909 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 08:36:49.76 .net] >>869 いいえ、また "お前" が来てるんですよ
910 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 09:05:14.05 .net] >>872 上とかけあってperl/python/rubyのどれかを入れさせれもらった方がいいと思う。 あるいはjava VMがインストールされてるなら、そっち使ってもシェルよりは楽。
911 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 13:02:45.84 .net] 素直にCで書けばw
912 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 15:13:46.00 .net] 1990年代には確かにこういうプログラムもCで書いてたが、今では はやらんよ。 スクリプト言語とかJava VM系言語とかでCSVライブラリ呼ぶように書くのが普通。 もっと低レイヤの処理ならCも使うけど、業務システムにCを使うってのは、 開発効率が悪いせいで、ほぼ亡びた。
913 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 19:00:09.14 .net] compgenによる補完候補の絞り込みですが bashでは正常に動作するもののzshでは絞り込まれません。 なぜでしょう? # bash 4.4.19 on Ubuntu 18.04 $ compgen -W "aaa bbb ccc" a aaa # zsh 5.5.1 on Ubuntu 18.04 % compgen -W "aaa bbb ccc" a aaa bbb ccc .zshrcでは autoload -U +X compinit && compinit autoload -U +X bashcompinit && bashcompinit してます
914 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/09(月) 22:19:36.10 .net] >>878 すでに入ってるLL使うならわかるが、JavaVM入れるくらいならCでいだろ。
915 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/10(火) 08:36:39.48 .net] >>880 >>876 は「java VMがインストールされてるなら」って書いてあるじゃろ。 つまりCSV処理のためにjava VM入れるんじゃなくて既に入ってるならって話。 入ってないなら交渉してスクリプト言語入れる方を推奨だな。 エンタープライズ系は静的型検査が欲しいので相変わらずjava VMな言語が強いのよ。
916 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/15(日) 05:45:07.54 .net] シェルスクリプトでwebpackみたいに結合して1ファイルにしてくれるものとか babelみたいにトランスパイルすることで言語を拡張するものって無いかな
917 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/15(日) 13:28:22.06 .net] >>882 シェルアーカイブ形式とか? file.sharという形で,ファイル後半に(圧縮した)バイナリーファイル,前半(というかヘッダ)に展開用シェルスクリプトとインストールスクリプトを書いておく) 最近のソフトウェアだとVMWare Horizon ClientsのLinux向けインストーラーがその形式だった。
918 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/16(月) 09:08:44.64 .net] >>883 別にバイナリファイルを動かそうって話じゃないよ 単にくっつけてくれればいいだけ
919 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/16(月) 11:20:08.69 .net] >>884 それがshar
920 名前:名無しさん@お腹いっぱい。 [2018/07/17(火) 14:15:20.69 .net] >>885 だからぜんぜん違う webpackみたいに1ファイルに結合するって話をしてる 結合しても結合する前と同じように動く すこしはsharについて調べてきたら?
921 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 14:17:28.78 .net] shar知らない人のために説明しておくと、 これは単なる自己解凍形式の圧縮ファイル形式に過
922 名前:ャない [] [ここ壊れてます]
923 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 14:31:39.62 .net] それよりwebpackとやらについて説明しておくべきだったろ 聞き方が悪い
924 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 14:59:08.62 .net] 名前出てるんだから調べればいいだけだろ
925 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 15:01:52.39 .net] なんで聞く側が偉そうなんだよって話だろ
926 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 16:41:05.27 .net] どう使いたいかとかわからんのにな >>887 って言ってるけど、得られるのは自分でそれを使ってダイレクトにも頑張ればできる範囲だし
927 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 18:43:00.23 .net] webpackはCのプリプロセッサのincludeみたいなやつだよ
928 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/17(火) 19:48:43.74 .net] バンドルじゃないの。macOSのバンドルのようなのを単一ファイルでの 単にincludeだったらシェルスクリプトにcatでくっつければええやん。目的は単一のファイルにしたいだけなんだから バンドルなんだからバンドルをハンドルするヤツが必要じゃないの。んなのはshar使って自分で作ればってとこじゃね
929 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 07:15:49.95 .net] webpackとかbabelとか覚えたてのキーワード並べてみたかったんでしょ そんなのが必要になる状況がクソなんだがなw
930 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 10:45:31.69 .net] >>891 > >>887 って言ってるけど、得られるのは自分でそれを使ってダイレクトにも頑張ればできる範囲だし 自分で頑張ればできるって話なら、ファイル結合なんだからcatでもできるよ? 自分で頑張ればいいだけ。結合されても大丈夫なようにコードを書く必要があるけどな その頑張るのが面倒だからツール使うんだろう? ちなみにsharなんていらない。だってこれ目的を満たすためのツールじゃないから 自分でcatで頑張る+圧縮もしたいなーって思った時にオプションで使えるかもしれないツール
931 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 10:47:00.38 .net] >>894 単一のファイルで何千行も書きたいの?
932 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 10:48:08.70 .net] ちなみにsharの問題は展開しないと使えないって所 ルータのような書き込み回数に制限があるシステムでは致命的
933 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 10:48:51.53 .net] あと展開のためのコマンドが入ってない可能性もあるしな ファイル結合するだけなら、外部のコマンドにも依存しない
934 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 12:29:11.73 .net] シェルスクリプトは実行可能なままファイル結合する必要性があんまりないってこと そんなのとかトランスパイルとかが必要になるJavaScriptを指して、クソだなって言われてるんじゃない?
935 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 14:24:18.43 .net] てゆうかそれ以前に、そんな長いプログラムをシェルスクリプトで書いちゃいかんやろ。 他の言語を使うべき。 JavaScriptくらい高級な言語ならアリだけど。
936 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 19:30:47.19 .net] ディレクトリ A の中のファイルを全部 ディレクトリ B の中の同名のファイルと diff を撮りたいんですけどどうすればいいですか xarg で1つの引き数を渡す方法しかわからないのでおねがいします
937 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 19:32:58.08 .net] diff -r A B でいいのでは?
938 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 20:29:52.99 .net] 少しはggるとかしてからここに恋や
939 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 21:00:07.83 .net] その前にmanすれ
940 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 21:33:29.76 .net] システムのスクリプトにも参考になるものがたくさんあるよね。zgrepとかzdiffとか linuxだけどlddがシェルスクリプトだったのには驚いた
941 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 21:51:54.45 .net] bashのHISTTIMEFORMATを設定した環境だと sshログアウトしてもbgプロセス消えないみたいなんだが なんでなん?
942 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 22:33:43.46 .net] 設定してなくてもsshログアウトしてもbgプロセス消えないけど、うちでは 他の設定じゃね
943 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/18(水) 23:31:51.58 .net] うーむ 会社の環境だとその設定の有無で変わったんだけど 今vmでcentのminimal立てたら設定なしにbgプロセス生きてた 何か勘違いしてるのか
944 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 00:16:48.11 .net] https://serverfault.com/questions/117152/do-background-processes-get-a-sighup-when-logging-off だって。ちょい昔からデフォで子プロセスに
945 名前:HUP送らなくなってるんだなあ。OSやディストリによってデフォが違うだろうけど huponexitオンにして、HISTTIMEFORMATを設定してもbgプロセスは消えるねえ [] [ここ壊れてます]
946 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 09:21:29.33 .net] case文で,Bash特有の高速化オプションとかありませんかね。
947 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 10:02:38.02 .net] >>910 高速化できるんならオプションじゃなく最初からそうしてると思うが、 さらに、高速化が必要なほど遅いcaee文とは?
948 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 10:34:16.62 .net] >>902 Aにあるファイル名だけ比較したいんです Bのなかにはほかにもファイルがあったりするので diff A/$f B/$f とか場合によっては diff A/$f B/*/$f みたいなことがしたかったのです… ls なり find なりの出力ファイル名を変数に取り出すのってやっぱり難しいんですね 諦めます レスありがとうございました
949 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 11:14:05.74 .net] お題としてはちょっと楽しめると思うけど、諦めちゃうのか
950 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 11:19:41.98 .net] find A -type fして、それぞれbasenameとって、find B -name filename -exec hogeってかんじかな。 B側で何度もfindするのを減らしたいけど、キャッシュされればそれほど負荷じゃないか。
951 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 12:11:39.09 .net] diffの話ついでに (GNU) diffでディレクトリごと比較したときに、一方のディレクトリにのみあるファイルを無視するオプションってある? diff -r /dirA /dirB | grep -v 'にのみ存在' とやればまあ大抵の場合解決するんだけども、たまたまあるファイルの変更箇所に「にのみ存在」っていう文があった時に 困るので、できればオプションで解決したい。
952 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 12:28:48.82 .net] LANG=Cで^Onlyにマッチさせてはじく
953 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 12:35:37.30 .net] diffの出力って行頭の文字が重要なのに、 これを無視した日本語ロケール作者は反省するべき。
954 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 12:53:00.49 .net] 結果に対してsedで…ってのはさすがに無駄だな
955 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 12:57:00.83 .net] >>916 ああなるほど。 diffの出力結果では行頭は変化を表わすところだから その行頭を除けばいいね。
956 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 15:19:36.24 .net] 詳しい解説サンクス
957 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/19(木) 20:13:49.97 .net] >>909 サンクス 俺の勘違いだったっぽい
958 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 01:50:52.37 .net] >>900 > てゆうかそれ以前に、そんな長いプログラムをシェルスクリプトで書いちゃいかんやろ。 行数で使う言語を決めるなや シェルスクリプトは、コマンドの連携処理を一番シンプルに書くことができる言語 シェルスクリプトが適している問題を、長いからという理由で他の言語を使うともっと長くなる なぜ非効率な言語を使うのか?
959 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 02:03:28.48 .net] はいはい
960 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 06:54:58.07 .net] この引用符…あっ(察し
961 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 07:21:43.92 .net] 引用符?
962 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 12:12:45.33 .net] >>922 まさにシェルスクリプトがプログラム間連携のための言語だからだよ。 1000行以上にも及ぶ複雑なプログラム間連携処理を シェルスクリプトで書く状況ってのは モジュール分割に失敗してる可能性がきわめて高い。 100行くらいの単体でも十分に使えるシェルスクリプトが10個ならば問題ないが。 シェルスクリプトは現代的プログラミング言語の持つ数々の抽象化機能を 欠いていて大規模プログラミングに向かないことは常に意識するべき。
963 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 16:50:00.03 .net] 仕事でならな。個人的なのでもそういう学習習得意欲がないんだったら馬の耳に念仏かと
964 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/20(金) 20:11:37.10 .net] ケンカはやめて(><)
965 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 02:15:31.20 .net] 二人をとめて \(^o^)/
966 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 02:44:08.71 .net] 私だ
967 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 09:20:03.54 .net] あえて不向き
968 名前:なことをやるのは好きだよ [] [ここ壊れてます]
969 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 13:29:23.62 .net] >>926 > 1000行以上にも及ぶ複雑なプログラム間連携処理を > シェルスクリプトで書く状況ってのは > モジュール分割に失敗してる可能性がきわめて高い。 だからシェルスクリプトでモジュール分割するんでしょ?
970 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 13:30:12.48 .net] >>931 外部コマンドの呼び出しが多数存在する場合、 シェルスクリプトを使うのが向いてる
971 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 15:15:10.19 .net] >>933 外部コマンド呼び出しは敗北と同義よ! 漢なら全て内蔵コマンドで処理をせい!
972 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 15:36:08.22 .net] >>932 できてるならそんな話題になってないな
973 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 16:05:41.70 .net] >>935 普通に . (source)を使用するだけだけど?
974 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 16:08:19.12 .net] >>934 内部コマンドだけで処理できるなら 普通の言語のほうが良いよ 外部コマンドの連携に強いシェルスクリプトは 外部コマンドを呼び出すために使うもの 逆に普通の言語だと外部コマンドの呼び出しは面倒なんだ。
975 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 16:16:33.64 .net] そろそろ板違い
976 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/21(土) 16:30:52.91 .net] >>936 そういうのもできてるなら話題になってないって言ってるんだけど できてるって、言語的にできるできないじゃないよ >>938 板違いってか本題から外れすぎだな
977 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/22(日) 19:37:39.33 .net] >>934 includeやimportも禁止な
978 名前:名無しさん@お腹いっぱい。 [2018/07/22(日) 22:44:37.34 .net] やっぱ次のスレからワッチョイ付きにしようね
979 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/22(日) 23:49:40.49 .net] >>939 だからモジュール分割は . で出来てるから話題になってないってことでしょ?
980 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 01:44:04.51 .net] この掲示板ってワッチョイないのでは… というかidもなかった
981 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 01:57:54.18 .net] 使えないのかもしかして
982 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 02:50:48.89 .net] 掲示板ごとの設定だからね
983 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 03:47:58.52 .net] じゃあもうこの板捨てるか? Linux板にでも移動すりゃいいでしょ
984 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 04:20:40.19 .net] ワンチャンある 最近精神年齢キッズが多すぎるしな
985 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 11:29:23.13 .net] test
986 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 11:56:50.52 .net] false
987 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 20:31:02.18 .net] >>946 OSの話じゃないから向こうでやってもいいかもね
988 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 20:36:06.85 .net] あっ、でも向こうだと動かすOSがLInux前提になってしまうのか
989 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 21:56:56.76 .net] プログラム板にすれば?
990 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 22:23:40.05 .net] するならそっちだな
991 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 22:28:36.47 .net] ム板に賛成する
992 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 22:46:21.28 .net] ム板にしましょう
993 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/23(月) 22:48:33.03 .net] バッチ、パワシェのスレがム板にあるから不自然じゃないよね
994 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 01:25:43.39 .net] 賛成だ しかしシェルスクリプトがunixにいられなくなるってのもなんかすごいな
995 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 01:37:47.14 .net] 俺も賛成だわ
996 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 01:43:21.92 .net] まあUnixもそれだけ多くの人に知られてきたってことじゃない? もちろんキチガイは不要だけども。
997 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 06:02:37.30 .net] テンプレは同じでいいな もし嫌ならそいつが新しいの考えろ
998 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 11:06:17.93 .net] とりあえず立てました。 テンプレを書き込もうとしたら長すぎと怒られたので、分割するついでにちょっと改変しました。 https://mevius.5ch.net/test/read.cgi/tech/1532397676/l50
999 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 11:25:29.69 .net] IDだけか? ワッチョイいれるんじゃないのか
1000 名前:961 mailto:sage [2018/07/24(火) 11:43:21.78 .net] >>962 実はワッチョイを提案したのは俺なんだけど あんまり賛同者がいないようだし 勝手にやるのもどうかなと思ったんだわ。 今はID板でやって それでも荒れるようであればワッチョイ付けるっていう方針でいいかなと思ってる
1001 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 11:51:50.17 .net] >>963 俺はワッチョイも含めて賛成してたけど、まぁそれでいいか ざっと厶板の他のスレみた感じワッチョイまで採用してるスレほとんどないみたいだし、あっちでもあまり使わない文化なのかもしれん
1002 名前:、どうなんだろ [] [ここ壊れてます]
1003 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 11:53:47.82 .net] ヘタレすぐる
1004 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 12:31:44.59 .net] プログラム板移動とか計画通りすぎるwww
1005 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 12:32:21.76 .net] どうせならIPアドレス表示まですればいいのに 攻撃してやんよ
1006 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 12:41:26.67 .net] プログラム板という修羅の国に移動か
1007 名前:961 mailto:sage [2018/07/24(火) 12:54:08.96 .net] プログラム板ってここと違って保守しなきゃいけないよね 誰かどのくらいで落ちるか分かる人います?
1008 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 12:54:54.13 .net] 20
1009 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 12:55:43.39 .net] あぁ時間か どうだったっけな、さすがに覚えてない 20レスすれば当面落ちないとだけしか
1010 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 13:29:33.13 .net] 先日lispスレ立てたけど、4レスのまま全然落ちる気配ないよ。
1011 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/24(火) 20:36:12.16 .net] >>963 その段階的なやり方で良いと思う スレ立て乙!!
1012 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 04:22:56.20 .net] UNIX板伝統のシェルスクスレもム板行きかあ UNIX板に限らず、専門板って過疎ってるところ多いから、統廃合してほしいな
1013 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 15:06:43.63 .net] シェルスクリプトはもはやUNIXだけのものじゃなくなったからなぁ。 クロスプラットフォームが当たり前になって、 OS別のマターというのもだいぶ限られてきたね。
1014 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 16:55:26.81 .net] UNIX板の中でシェルスクリプト総合スレが一番、というか唯一勢いがあるんだが、 これなくなると凄まじい限界集落になるな… Vim/Emacs/TeXあたりもソフトウエア板あたりなんか行ったら、もう…(´;ω;`)
1015 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 18:05:53.09 .net] せめてIDが出る板だったらよかったのにね…
1016 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 18:31:00.38 .net] まぁ言っても仕方ない 変わらない環境なんざないさ
1017 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 20:33:48.37 .net] WindowsではWSLでシェルスクリプトが動く だけどWSL環境なんだよなぁ Windows標準でbusyboxとか採用してくれればいいのに バッチファイルの代わりとして使えるんだが
1018 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 21:09:31.29 .net] >>979 どんなことにつかいたいの?
1019 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 21:12:51.81 .net] バッチの意味不明なsyntaxと貧相なコマンド類は発狂しそうになるけど、パワシェではいかんの? パワシェ使ったことないけど、さすがにまともに設計されてるんだろ
1020 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/25(水) 22:21:31.92 .net] PowerShellは、普段使いのシェルとしては使えない
1021 名前:名無しさん@お腹いっぱい。 [2018/07/25(水) 23:38:49.24 .net] Powershellは高機能なんだろうけど、高機能すぎて、あれこれ調べているうちに疲れた 結果として、Powershellの機能を呼び出すバッチファイルが出来上がってしまった
1022 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/26(木) 05:51:18.22 .net] >>980 WindowsでもLinuxでも動くスクリプトの作成 busyboxがあればシェルと基本的なコマンドは手に入るから あとは特定のアプリのWindowsバイナリ版を入れるだけで WindowsでもLinuxでもMacでも使えるスクリプトが作れる cygwinやmsysもあるけど、Windowsに標準搭載してほしい 最低限のことはできるようになる。 >>981 PowerShellはコマンド体型違うから
1023 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/27(金) 11:09:39.45 .net] >>984 太ってるの?
1024 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/27(金) 11:11:30.73 .net] >>984 cygwinのdllと起動batを持ち歩くといいよ どこでもsh動く
1025 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/07/27(金) 21:15:51.75 .net] >>986 いつのまにか感染してました、で会社をクビになるんですね。
1026 名前:名無しさん@お腹いっぱい。 [2018/08/01(水) 17:27:03.04 .net] >>986 Windows標準でbusyboxとか採用してって話なのに cygwinを持ち出されても、 そんなのが必要になるから、Windows標準で採用してって言ってるんだよ で終わる
1027 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 01:46:48.23 .net] >>988 SFU や WSL の流れからして、Busybox 相当の標準搭載も需要も無いと思いますよ。 必要ならば S
1028 名前:ysinternals 等の TechNet フォーラムに参加して要望を出してみては。 [] [ここ壊れてます]
1029 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 04:05:27.78 .net] >>989 需要がないのになんで次から次へと出てくるの?
1030 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 04:15:34.43 .net] もうすぐみんなとお別れなの(´;ω;`)
1031 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 05:22:46.59 .net] 次スレ シェルスクリプト総合 その28 https://mevius.5ch.net/test/read.cgi/unix/1533154936/
1032 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 06:31:33.06 .net] >>992 たぶん善意からだと思うが、すでに>>961 この板とはお別れ
1033 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 08:08:24.46 .net] 悪意だろ
1034 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 08:24:36.20 .net] そう先に思うのはお前自身が腐ってるからだろう
1035 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 09:08:24.13 .net] 埋め
1036 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 09:08:47.19 .net] 埋め
1037 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 09:09:28.02 .net] 次スレこちら https://mevius.5ch.net/test/read.cgi/tech/1532397676/
1038 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 09:09:44.23 .net] 埋め
1039 名前:名無しさん@お腹いっぱい。 mailto:sage [2018/08/02(木) 09:09:52.51 .net] お前らあばよ
1040 名前:1001 [Over 1000 Thread.net] このスレッドは1000を超えました。 新しいスレッドを立ててください。 life time: 90日 15時間 15分 29秒
1041 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています