使用 mkdir 过程在 IFS 中创建一个目录 AS400/IBMi
Create a directory in IFS using mkdir procedure AS400/IBMi
我今天下午遇到了一个问题,我试图在 RPGLE 中使用 C 程序 mkdir 在 IFS 中创建不同的目录来做到这一点。
但是当我使用 worklnk 命令测试我的新文件夹是否存在时,出现以下错误 CPFA0A9,就像我的文件夹不存在一样,但我可以使用 IFS 工具添加新文件和文件夹。
你有什么想法吗?
问候 :)
fullpath = '//home/usr/' + %trim(£p1.pNomProduit);
If (not Ctrl_Dossier(fullpath));
// create folder
// owner authority 448 + group authority 56 + other people 7 = 511
result = mkdir(fullpath:S_IRWXU+S_IRWXG+S_IRWXO);
else;
result = rmdir(fullpath);
ENDIF;
我的 mkdir 程序:
D mkdir PR 10I 0 ExtProc('mkdir')
D path * Value options(*string)
D mode 10U 0 Value
@player1st 评论正确,应该是 '/home/usr/'
而不是 '//home/usr/'
还有 fullpath
的数据类型是什么?确实应该是 varchar()
,但如果长度固定,您需要在原型中包含 options(*TRIM)
。否则,目录名称包含尾随空格。
D mkdir PR 10I 0 ExtProc('mkdir')
D path * Value options(*trim:*string)
D mode
我今天下午遇到了一个问题,我试图在 RPGLE 中使用 C 程序 mkdir 在 IFS 中创建不同的目录来做到这一点。 但是当我使用 worklnk 命令测试我的新文件夹是否存在时,出现以下错误 CPFA0A9,就像我的文件夹不存在一样,但我可以使用 IFS 工具添加新文件和文件夹。
你有什么想法吗?
问候 :)
fullpath = '//home/usr/' + %trim(£p1.pNomProduit);
If (not Ctrl_Dossier(fullpath));
// create folder
// owner authority 448 + group authority 56 + other people 7 = 511
result = mkdir(fullpath:S_IRWXU+S_IRWXG+S_IRWXO);
else;
result = rmdir(fullpath);
ENDIF;
我的 mkdir 程序:
D mkdir PR 10I 0 ExtProc('mkdir')
D path * Value options(*string)
D mode 10U 0 Value
@player1st 评论正确,应该是 '/home/usr/'
而不是 '//home/usr/'
还有 fullpath
的数据类型是什么?确实应该是 varchar()
,但如果长度固定,您需要在原型中包含 options(*TRIM)
。否则,目录名称包含尾随空格。
D mkdir PR 10I 0 ExtProc('mkdir')
D path * Value options(*trim:*string)
D mode