FND-CP-ESP: Child: exec:: No such file or directory error:不使



我正在使用SSH Tectia客户端。

我已经在shell脚本命令中创建了一个符号链接:
ln -s $FND_TOP/bin/fndcpesr  /app/gl/PROD/prod/per/12.0.0/bin/MOVEFILE

虽然这是创建一个符号链接。

I am getting a Error: FND-CP-ESP: Child: exec:: No such file or directory error

我知道这个错误可以通过dos2unix解决。但是这个命令在SSH Tectia中不起作用。是否有其他命令可以将shell脚本转换为unix ?

如果您在Windows中编辑脚本并使用错误的传输类型(在这种情况下应该是ASCII)的FTP工具传输它,则可能发生此问题。如果你用的是Filezilla你可以点击传输>传输类型在传输

之前选择ASCII

你是对的。这是在文件被转换为DOS文件格式时发生的。Unix只使用换行符(LF),而DOS同时使用回车符(CR)和换行符(LF)作为终止字符。

这个CR在Unix/Linux中变成了Ctrl M。因此,当您尝试执行shell脚本时,会得到这个错误:

避免这种情况的最好方法是将文件从Windows移到Unix系统。确保您使用FTP ASCII模式移动它。这可以确保文件根据操作系统自动转换。

据我所知你没有这个命令,所以你按照下面的方法来删除它。

  1. 在二进制模式下使用vi编辑器,使用下面的命令查找并替换该字符。

    %s/^M//g
    
  2. sed命令
  3. sed -e "s/^M//g" source_file > dest_file
    
  4. 使用Perl

    $perl -pe 's/^M//g' source_file > dest_file
    
  5. 使用tr

    tr -d 'r' < source_file > dest_file
    

相关内容

最新更新