EBS WebADI 存储过程增加参数
CREATE OR REPLACE FUNCTION CUX_EXEC_SQL (P_SQL IN VARCHAR2)
RETURN NUMBER
AS
L_CNT NUMBER;
BEGIN
EXECUTE IMMEDIATE P_SQL INTO L_CNT;
RETURN L_CNT;
EXCEPTION
WHEN OTHERS
THEN
RETURN 0;
END;
--DROP TABLE CUX_TABLES_COUNTER;
CREATE TABLE CUX_TABLES_COUNTER AS
SELECT 'SELECT COUNT(*) FROM ' || OWNER || '.' || OBJECT_NAME STRING_CNT, -1 CNT1, -1 CNT2
FROM DBA_OBJECTS X
WHERE 1=1
AND X.OWNER = 'BNE'
AND X.OBJECT_TYPE = 'TABLE'
AND X.OBJECT_NAME LIKE 'BNE%'
;
UPDATE CUX_TABLES_COUNTER
SET CNT1 = CUX_EXEC_SQL(STRING_CNT);
UPDATE CUX_TABLES_COUNTER
SET CNT2 = CUX_EXEC_SQL(STRING_CNT);
SELECT *
FROM CUX_TABLES_COUNTER
where 1=1
and cnt1 <> cnt2;
--SELECT COUNT(*) FROM BNE.BNE_ATTRIBUTES
--SELECT COUNT(*) FROM BNE.BNE_CONTENTS_B
--SELECT COUNT(*) FROM BNE.BNE_CONTENTS_TL
--SELECT COUNT(*) FROM BNE.BNE_INTEGRATORS_B
--SELECT COUNT(*) FROM BNE.BNE_INTEGRATORS_TL
--SELECT COUNT(*) FROM BNE.BNE_INTERFACES_B
--SELECT COUNT(*) FROM BNE.BNE_INTERFACES_TL
--SELECT COUNT(*) FROM BNE.BNE_INTERFACE_COLS_B
--SELECT COUNT(*) FROM BNE.BNE_INTERFACE_COLS_TL
--SELECT COUNT(*) FROM BNE.BNE_LAYOUTS_B
--SELECT COUNT(*) FROM BNE.BNE_LAYOUTS_TL
--SELECT COUNT(*) FROM BNE.BNE_LAYOUT_BLOCKS_B
--SELECT COUNT(*) FROM BNE.BNE_LAYOUT_BLOCKS_TL
--SELECT COUNT(*) FROM BNE.BNE_LAYOUT_COLS
--SELECT COUNT(*) FROM BNE.BNE_PARAM_LISTS_B
--SELECT COUNT(*) FROM BNE.BNE_PARAM_LISTS_TL
--SELECT COUNT(*) FROM BNE.BNE_PARAM_LIST_ITEMS
--SELECT COUNT(*) FROM BNE.BNE_SECURED_OBJECTS
--SELECT COUNT(*) FROM BNE.BNE_SECURITY_RULES
--webadi过程接口,原来有18个传入参数,在定义webadi属性字段时增加了5个不属于过程中参数的自定义字段,目前需要向过程中增加两个参数
--CUX_JOB_IMPORT_PKG.IMPORT_JOB INTERFACE_CODE LIKE CUXJIMP01
--将不属性过程参数的自定义字段向后推两个位置
UPDATE BNE_INTERFACE_COLS_B
SET SEQUENCE_NUM = SEQUENCE_NUM + 2,
DISPLAY_ORDER = DISPLAY_ORDER + 2
WHERE 1 = 1
AND SEQUENCE_NUM > 18
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1'
;
--INSERT PARAMETERS TO TABLE BNE_INTERFACE_COLS_B
INSERT INTO BNE_INTERFACE_COLS_B
SELECT
APPLICATION_ID, INTERFACE_CODE, OBJECT_VERSION_NUMBER, 19 SEQUENCE_NUM, INTERFACE_COL_TYPE, 'P_ALTERNATE_BOM_DESIGNATOR' INTERFACE_COL_NAME, ENABLED_FLAG, REQUIRED_FLAG, DISPLAY_FLAG, READ_ONLY_FLAG, NOT_NULL_FLAG, SUMMARY_FLAG, MAPPING_ENABLED_FLAG, DATA_TYPE, FIELD_SIZE, DEFAULT_TYPE, DEFAULT_VALUE, SEGMENT_NUMBER, GROUP_NAME, OA_FLEX_CODE, OA_CONCAT_FLEX, VAL_TYPE, VAL_ID_COL, VAL_MEAN_COL, VAL_DESC_COL, VAL_OBJ_NAME, VAL_ADDL_W_C, VAL_COMPONENT_APP_ID, VAL_COMPONENT_CODE, OA_FLEX_NUM, OA_FLEX_APPLICATION_ID, 19 DISPLAY_ORDER, 19 UPLOAD_PARAM_LIST_ITEM_NUM, EXPANDED_SQL_QUERY, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, LOV_TYPE, OFFLINE_LOV_ENABLED_FLAG, VARIABLE_DATA_TYPE_CLASS, VAL_QUERY_APP_ID, VAL_QUERY_CODE, EXPANDED_SQL_QUERY_APP_ID, EXPANDED_SQL_QUERY_CODE, VIEWER_GROUP, EDIT_TYPE, DISPLAY_WIDTH, ZD_EDITION_NAME
FROM BNE_INTERFACE_COLS_B
WHERE 1 = 1
AND INTERFACE_COL_NAME = 'P_COMMENTS'
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1';
INSERT INTO BNE_INTERFACE_COLS_B
SELECT
APPLICATION_ID, INTERFACE_CODE, OBJECT_VERSION_NUMBER, 20 SEQUENCE_NUM, INTERFACE_COL_TYPE, 'P_ALTERNATE_ROUTING_DESIGNATOR' INTERFACE_COL_NAME, ENABLED_FLAG, REQUIRED_FLAG, DISPLAY_FLAG, READ_ONLY_FLAG, NOT_NULL_FLAG, SUMMARY_FLAG, MAPPING_ENABLED_FLAG, DATA_TYPE, FIELD_SIZE, DEFAULT_TYPE, DEFAULT_VALUE, SEGMENT_NUMBER, GROUP_NAME, OA_FLEX_CODE, OA_CONCAT_FLEX, VAL_TYPE, VAL_ID_COL, VAL_MEAN_COL, VAL_DESC_COL, VAL_OBJ_NAME, VAL_ADDL_W_C, VAL_COMPONENT_APP_ID, VAL_COMPONENT_CODE, OA_FLEX_NUM, OA_FLEX_APPLICATION_ID, 20 DISPLAY_ORDER, 20 UPLOAD_PARAM_LIST_ITEM_NUM, EXPANDED_SQL_QUERY, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, LOV_TYPE, OFFLINE_LOV_ENABLED_FLAG, VARIABLE_DATA_TYPE_CLASS, VAL_QUERY_APP_ID, VAL_QUERY_CODE, EXPANDED_SQL_QUERY_APP_ID, EXPANDED_SQL_QUERY_CODE, VIEWER_GROUP, EDIT_TYPE, DISPLAY_WIDTH, ZD_EDITION_NAME
FROM BNE_INTERFACE_COLS_B
WHERE 1 = 1
AND INTERFACE_COL_NAME = 'P_COMMENTS'
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1';
--将不属性过程参数的自定义字段向后推两个位置
UPDATE BNE_INTERFACE_COLS_TL
SET SEQUENCE_NUM = SEQUENCE_NUM + 2
WHERE 1 = 1
AND SEQUENCE_NUM > 18
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1'
;
--INSERT PARAMETERS TO TABLE BNE_INTERFACE_COLS_TL
INSERT INTO BNE_INTERFACE_COLS_TL
SELECT
APPLICATION_ID, INTERFACE_CODE, 19 SEQUENCE_NUM, LANGUAGE, SOURCE_LANG, USER_HINT, 'ALTERNATE_BOM_DESIGNATOR' PROMPT_LEFT, USER_HELP_TEXT, '清单替代项' PROMPT_ABOVE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, ZD_EDITION_NAME
FROM BNE_INTERFACE_COLS_TL
WHERE 1 = 1
AND PROMPT_LEFT = 'COMMENTS'
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1'
;
INSERT INTO BNE_INTERFACE_COLS_TL
SELECT
APPLICATION_ID, INTERFACE_CODE, 20 SEQUENCE_NUM, LANGUAGE, SOURCE_LANG, USER_HINT, 'ALTERNATE_ROUTING_DESIGNATOR' PROMPT_LEFT, USER_HELP_TEXT, '工艺替代项' PROMPT_ABOVE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, ZD_EDITION_NAME
FROM BNE_INTERFACE_COLS_TL
WHERE 1 = 1
AND PROMPT_LEFT = 'COMMENTS'
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1'
;
--INSERT PARAMETERS TO TABLE BNE_ATTRIBUTES
INSERT INTO BNE_ATTRIBUTES
SELECT
APPLICATION_ID, 'CUXJIMP01_XINTG_UPL1_A19' ATTRIBUTE_CODE, OBJECT_VERSION_NUMBER, 'P_ALTERNATE_BOM_DESIGNATOR' ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, ATTRIBUTE6, ATTRIBUTE7, ATTRIBUTE8, ATTRIBUTE9, ATTRIBUTE10, ATTRIBUTE11, ATTRIBUTE12, ATTRIBUTE13, ATTRIBUTE14, ATTRIBUTE15, ATTRIBUTE16, ATTRIBUTE17, ATTRIBUTE18, ATTRIBUTE19, ATTRIBUTE20, ATTRIBUTE21, ATTRIBUTE22, ATTRIBUTE23, ATTRIBUTE24, ATTRIBUTE25, ATTRIBUTE26, ATTRIBUTE27, ATTRIBUTE28, ATTRIBUTE29, ATTRIBUTE30, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_LOGIN, ATTRIBUTE_NAME1, ATTRIBUTE_NAME2, ATTRIBUTE_NAME3, ATTRIBUTE_NAME4, ATTRIBUTE_NAME5, ATTRIBUTE_NAME6, ATTRIBUTE_NAME7, ATTRIBUTE_NAME8, ATTRIBUTE_NAME9, ATTRIBUTE_NAME10, ATTRIBUTE_NAME11, ATTRIBUTE_NAME12, ATTRIBUTE_NAME13, ATTRIBUTE_NAME14, ATTRIBUTE_NAME15, ATTRIBUTE_NAME16, ATTRIBUTE_NAME17, ATTRIBUTE_NAME18, ATTRIBUTE_NAME19, ATTRIBUTE_NAME20, ATTRIBUTE_NAME21, ATTRIBUTE_NAME22, ATTRIBUTE_NAME23, ATTRIBUTE_NAME24, ATTRIBUTE_NAME25, ATTRIBUTE_NAME26, ATTRIBUTE_NAME27, ATTRIBUTE_NAME28, ATTRIBUTE_NAME29, ATTRIBUTE_NAME30, ZD_EDITION_NAME
FROM BNE_ATTRIBUTES
WHERE 1 = 1
AND ATTRIBUTE1 = 'P_COMMENTS'
AND ATTRIBUTE_CODE LIKE 'CUXJIMP01_XINTG_UPL1_A%'
ORDER BY TO_NUMBER (REPLACE (ATTRIBUTE_CODE, 'CUXJIMP01_XINTG_UPL1_A', ''));
INSERT INTO BNE_ATTRIBUTES
SELECT
APPLICATION_ID, 'CUXJIMP01_XINTG_UPL1_A20' ATTRIBUTE_CODE, OBJECT_VERSION_NUMBER, 'P_ALTERNATE_ROUTING_DESIGNATOR' ATTRIBUTE1, ATTRIBUTE2, ATTRIBUTE3, ATTRIBUTE4, ATTRIBUTE5, ATTRIBUTE6, ATTRIBUTE7, ATTRIBUTE8, ATTRIBUTE9, ATTRIBUTE10, ATTRIBUTE11, ATTRIBUTE12, ATTRIBUTE13, ATTRIBUTE14, ATTRIBUTE15, ATTRIBUTE16, ATTRIBUTE17, ATTRIBUTE18, ATTRIBUTE19, ATTRIBUTE20, ATTRIBUTE21, ATTRIBUTE22, ATTRIBUTE23, ATTRIBUTE24, ATTRIBUTE25, ATTRIBUTE26, ATTRIBUTE27, ATTRIBUTE28, ATTRIBUTE29, ATTRIBUTE30, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_LOGIN, ATTRIBUTE_NAME1, ATTRIBUTE_NAME2, ATTRIBUTE_NAME3, ATTRIBUTE_NAME4, ATTRIBUTE_NAME5, ATTRIBUTE_NAME6, ATTRIBUTE_NAME7, ATTRIBUTE_NAME8, ATTRIBUTE_NAME9, ATTRIBUTE_NAME10, ATTRIBUTE_NAME11, ATTRIBUTE_NAME12, ATTRIBUTE_NAME13, ATTRIBUTE_NAME14, ATTRIBUTE_NAME15, ATTRIBUTE_NAME16, ATTRIBUTE_NAME17, ATTRIBUTE_NAME18, ATTRIBUTE_NAME19, ATTRIBUTE_NAME20, ATTRIBUTE_NAME21, ATTRIBUTE_NAME22, ATTRIBUTE_NAME23, ATTRIBUTE_NAME24, ATTRIBUTE_NAME25, ATTRIBUTE_NAME26, ATTRIBUTE_NAME27, ATTRIBUTE_NAME28, ATTRIBUTE_NAME29, ATTRIBUTE_NAME30, ZD_EDITION_NAME
FROM BNE_ATTRIBUTES
WHERE 1 = 1
AND ATTRIBUTE1 = 'P_COMMENTS'
AND ATTRIBUTE_CODE LIKE 'CUXJIMP01_XINTG_UPL1_A%'
ORDER BY TO_NUMBER (REPLACE (ATTRIBUTE_CODE, 'CUXJIMP01_XINTG_UPL1_A', ''));
--INSERT PARAMETERS TO TABLE BNE_PARAM_LIST_ITEMS
INSERT INTO BNE_PARAM_LIST_ITEMS
SELECT
APPLICATION_ID, PARAM_LIST_CODE, 19 SEQUENCE_NUM, OBJECT_VERSION_NUMBER, PARAM_DEFN_APP_ID, PARAM_DEFN_CODE, 'P_ALTERNATE_BOM_DESIGNATOR' PARAM_NAME, ATTRIBUTE_APP_ID, 'CUXJIMP01_XINTG_UPL1_A19' ATTRIBUTE_CODE, STRING_VALUE, DATE_VALUE, NUMBER_VALUE, BOOLEAN_VALUE_FLAG, FORMULA_VALUE, DESC_VALUE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_LOGIN, ZD_EDITION_NAME
FROM BNE_PARAM_LIST_ITEMS
WHERE 1 = 1
AND PARAM_NAME = 'P_COMMENTS'
AND PARAM_LIST_CODE LIKE 'CUXJIMP01_XINTG_UPL1%';
INSERT INTO BNE_PARAM_LIST_ITEMS
SELECT
APPLICATION_ID, PARAM_LIST_CODE, 20 SEQUENCE_NUM, OBJECT_VERSION_NUMBER, PARAM_DEFN_APP_ID, PARAM_DEFN_CODE, 'P_ALTERNATE_ROUTING_DESIGNATOR' PARAM_NAME, ATTRIBUTE_APP_ID, 'CUXJIMP01_XINTG_UPL1_A20' ATTRIBUTE_CODE, STRING_VALUE, DATE_VALUE, NUMBER_VALUE, BOOLEAN_VALUE_FLAG, FORMULA_VALUE, DESC_VALUE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_DATE, LAST_UPDATE_LOGIN, ZD_EDITION_NAME
FROM BNE_PARAM_LIST_ITEMS
WHERE 1 = 1
AND PARAM_NAME = 'P_COMMENTS'
AND PARAM_LIST_CODE LIKE 'CUXJIMP01_XINTG_UPL1%';
--INSERT PARAMETERS TO TABLE BNE_LAYOUT_COLS
INSERT INTO BNE_LAYOUT_COLS
SELECT
APPLICATION_ID, LAYOUT_CODE, BLOCK_ID, OBJECT_VERSION_NUMBER, INTERFACE_APP_ID, INTERFACE_CODE, 19 INTERFACE_SEQ_NUM, 190 SEQUENCE_NUM, STYLE, STYLE_CLASS, HINT_STYLE, HINT_STYLE_CLASS, PROMPT_STYLE, PROMPT_STYLE_CLASS, DEFAULT_TYPE, DEFAULT_VALUE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, DISPLAY_WIDTH, READ_ONLY_FLAG, ZD_EDITION_NAME
FROM BNE_LAYOUT_COLS
WHERE 1 = 1
AND INTERFACE_SEQ_NUM = 18
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1';
INSERT INTO BNE_LAYOUT_COLS
SELECT
APPLICATION_ID, LAYOUT_CODE, BLOCK_ID, OBJECT_VERSION_NUMBER, INTERFACE_APP_ID, INTERFACE_CODE, 20 INTERFACE_SEQ_NUM, 200 SEQUENCE_NUM, STYLE, STYLE_CLASS, HINT_STYLE, HINT_STYLE_CLASS, PROMPT_STYLE, PROMPT_STYLE_CLASS, DEFAULT_TYPE, DEFAULT_VALUE, CREATED_BY, CREATION_DATE, LAST_UPDATED_BY, LAST_UPDATE_LOGIN, LAST_UPDATE_DATE, DISPLAY_WIDTH, READ_ONLY_FLAG, ZD_EDITION_NAME
FROM BNE_LAYOUT_COLS
WHERE 1 = 1
AND INTERFACE_SEQ_NUM = 18
AND INTERFACE_CODE = 'CUXJIMP01_XINTG_INTF1';
--做完以上脚本处理,还是要动桌面集成管理器职责,到界面上更新一下集成器接口功能,并更一下布局,目的是将后台的数据和前台粘合初始化。
--alter session set nls_language='SIMPLIFIED CHINESE';
--alter session set nls_language='AMERICAN';
SELECT bni.application_id
, bni.integrator_code --集成器code
, bni.user_name --集成器名称
, blv.layout_code --布局代码
, blv.user_name --布局用户名称
, blc.sequence_num
, bic.*
FROM bne_integrators_vl bni
, bne_layouts_vl blv
, bne_layout_cols blc
, bne_interface_cols_vl bic
WHERE bni.user_name LIKE 'CUXJIMP01%'
AND blv.integrator_app_id = bni.application_id
AND blv.integrator_code = bni.integrator_code
AND blv.layout_code = blc.layout_code
AND blc.interface_app_id = bic.application_id
AND blc.interface_code = bic.interface_code
AND blc.interface_seq_num = bic.sequence_num;
EBS WebADI 存储过程增加参数的更多相关文章
- SQL SERVER使用ODBC 驱动建立的链接服务器调用存储过程时参数不能为NULL值
我们知道SQL SERVER建立链接服务器(Linked Server)可以选择的驱动程序非常多,最近发现使用ODBC 的 Microsoft OLE DB 驱动程序建立的链接服务器(Linked S ...
- PB中用oracle的存储过程返回记录集做数据源来生成数据窗口,PB会找不到此存储过程及不能正常识别存储过程的参数问题(转)
(转)在PB中用oracle的存储过程返回记录集做数据源来生成数据窗口 首先oracle的存储过程写法与MSSQL不一样,差别比较大. 如果是返回数据集的存储过程则需要利用oracle的包来定义游标. ...
- sql 解析字符串添加到临时表中 sql存储过程in 参数输入
sql 解析字符串添加到临时表中 sql存储过程in 参数输入 解决方法 把字符串解析 添加到 临时表中 SELECT * into #临时表 FROM dbo.Func_SplitOneCol ...
- Sql2008中使用DataTable作为存储过程的参数
使用DataTable作为存储过程的参数 最近工作中写了几个存储过 程,需要向存储过程中传递字符串,因为SQL Server 2000中没有内置类似于 split 的函数,只好自己处理,将前台数据 ...
- EBS系统启动&停止&增加表空间&替换首页图片
EBS系统启动&停止&增加表空间&替换首页图片 数据库启动 使用oraprod账号登陆 [root@htdb data]# su oraprod [oraprod@htdb d ...
- SQL得到任意一个存储过程的参数列表sp_procedure_params_rowset
SQL得到任意一个存储过程的参数列表sp_procedure_params_rowsetexec sp_procedure_params_rowset 'up_rpt营业收入汇总表' PROCEDUR ...
- MySQL 存储过程传参数实现where id in(1,2,3,...)示例
一个MySQL 存储过程传参数的问题想实现例如筛选条件为:where id in(1,2,3,...),下面有个不错的示例,感兴趣的朋友可以参考下 正常写法: ,,,,...); 当在写存储过程 ...
- 使用Typescript重构axios(十二)——增加参数
0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...
- EBS WEBADI导入日记账 客户化账户组合规则校验
近期项目需求对EBS中WEBADI导入日记账时,在加载数据时需要对账户组合额外进行客户化的校验,需要能够做到将校验结果体现在WEBADI模板的数据上,并且对每条错误数据都单独报错. 项目上的方案是调整 ...
随机推荐
- 查看当前的app运行的是哪个Activity
1.确认手机连接了adb-->检查方式:adb devices 2.手机运行任意app,随意进入一个页面 3.此时cmd运行:adb shell "dumpsys window | g ...
- BZOJ3772 精神污染 主席树 dfs序
欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ3772 题意概括 给出一个树,共n个节点. 有m条互不相同的树上路径. 现在让你随机选择2条路径,问 ...
- 关于ACtion类利用file类型取得上传文件的内容,名字和内容类型
上面的Action提供了两个属性:uploadFileName和uploadContentType,这个两个属性分别用于封转上传文件的文件名.上传文件的文件类型.Action类直接通过File类型属性 ...
- Linux下C语言的进程控制编程
代码: #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <sys/ty ...
- python2.7安装和uwsgi
python2.7安装和uwsgi tar zxf Python-2.7.13xxxx# 这里,必须用–enable-shared,生成动态库,否则会遇到wsgi不能编译的问题. Bonus: mul ...
- Kafka命令行操作及常用API
一.Kafka命令行操作 1.查看当前集群已存在的主题 bin/kafka-topic.sh --zookeeper hd09-01:2181 --list 2.创建主题 bin/kafka-topi ...
- 动态规划状态压缩-poj1143
题目链接:http://poj.org/problem?id=1143 题目描述: 代码实现: #include <iostream> #include <string.h> ...
- MongDB-高级
No1: 聚合 聚合(aggregate)主要用于计算数据,类似sql中的sum().avg() ---语法 db.集合名称.aggregate([{管道:{表达式}}]) No2: 管道 管道在Un ...
- python3 在 windows 读取路径多了一个\u202a 是咋回
python3 在 windows 读取路径多了一个\u202a 是咋回事
- Python Pexpect库的简单使用
Python Pexpect库的使用 简介 最近需要远程操作一个服务器并执行该服务器上的一个python脚本,查到可以使用Pexpect这个库.记录一下. 什么是Pexpect?Pexpect能够产生 ...