File tree Expand file tree Collapse file tree 2 files changed +29
-7
lines changed Expand file tree Collapse file tree 2 files changed +29
-7
lines changed Original file line number Diff line number Diff line change 2
2
# Copyright (c) 2022, KarjaKAK
3
3
# All rights reserved.
4
4
5
- import os
5
+ import os , sys
6
6
import stat
7
7
import subprocess as sp
8
8
import argparse
@@ -31,18 +31,40 @@ def _chkseq(self, seq: int):
31
31
Sequence mode checking
32
32
"""
33
33
34
- ck = [str (n ) for n in range (8 )]
34
+ ck = [str (n ) for n in range (1 , 8 )]
35
35
match seq :
36
36
case seq if not isinstance (seq , int ):
37
37
raise TypeError ("Must be integer!" )
38
+ case 0 :
39
+ warn = input (
40
+ "WARNING: file will be locked and any undesire behaviour may happen! [n/y] "
41
+ )
42
+ match warn .lower ():
43
+ case 'y' :
44
+ self .seq = 000
45
+ case _:
46
+ sys .exit ()
38
47
case seq if not len (str (seq )) == 3 :
39
48
raise ValueError (f"{ seq } is invalid!" )
40
49
case _:
41
50
for i in str (seq ):
42
51
if not i in ck :
43
- raise ValueError (
44
- f"{ i } is not permission sequence mode for file!"
45
- )
52
+ match i :
53
+ case '0' :
54
+ warn = input (
55
+ f"WARNING: file will be locked for some users and any undesire"
56
+ f" behaviour may happen! [n/y] "
57
+ )
58
+ match warn .lower ():
59
+ case 'y' :
60
+ self .seq = seq
61
+ break
62
+ case _:
63
+ sys .exit ()
64
+ case _:
65
+ raise ValueError (
66
+ f"{ i } is not permission sequence mode for file!"
67
+ )
46
68
else :
47
69
self .seq = seq
48
70
del ck
@@ -51,8 +73,8 @@ def changeperm(self, nums: int):
51
73
"""
52
74
File permission changer
53
75
"""
54
-
55
76
self ._chkseq (nums )
77
+
56
78
pnam = [
57
79
"chmod" ,
58
80
f"{ self .seq } " ,
Original file line number Diff line number Diff line change 1
1
[metadata]
2
2
name = filepmon-karjakak
3
- version = 0.1.0
3
+ version = 0.1.7
4
4
author = karjakak
5
5
author_email = kakkarja.github@gmail.com
6
6
description = File permission view and changer.
You can’t perform that action at this time.
0 commit comments