Bashでプログラミング [転載禁止]©2ch.net (264レス)
1-

101: 2015/11/25(水)00:43 ID:cNzVYyHb(1) AAS
>>99
じゃあ、終わったら連絡しますね。
102
(1): 2015/11/25(水)15:14 ID:zaXwxH/w(1/2) AAS
>>72
> while (( i <= 3 )); do
>  echo pilaf
>  (( i++ ))
> done

((i++)) 【let i=++】と
((i+=1)) 【let i=i+1】と
i=$((i+1)) は
厳密には違う。

i=0; ((i++)); echo $? => 1
省7
103: 2015/11/25(水)15:20 ID:zaXwxH/w(2/2) AAS
よく見たらこの例はiが1から始まってるから大丈夫か。
104: ピラフ ◆9Jro6YFwm650 2015/11/25(水)23:57 ID:qKKURXkV(1) AAS
>>102
((φ(・Д´・ *)ホォホォ 勉強になります!!
105: ピラフ ◆9Jro6YFwm650 2016/01/01(金)01:37 ID:OSOvSqc1(1/3) AAS
AA省
106
(1): ピラフ ◆9Jro6YFwm650 2016/01/01(金)01:42 ID:OSOvSqc1(2/3) AAS
曜日の定数を自動生成しちゃう

for i in $(seq 0 6); do
 date -d "$i days" "+%A %w"
done | sort -k 2 | sed -e "s/ /=/" | sed -e "s/^/readonly /"
107
(1): ピラフ ◆9Jro6YFwm650 2016/01/01(金)01:43 ID:OSOvSqc1(3/3) AAS
>>106
結果がこれ
readonly Sunday=0
readonly Monday=1
readonly Tuesday=2
readonly Wednesday=3
readonly Thursday=4
readonly Friday=5
readonly Saturday=6
108: 2016/01/05(火)14:14 ID:tOHAFEvw(1) AAS
>>107

可読性はタイプ数よりも大切だってことが
よく分かるねw
109: 2016/01/05(火)19:46 ID:btsG67QP(1) AAS
bash使うなら曜日名は配列に格納しておいて入ってくる引数を添字として使えばいいんでないの?
110: 2016/02/06(土)12:04 ID:yPG1W7x/(1/3) AAS
PATH の中に空の : があると、カレントディレクトリがコマンドサーチパスに含まれてしまいますが、
環境変数が空であった等の理由により、空の : (ex /usr/local/sbin::/usr/local/bin など)が
パスに含まれてしまうことはよくあります。
カレントディレクトリがコマンドサーチパスに含まれるのはセキュリティーホールになりかねないので、
PATHに空の : が含まれないようにしたいのですが、よい方法はないでしょうか?
111: 2016/02/06(土)15:12 ID:OQYFu5/W(1) AAS
よくあるなんてことはない
112: 2016/02/06(土)15:34 ID:ToE+zhkT(1/2) AAS
変数が空なら何も入れないようにすればいいじゃないですか?
113: 2016/02/06(土)15:37 ID:ToE+zhkT(2/2) AAS
そもそもPATHに使われる環境変数が空であることはありえないはずなんだがね。
普通PATHに使われる変数には、定数として決め打ちのパスが代入されているはず。

なぜならば、空が入る可能性があるということは、
空以外の任意の文字列が入るということだろう?
であれば、環境変数に "./" が入ることがあるかもしれないし
"/malware/" という値が入るかもしれない。

カレントディレクトリだけを不正だって意味は無い。
114: 2016/02/06(土)17:53 ID:yPG1W7x/(2/3) AAS
>空であることはありえないはずなんだがね。

そうなんですか、現在の環境じゃインストール後、マニュアル操作で PATH をいじっていないので、
そういうもんだと思っていたのですが、何か問題があるようですね。
どこでそうなってるいるか調べてみます。
115: 110,114 2016/02/06(土)20:27 ID:yPG1W7x/(3/3) AAS
わかりました。

<アプリ名>_HOME=<アプリのインストールパス> # この <アプリ名>_HOME は関連ツールから参照される
PATH=$PATH:<アプリ名>_HOME/bin

みたいな記述で、最初の 「<アプリ名>_HOME」 のスペルが間違っていました。
このアプリをすぐ使っていれば気づいたはずですが、インストールした後ほかが忙しくて
ほったらかしにしていたので気づかなかったというオチです。
どうもお騒がせしました。
116: 2016/02/09(火)22:51 ID:1eA4ku59(1) AAS
配列の代入(複製)というのはどうやればできるのでしょうか。
117
(2): 2016/03/08(火)14:41 ID:ZfpEki75(1/2) AAS
x='123'
y=`date +%m | sed 's/^0//' `
z= expr $y "*" 1000 + $x
cat k-m | sed 's/PPP/$z/'
で ファイル k-mのPPP値を3123に変えたいのですが
$zではだめです。
どうしたらいいでしょう。
118
(1): 2016/03/08(火)14:48 ID:B0X8XFR+(1/3) AAS
>>117
読むのだるいからさ?
問題ない所までは省いて
問題があるところだけ書けよ
119: 2016/03/08(火)15:49 ID:ZfpEki75(2/2) AAS
すまん

echo 'port=PPP' > test
cat test
x=2
sed 's/PPP/'"$x"'/' test
は問題ない。

長いファイルではダメなのかな?
120
(1): 2016/03/08(火)17:54 ID:B0X8XFR+(2/3) AAS
cat test の意味は?
必要最小限にしないからわからんのよ。
testの中身の文字もさ、限界ギリギリまで減らしてみて
1-
あと 144 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.014s