Skip to main content

Easy file exclusive locking tool based on file rename

Project description

rename_lock

下の方に日本語の説明があります

Overview

  • Easy file exclusive locking tool based on file rename.

Usage

  • While you are in "WITH" area, the file is locked and cannot be edited by any other process.
  • While locked, the file will be renamed to "original_name_random_string.locked"
    • The name can be obtained with rlock.filename
import rename_lock

with rename_lock("./demo_file.txt") as rlock:
	# operation on locked file
	temp_filename = rlock.filename	# temporary file name
	with open(temp_filename, "w") as f:
		f.write("something")
  • About Unlocking

    • The lock is automatically unlocked when exiting "WITH" area.
    • Also, when using "WITH", it will automatically unlock when stopped due to an error or when stopped by ctrl+C.
    • However, there may be cases where the file is not unlocked, such as when the entire window is erased.
  • The following is how to write when not using "WITH".

rlock = rename_lock("./demo_file.txt")
print(rlock.filename)
rlock.unlock()

概要

  • 手軽なファイルの排他ロックツール
    • ファイルの名称変更を動作原理とする

使用例

  • 下記のように、with内にいる間ファイルの編集がロックされます
  • ロック中はファイルは「元の名前_ランダム文字列.locked」という名前に変更されます
    • その名前はrlock.filenameで取得できます
import rename_lock

with rename_lock("./demo_file.txt") as rlock:
	# lockしたファイルに対する操作を書く
	temp_filename = rlock.filename	# temporary file name
	with open(temp_filename, "w") as f:
		f.write("something")
  • ロック解除について

    • withを抜けると自動的にロック解除されます
    • また、エラーによる停止やctrl+Cによる停止時にも、withを使っている場合は自動的にロック解除されます
    • ただし、ウィンドウごと消した場合など、ロック解除されない場合もあります
  • 下記はwithを使わない場合の書き方です

rlock = rename_lock("./demo_file.txt")
print(rlock.filename)
rlock.unlock()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rename-lock-0.1.4.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

rename_lock-0.1.4-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file rename-lock-0.1.4.tar.gz.

File metadata

  • Download URL: rename-lock-0.1.4.tar.gz
  • Upload date:
  • Size: 3.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for rename-lock-0.1.4.tar.gz
Algorithm Hash digest
SHA256 b511703bde859eaa676ed00c6a4f4eee86ce1bbfba17e831ecae4707d9fd13b1
MD5 92396e019b77ddab0b327d92da540224
BLAKE2b-256 c203bccf3bdf568970d4829cb800ba6041e15d5f501c23f55a5b7e1284355835

See more details on using hashes here.

File details

Details for the file rename_lock-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: rename_lock-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.8

File hashes

Hashes for rename_lock-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 2e93682d24d841ed79fd965ef3506219a3142d3af445dbc534b17d502bd0f05f
MD5 fdd545c34bfe92d0ef5bc9df94a658b5
BLAKE2b-256 5935131d6a8fc181bbd3106f72439cd3c438e480e935aae6e93bc6657f78a192

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page