修改SendGoogleForm脚本v2

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改SendGoogleForm脚本v2相关的知识,希望对你有一定的参考价值。

我正在尝试使我的SendGoogleForm脚本正常工作。我目前遇到的问题是,我通过表单发送的消息包括一个Powershell脚本,我的问题是发送服务中断了代码中的行,这意味着我必须手动删除所有多余的空格(请参见底部的示例。)>

因此,我认为必须有一种方法可以将Powershell代码打印到文件中,然后将其附加到已发送的电子邮件中,或者以其他方式解决空格问题。如果答案仍像今天一样显示在常规电子邮件中,但是以某种方式附加了powershell代码,那就很好了。

/* Send Google Form by Email v2.1 */
/* For customization, contact the developer at amit@labnol.org */
/* Tutorial: http://www.labnol.org/?p=20884 */

function Initialize() 

  var triggers = ScriptApp.getProjectTriggers();

  for(var i in triggers) 
    ScriptApp.deleteTrigger(triggers[i]);
  

  ScriptApp.newTrigger("SendGoogleForm")
  .forSpreadsheet(SpreadsheetApp.getActiveSpreadsheet())
  .onFormSubmit()
  .create();



function SendGoogleForm(e) 
  
  try 
        
    //Här fyller du i mailadresserna för resp avdelning.
    var it = "test@test.se";

    //Ärende på mailet
    var subject = "testt Ny/redigerad anställning";  

    //Slår ihop alla mailadresser till en.
    var email = hr +","+ security +","+ it;

    //andra variabler
    var bukowskis = "test";
    var temporarypass = "Provide a Temporary Password for this user";
    var semicolon = ";";

    // You may replace this with another email address
    //var email = Session.getActiveUser().getEmail();

    var s = SpreadsheetApp.getActiveSheet();
    var columns = s.getRange(1,1,1,s.getLastColumn()).getValues()[0];    
    var message = "";    

    // Only include form fields that are not blank
    for ( var keys in columns ) 
      var key = columns[keys];
      if ( e.namedValues[key] && (e.namedValues[key] != "") ) 
        message += key + ' :: '+ e.namedValues[key] + "\n\n"; 
      
      if (key == "Förnamn")
            var fornamn = e.namedValues[key];
        else if (key == "Efternamn")
            var efternamn = e.namedValues[key];
        else if (key == "Placering")
            var placering = e.namedValues[key];
        else if (key == "Titel")
            var titel = e.namedValues[key];
        else if (key == "Avdelning")
            var avdelning = e.namedValues[key];
    

    //Lägger till eventuellt namn i ämnesraden.
 if(typeof fornamn !== 'undefined'&&typeof efternamn !== 'undefined')
    subject += ", " + fornamn + " " + efternamn ;
    message +="New-ADUser -SamAccountName '"+fornamn+"."+efternamn+"' -Name '"+fornamn+" "+efternamn+"' -GivenName '"+fornamn+"' -Surname '"+efternamn+"' -Description '"+test+", "+avdelning+", "+titel+"' -OfficePhone ' ' -EmailAddress '"+fornamn+"."+efternamn+"@test.com' -Path 'OU=Users,OU=test,DC=intern,DC=test,DC=se' -Company 'test' -Department '"+avdelning+"' -Title '"+titel+"' "+semicolon+"$NewPassword = (Read-Host -Prompt '"+temporarypass+"' -AsSecureString) "+semicolon+"Set-ADAccountPassword -Identity '"+fornamn+"."+efternamn+"' -NewPassword $NewPassword -Reset "+semicolon+"Set-ADAccountControl -Identity '"+fornamn+"."+efternamn+"' -Enabled $true";
    MailApp.sendEmail(email, subject, message);     
    

       catch (e) 
        Logger.log(e.toString());
      


可悲的是,今天的输出示例,不能仅复制到Powershell ISE并运行它。

New-ADUser -SamAccountName 'gadfgdafg.sdfgsdfg' -Name 'gadfgdafg sdfgsdfg'  
-GivenName 'gadfgdafg' -Surname 'sdfgsdfg' -Description 'Test, Utlämningen, Alternativ 5' -OfficePhone ' '  
-EmailAddress 'gadfgdafg.sdfgsdfg@test.com'  
-Path 'OU=Users,OU=test,DC=intern,DC=test,DC=se'  
-Company 'test' -Department 'Utlämningen' -Title 'Alternativ 5' ;$NewPassword = (Read-Host -Prompt 'Provide a Temporary Password for this user' -AsSecureString) ;Set-ADAccountPassword -Identity 'gadfgdafg.sdfgsdfg' -NewPassword $NewPassword -Reset ;Set-ADAccountControl -Identity 'gadfgdafg.sdfgsdfg' -Enabled $true

谢谢,我已经尽力了想想的一切。

我正在尝试使我的SendGoogleForm脚本正常工作。我目前遇到的问题是,我通过表单发送的消息包含一个powershell脚本,我的问题是send ...

答案

Johan。您没有在字符串中放入任何换行符,因此将全部输出到一行中。对于google-apps-script(js),您可以使用“ / n”。 See examples here.

以上是关于修改SendGoogleForm脚本v2的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Wordpress API v2 中过滤特定日期之后修改的帖子

如何修改 Rancher v2.6 的 Rancher Server IP 地址

Swift之深入解析如何使用Xcode和LLDB v2修改UI元素

ini OpenConnect路由配置,参考http://www.v2ex.com/t/136431,修改精简到200条

Fabric系列 - 链码- 外部链码(v2.0)

Mp3tag(MP3文件信息修改器) V2.79a 多语绿色版