[過去ログ] シェルスクリプト総合 その28 (620レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
26(1): 名無しさん@お腹いっぱい。 [sage] 2018/08/27(月) 14:36:33.24 AAS
>>2424(1): 名無しさん@お腹いっぱい。 [] 2018/08/27(月) 14:07:03.57 AAS
>>22
ファイルがオープンされているかを調べれば良いと思う
どうやるのかな
lsof が使えるなら
lsof -a -c '/^wget$/' "${filename}"
ありがとうございます
試してみたいと思いますが
lsof でチェックしてオープンされていないと判断して継続のwgetがオープンする間に
並行して実行された処理でwgetがオープンしてしまう可能性があるので・・・
シェルでやるには難しい処理でしょうか?
31: 名無しさん@お腹いっぱい。 [] 2018/08/28(火) 15:25:38.94 AAS
>>26
ファイルに対応する「ロックファイル」を作って、その存在確認をするのが定石だったみたい
既にロックファイルが存在していたら、別のプロセスがファイルを使っていると見做す
その際ロックファイルの存在確認と作成を「同時」(アトミック)に行うのが大事だそうで
そのファイル、安全にロックできていますか?(アトミックなファイル操作:後編)
外部リンク[html]:heartbeats.jp
こんな感じかな
lockfile="${outputfile}".lock
if ln -s -- $$ "${lockfile}" 2>/dev/null; then
(
unlock() { rm -- "${lockfile}"; }
trap "unlock" EXIT HUP INT QUIT SEGV TERM
wget -c -O "${outputfile}" "${url}"
) &
fi
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 1.200s*