Articles of 脚本

Powershell更改date到脚本运行上个月的第一个

如果我在2013年2月4日或2月份的任何一天运行脚本,我希望将date更改为1/1/2013。 我用这个值replace第59行的date。 #Get the content of the CMS Script. $CMSReport = Get-content C:\reports\CMSReport.acsauto # Go to line 59 and replace the date for Last Month date. $CMSReport[58] = $CMSReport[58] -replace "([1-9]|0[1-9]|1[012])[- /.]([1-9]|0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d", [datetime]::Today.ToShortDateString() $CMSReport | Set-Content C:\reports\testCMS.acsauto #Run the CMS script Invoke-Expression -command "c:\reports\testCMS.acsauto"

单行检索外部IP地址

可能重复: 在shell脚本中查找公共IP地址 为了在脚本中使用,能够做到这一点很方便: IP=`….something ….` echo …$IP… >> configfile 在这个例子中,我正在寻找networking上的IP地址。 Ubuntu,如果它有所作为。 很高兴安装一个或两个包。

如果我SSH到远程计算机并运行一个脚本,我需要保持我的连接脚本完成执行?

我很抱歉,如果这个问题之前已经问过,我没有find任何与我的确切查询。 我有一个相当长的脚本需要在远程计算机上运行,​​通常需要大约3 – 5分钟才能完成执行。 我试图弄清楚我是否可以在今晚出门:通过手机ssh进入,运行调用脚本的命令,然后即使手机连接断开,脚本也能在远程计算机上执行完毕吗? 谢谢!

把这个命令放到bash脚本中

在google的帮助下,测量多播stream带宽的脚本。 这里是tcpdump -tnn -i eth1 -f multicast | sort | uniq -c | awk '{print $3,"> "$5,$1*$NF/2*8/1024 " Kbps"}' | awk '$1 > 10' & sleep 2s && pkill -HUP -f tcpdump tcpdump -tnn -i eth1 -f multicast | sort | uniq -c | awk '{print $3,"> "$5,$1*$NF/2*8/1024 " Kbps"}' | awk '$1 > 10' […]

在远程机器上执行不在Windows域中的脚本?

要求:作为部署过程的一部分,我必须在目标服务器上执行脚本。 问题:我不想login到每个使用RDP的服务器来执行脚本。 有些服务器不是域的一部分。 IT不允许在非域服务器上使用WinRM。 问题:考虑到我在目标服务器上拥有一个帐户,并具有所需的权限,因此如何在不影响系统安全的情况下安全执行脚本?

Bash – 使用基于字符的graphics工具来存储输出

我正在使用bash脚本在Ubuntu(14.04)服务器的远程拨号程序,我有一些重大的麻烦试图读取它的输出。 我想程序执行,因为我通常会有,然后我有超时命令杀死它,如下所示: #!/usr/bash echo "begin" timeout 60s minicom Cisco -d Boston >> log.txt 我可以在控制台上单独运行上面的命令,但没有任何打嗝,但是当我通过bash运行它时,似乎没有发生任何事情,它经历了超时,但是我只是以log.txt结束了这些字符: ^[[0m^O 在bash脚本中,我有点儿绿色; 是否有附加从graphics工具输出输出的规则? 我真的很困惑,为什么它这样做。

Linux:如何让普通用户“su – anotherUser”?

我写了一个Nagios检查脚本,用来检查用户peeradmin是否能够在服务器上的某个安装文件中触摸某个文件。 Nagios的用户是:nagios。 我编辑了/etc/sudoers并添加了这些行,但都没有工作: nagios ALL=NOPASSWD: /bin/su – peeradmin -c /bin/touch nagios ALL=(peeradmin) NOPASSWD: /bin/su nagios ALL=(peeradmin) NOPASSWD: /bin/su – peeradmin 但仍然,作为nagios用户login时,我无法运行任何命令作为用户peeradmin而不被要求input密码: [nagios@hadoop-nn1 ~]$ su – peeradmin -c "ls" Password: 我在做什么错了,我怎么能让用户nagios作为用户peeradmin运行命令? 提前致谢,

复制项目与多个filter

我怎样才能使用复制多个filter值? 例如,如果我只指定1个值来过滤(* .jpg) Copy-Item -Path Y:\TEST -Recurse -Filter *.jpg -Destination D:\Users\MS5253\Desktop\Lots 这创build了一个文件夹(D:\ Users \ MS5253 \ Desktop \ Lots \ TEST),其中只包含jpg文件 但我也想过滤XML文件,我试过这个: Copy-Item -Path Y:\TEST -Recurse -Filter *.jpg,*.xml -Destination D:\Users\MS5253\Desktop\Lots 这给我一个错误。 和这: Copy-Item -Path Y:\TEST -Recurse -include "*.jpg","*.xml" -Destination D:\Users\MS5253\Desktop\Lots 它不工作… 感谢您的帮助,我正在使用Windows 7与Powershell v4。

为域服务器的用户组运行login脚本

我一直在寻找一个小时,并没有取得任何成功,所以如果我忽视了这个以前回答的问题,请让我知道。 我正在尝试使用映射域中所有计算机上的驱动器的login脚本。 我已经按照这个: https : //technet.microsoft.com/en-us/library/cc781361(v=ws.10).aspx添加脚本。 但是,当他们login到他们的计算机上时,域名用户仍然无法运行。 我是否需要将其推到机器上或以某种方式激活它? 要进入组策略编辑器,我做了以下操作(这也许可以解释为什么它不适用于某人)。 我进入了组策略pipe理器 – >林 – >域 – > MyCompany.local – 默认域策略。 我右键点击,并点击编辑,从那里我按照上述链接中的说明。 然后,我回到组策略pipe理,右键单击默认域策略,然后点击“强制”。 用户login时仍然没有。 任何帮助表示赞赏。 我是一个开发人员而不是系统pipe理员,所以活动目录超出了我的专业领域。 我正在使用Windows 2012 Server Standard R2 个人电脑是在域名。 两个奇怪的东西(可能暗示更有知识的人) 1-当我通过RDP以用户身份login服务器时,它映射我在组策略编辑器中设置的驱动器。 但是脚本似乎没有运行(映射其他驱动器)。 2-如果我打开资源pipe理器,并使用我的脚本\ MyCompany.local \ sysvol \ MyCompany.local \ Policies {RANDOMGUID} \ USER \ Scripts \ Logon浏览到该文件夹​​,并尝试运行该脚本,我收到此警告,所以我不当然,如果这是一个权限问题? 我也曾在PC上试过gpupdate / force

dynamic地使用程序的输出作为文件的内容

在Linux中,我想创build一个文件,其中的文件内容是由程序的输出dynamic生成的。 已经存在的例子是/ dev / random / dev / urandom,/ dev / zero等等。 我想创build一个像/home/sam/currentdate.txt这样的文件,其中文件的内容是运行一个命令的结果(比如date, [sam@myserver ~]$ cat ./currentdate.txt Wed Dec 2 12:12:09 PST 2015 [sam@myserver ~]$ 对于我的用例,我需要通过另一个不能读取程序输出内容的程序来跟踪某些程序的输出,而是需要跟踪一个文件的内容。 我可以通过使用date> filename.txt通过脚本保存输出的内容,但是这需要先将输出保存到磁盘,这在我的使用情况下将是低效的。