0

我有 Linux 脚本和两台不同的 Solaris 机器,一台是ISO-8859-1另一台UTF-8

当我使用它运行它时,UTF-8它工作正常,但使用 ISO 时出现错误:

我需要如何执行它。

如果我将我的脚本复制到 solaris 有 iso 并在那里执行它工作正常没有错误

我的执行代码:

using (var sftp = new Sftp())
{
  try
    {
      sftp.Connect(target.FullyQualifiedDomainName);
      sftp.Authenticate(target.UserName, crypto.TwoWayDecrypt(target.Password));
      sftp.Put(AssemblyDirectory + "\\Scripts\\solaris_perf_data.sh", "perf_data.sh", CopyMode.Copy);
    }
  finally
    {
      sftp.Close();
    }
}

ssh.Execute(chModCommand);

//error here 
result =   ssh.Execute(executeCommand).ToString();        

我得到的错误是:

copying script file and executing script on host Solaris 10 region settings 
(france). Error Message: System.IO.IOException: ./perf_data.sh[5]: 
TotSize==+utilisés,: numéro incorrect at Dart.Ssh.Ssh.Execute(String command, 
Object state) at   Virtustream.CAS.DataCollector.Library.DataCollectors.SolarisDataCollector.GetDat‌​a(Boolean 
isInventory, String subject, String executeCommand)
4

1 回答 1

0

要么您在脚本中编码了特定字符(通常在注释中:-D),要么您在您的机器上没有相同的权限

于 2012-11-23T13:42:29.710 回答