Skip to content

Commit a7aacbc

Browse files
committed
feat: windows 文件名字符
1 parent 7f105a5 commit a7aacbc

File tree

2 files changed

+28
-2
lines changed

2 files changed

+28
-2
lines changed

Mac/JumpServer.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@
2222
"token": "xxx", // 认证 授权
2323
"config": "full address:s:rdjumpserver.fit2cloud.com:33390"
2424
}
25+
26+
在Windows系统中,文件名命名规则如下:
27+
  1)文件名最长可以使用255个字符;
28+
  2)可以使用扩展名,扩展名用来表示文件类型,也可以使用多间隔符的扩展名(如win.ini.txt是一个合法的文件名,但其文件类型由最后一个扩展名决定);
29+
  3)文件名中允许使用空格,但不允许使用下列字符(英文输入法状态):< > / \ | : " * ?;
30+
  4)windows系统对文件名中字母的大小写在显示时有不同,但在使用时不区分大小写.
2531
'''
2632
BASE_DIR = os.path.dirname(__file__)
2733

@@ -35,10 +41,17 @@ def remove_current_rdp_file():
3541

3642
class Rouse(object):
3743
def __init__(self, data):
38-
self.filename = data.get('filename', 'jms')
44+
self.filename = self.get_filename(data)
3945
self.protocol = data['protocol']
4046
self.config = data['config']
4147

48+
@staticmethod
49+
def get_filename(data):
50+
filename = data.get('filename', 'jms')
51+
if platform.system().lower() == 'windows':
52+
filename = re.sub(r'[<>/\\|:"*?]*', '', filename)
53+
return filename
54+
4255
def handle_ssh(self):
4356
pass
4457

Windows/JumpServer.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@
2222
"token": "xxx", // 认证 授权
2323
"config": "full address:s:rdjumpserver.fit2cloud.com:33390"
2424
}
25+
26+
在Windows系统中,文件名命名规则如下:
27+
  1)文件名最长可以使用255个字符;
28+
  2)可以使用扩展名,扩展名用来表示文件类型,也可以使用多间隔符的扩展名(如win.ini.txt是一个合法的文件名,但其文件类型由最后一个扩展名决定);
29+
  3)文件名中允许使用空格,但不允许使用下列字符(英文输入法状态):< > / \ | : " * ?;
30+
  4)windows系统对文件名中字母的大小写在显示时有不同,但在使用时不区分大小写.
2531
'''
2632
BASE_DIR = os.path.dirname(__file__)
2733

@@ -35,10 +41,17 @@ def remove_current_rdp_file():
3541

3642
class Rouse(object):
3743
def __init__(self, data):
38-
self.filename = data.get('filename', 'jms')
44+
self.filename = self.get_filename(data)
3945
self.protocol = data['protocol']
4046
self.config = data['config']
4147

48+
@staticmethod
49+
def get_filename(data):
50+
filename = data.get('filename', 'jms')
51+
if platform.system().lower() == 'windows':
52+
filename = re.sub(r'[<>/\\|:"*?]*', '', filename)
53+
return filename
54+
4255
def handle_ssh(self):
4356
pass
4457

0 commit comments

Comments
 (0)