运行 Shell 脚本时出现错误:警告:execve:没有此文件或目录

运行 Shell 脚本时出现错误:警告:execve:没有此文件或目录

我正在尝试运行以下脚本:

#!/bin/bash
set -e
python process_init.py
python process_global_variables.py
python process_strings.py
python process_skills.py
python process_music.py
python process_animations.py
python process_meshes.py
python process_sounds.py
python process_skins.py
python process_map_icons.py
python process_factions.py
python process_items.py
python process_scenes.py
python process_troops.py
python process_particle_sys.py
python process_scene_props.py
python process_tableau_materials.py
python process_presentations.py
python process_party_tmps.py
python process_parties.py
python process_quests.py
python process_info_pages.py
python process_scripts.py
python process_mission_tmps.py
python process_game_menus.py
python process_simple_triggers.py
python process_dialogs.py
python process_global_variables_unused.py
python process_postfx.py
rm *.pyc
echo
echo ______________________________
echo
echo Script processing has ended.
/bin/bash

我收到此错误:

警告:无法使用参数‘/home/lhossangren/source/build_module.sh’启动程序‘/home/lhossangren/source/build_module.sh’。

警告:execve:没有此文件或目录

我正在运行 OpenSUSE 15.1,并且拥有 Python 2.7.3 的 64 位和 32 位库。

编辑:此外,当我尝试通过命令行执行该文件时,我得到:

无效选项第 2 行:设置:-设置:用法:设置[-abefhkmnptuvxBCHP] [-o 选项名称] [--] [arg ...]
':[Errno 2] 没有这样的文件或目录 py
':[Errno 2] 没有这样的文件或目录 l_variables.py 等,对于脚本中列出的每个 .py 文件。

答案1

\r\n您可能在文件中使用了 Windows 行尾( ),因此内核无法找到解释器/bin/bash^M,bash 无法解析set -e^M等等。

任何像样的编辑器都可以修正行尾。否则你也可以使用tr

tr -d '\r' <build_module.sh >build_module_corrected.sh

相关内容