简体   繁体   English

PermissionError: [Errno 13] 权限被拒绝和子进程错误

[英]PermissionError: [Errno 13] Permission denied and Subprocess error

    PermissionError                           Traceback (most recent call last)
<ipython-input-8-bab992cc7bb5> in <module>()
     67 
     68 if __name__ == "__main__":
---> 69     main()

/content/gdrive/My Drive/LORE/pyyadt.py in fit(df, class_name, columns, features_type, discrete, continuous, filename, path, sep, log)
     32     cmd = 'yadt/dTcmd -fd %s -fm %s -sep %s -d %s' % (
     33         data_filename, names_filename, sep, tree_filename)
---> 34     output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT)
     35     # cmd = r"dTcmd -fd %s -fm %s -sep '%s' -d %s" % (
     36     #     data_filename, names_filename, sep, tree_filename)

/usr/lib/python3.6/subprocess.py in check_output(timeout, *popenargs, **kwargs)
    354 
    355     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
--> 356                **kwargs).stdout
    357 
    358 

/usr/lib/python3.6/subprocess.py in run(input, timeout, check, *popenargs, **kwargs)
    421         kwargs['stdin'] = PIPE
    422 
--> 423     with Popen(*popenargs, **kwargs) as process:
    424         try:
    425             stdout, stderr = process.communicate(input, timeout=timeout)

/usr/lib/python3.6/subprocess.py in __init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, encoding, errors)
    727                                 c2pread, c2pwrite,
    728                                 errread, errwrite,
--> 729                                 restore_signals, start_new_session)
    730         except:
    731             # Cleanup if the child failed starting.

/usr/lib/python3.6/subprocess.py in _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, start_new_session)
   1362                         if errno_num == errno.ENOENT:
   1363                             err_msg += ': ' + repr(err_filename)
-> 1364                     raise child_exception_type(errno_num, err_msg, err_filename)
   1365                 raise child_exception_type(err_msg)
   1366 

PermissionError: [Errno 13] Permission denied: 'yadt/dTcmd'

I am unable to access the file and hence script not running.我无法访问该文件,因此脚本没有运行。 Tried different python versions as well in virtual envs.在虚拟环境中也尝试了不同的 python 版本。 Any help on this subprocess error?对此子流程错误有任何帮助吗?

The file 'dTcmd' have no extension.文件“dTcmd”没有扩展名。

Looks like you're trying to execute the file named yadt/dTcmd , but it's not marked executable.看起来您正在尝试执行名为yadt/dTcmd的文件,但它没有标记为可执行文件。 Add the execute permission (for all users) like this:添加执行权限(适用于所有用户),如下所示:

chmod a+x yadt/dTcmd

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM