[過去ログ] シェルスクリプト総合 その27 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
64(1): 名無しさん@お腹いっぱい。 [sage] 2018/05/17(木) 13:23:11.51 AAS
>>6363(1): 57 [sage] 2018/05/17(木) 11:06:15.20 AAS
すいません。shoptで行けました。ほとんど修復できました。感謝します。
っていうか、バックアップから.bashrcを拾って戻せるようにしておきなよ
言われなくても百も承知だろうけど、バックアップは大事だよ
122: 名無しさん@お腹いっぱい。 [sage] 2018/05/24(木) 21:28:22.51 AAS
>>120120(3): 名無しさん@お腹いっぱい。 [sage] 2018/05/24(木) 20:05:30.06 AAS
$ cat a.file > b.file
とやるのと
$ cp a.file b.file
とやるので違いが生じる場合はありますか?
b.fileというディレクトリがあった場合の動作
146(1): 名無しさん@お腹いっぱい。 [sage] 2018/05/26(土) 12:01:23.51 AAS
>>145145(1): 133 [sage] 2018/05/26(土) 11:49:32.72 AAS
そういう場合はパイプって言わないんですか。失礼しました。
正規表現でつかう or の役割を hoge fuga の間には挟みたいのです。
>>136136(3): 名無しさん@お腹いっぱい。 [sage] 2018/05/26(土) 07:13:03.91 AAS
ごめん俺の理解が悪いと思うのだがあなたのやりたいことが見えない。
他の人にまかせるわ。
もしくはZZZ.txtの内容をプライバシーに障らない程度に具体的に教えてほしい。
「ZZZ.txtからgrepで取り出した値をパイプで連結して処理する」という文言からは
ZZZ.txtには命令が一行ずつ書かれているように受け取れるのだが、そうじゃないよね。
それとも「パイプで繋ぐ」というのはシェルのパイプ実行ではなく単に文字列としてパイプを区切りとして使うという意味?
もしそうなら
$ cat ZZZ.txt | grep XXX | tr '\n' '|' | sed 's/|$//1'
↑こういうので行けるけど。違うでしょ?
>$ cat ZZZ.txt | grep XXX | tr '\n' '|' | sed 's/|$//1'
>↑こういうので行けるけど。違うでしょ?
って教えてくれてるやん。「違わない」「それです」でいいんじゃないの?それが違うならどう違うって言うべきかと(どうみても違わないとしか思えないけど)
質問自体がアレだが自分の言いたいことをうまく説明できないのはいいとして、応えてくれてる人の言ってることがわからない/それに応えないのはアレだな
210(2): 名無しさん@お腹いっぱい。 [sage] 2018/06/06(水) 02:39:28.51 AAS
>>209209(2): 名無しさん@お腹いっぱい。 [sage] 2018/06/05(火) 22:21:32.15 AAS
curl -s "外部リンク:hage.com.json"| jq -r '.main | .detail_list[] | .file_list[] | .date, .file_title, .file_name'
これだと、date と file_title とfile_name の内容が表示されるんですが、
detail_listと同じ階層にあるnavi_nameの内容も表示させたい場合はどう書けばいいですか?
よろしくお願いします。
とくにこだわりがないのであれば jq じゃなく parsrj 使えば?
254(1): 名無しさん@お腹いっぱい。 [sage] 2018/06/07(木) 12:21:50.51 AAS
>>248248(3): 名無しさん@お腹いっぱい。 [sage] 2018/06/07(木) 02:03:34.31 AAS
>>212
for hoge in "$aaa" "$bbb" "$ccc"
"$aaa" "$bbb" "$ccc"は、最初のアイテムを示すだけ(888, 777, 666)で間違い
"${aaa[@]"が正しいもしくはとしたかったのだろうが、だったらforの機能的にも変数をArrayにする必要はないだろう。その記述以下でなんかするのでないなら
aaa/bbb/cccは単なる文字列として、for内で必要となったらArrayに分解すれば簡単に目的は達成するだろう
(てか、配列にするならaaa/bbb/cccなんて個々の変数じゃなくてそれこそそれを配列にすればいいのにと思うけど)
aaa="888 犬 `date +"%Y%m%d"010000 -d last-sunday`"
...
for fuga in "$aaa" "$bbb" "$ccc"
do
hoge=$($fuga)
if [ -e ~/${hoge[1]}_${hoge[2]:0:4}_${hoge[2]:4:2}_${hoge[2]:6:2}.mp4 ]; then
...
ありがとうございます。
実は他の方のレスを見て、関数というものを調べて
ある程度スッキリしたコードにできたのですが
当初自分の頭で考えていた>>212212(3): 名無しさん@お腹いっぱい。 [sage] 2018/06/06(水) 09:02:34.23 AAS
aaa=(888 犬 `date +"%Y%m%d"010000 -d last-sunday`)
bbb=(777 猫 `date +"%Y%m%d"150000 -d last-Saturday`)
ccc=(666 鳥 `date +"%Y%m%d"000000 -d last-friday`)
for hoge in "$aaa" "$bbb" "$ccc"
do
if [ -e ~/${hoge[1]}_${hoge[2]:0:4}_${hoge[2]:4:2}_${hoge[2]:6:2}.mp4 ]; then
exit 0
else
ffmpeg -i ~/output/${hoge[2]}-${hoge[0]}.aac ~/${hoge[1]}_${hoge[2]:0:4}_${hoge[2]:4:2}_${hoge[2]:6:2}.mp4
fi
done
こんな感じのスクリプト書いたのですが、配列が展開してくれません。
どうすれば変数に入れた配列が機能するでしょうか
アドバイスお願いします。
のようなコードがが動くようにご指摘いただけたのは
非常に助かりました。ありがとうございます。
290(2): 名無しさん@お腹いっぱい。 [sage] 2018/06/09(土) 00:06:32.51 AAS
今時、シェルスクリプトが使える環境でperlやpythonがデフォルトで入ってないOSの方が稀だろう。なんかここ最近のPOSIXと言えばいいというようなのはなんかアレだな
294: 名無しさん@お腹いっぱい。 [sage] 2018/06/09(土) 00:21:35.51 AAS
てゆうか問題に適した言語を組み合わせて問題を解くってのが
もともとのUNIXの思想だと思うので、
CSV扱うならCSVに向いた言語使う方がUNIX的だと思うのよね。
まあケースバイケースなんだけど。
415(1): 名無しさん@お腹いっぱい。 [sage] 2018/06/10(日) 22:29:15.51 AAS
>>411411(2): 名無しさん@お腹いっぱい。 [sage] 2018/06/10(日) 20:50:13.84 AAS
>>408
後処理のだぞ。そのデータ中の改行と行の区切りの区別をつけるために最初にータ中の改行を処理して、終わったらデータ中の改行を戻すって話だぞ?
少しは処理を想像そしてからなんか言ったら?すごい近視眼で明後日な文句言う前に
データ中の改行とデータの区切りの改行はどう区別するんだよ。
同じコードだろ。しかもCSVじゃないんだろ?""でくくられてないんだぜ。
483: 名無しさん@お腹いっぱい。 [sage] 2018/06/11(月) 02:57:45.51 AAS
>>482482(1): 名無しさん@お腹いっぱい。 [sage] 2018/06/11(月) 02:49:17.37 AAS
シェルスクリプトの話題なのにスレチってどういうこと?
俺はすべて分かってた。
ヒントだけ出してやったんだからありがたくいただけ。
これがスレ違い以外の何物だと...
665: 名無しさん@お腹いっぱい。 [sage] 2018/06/16(土) 21:30:02.51 AAS
>>662バッカこれはどっちも形容詞だよ
だからネタとして成立してんじゃん
701: 名無しさん@お腹いっぱい。 [sage] 2018/06/18(月) 10:13:14.51 AAS
PSOIXでいこう
738: 名無しさん@お腹いっぱい。 [sage] 2018/06/21(木) 09:45:45.51 AAS
bashの場合、インタラクティブでログインシェルでなければ.bashrcを読むはずだけど、それじゃ足らんの?
739: 名無しさん@お腹いっぱい。 [sage] 2018/06/21(木) 15:08:24.51 AAS
>>734734(1): 名無しさん@お腹いっぱい。 [] 2018/06/21(木) 06:34:26.14 AAS
>>733
#!/bin/sh
exec /bin/bash --init-file "$HOME"/.profile "$@"
こういうスクリプトを書く
ファイル名を mysh でホームに保存したとして、次のようにして script に使わせる
env SHELL="$HOME"/mysh script
ありがとうございます!
できました!
943: 名無しさん@お腹いっぱい。 [sage] 2018/07/23(月) 01:44:04.51 AAS
この掲示板ってワッチョイないのでは…
というかidもなかった
1000: 名無しさん@お腹いっぱい。 [sage] 2018/08/02(木) 09:09:52.51 AAS
お前らあばよ
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.048s