标签: scripting

从 xp 中的批处理脚本中删除临时文件

我正在寻找一个好的批处理脚本,它可以从 Windows(尽可能多的变体)机器(例如 Windows 临时文件夹、所有用户 IE 临时文件夹等)中快速找到并清理所有已知的安全临时文件夹/文件。我喜欢像 CCleaner(通过 Cleanmgr.exe)这样的 UI 工具,但是当我尝试快速和/或很少参与清理多台计算机时,有一个脚本会很好。

加上脚本,我可以将多个脚本链接在一起。也许一个然后启动各种防病毒和/或恶意软件检测器。

任何人都有一个好的或可以指向一个好的资源?

scripting windows files windows-xp batch-file

7
推荐指数
1
解决办法
2万
查看次数

如何确定我可能有多少贝壳深?

我想知道我是否递归调用了 shell,有没有一种简单的方法可以找出来?是否有特定于外壳的解决方案?我正在使用 bash。

scripting bash

7
推荐指数
2
解决办法
385
查看次数

评估 Windows 批处理脚本中的表达式

这个问题可能会成为有史以来最愚蠢的问题,因为我可能错过了显而易见的问题。无论如何,这里是:您可以评估批处理脚本中的表达式吗?例如,我想将两个数字相加并打印结果:

echo 4+2
Run Code Online (Sandbox Code Playgroud)

这将只打印“4+2”,而不是“6”。也许我在 Windows 上使用批处理脚本有点太过分了...

谢谢!

scripting windows batch

7
推荐指数
1
解决办法
1万
查看次数

Bash:将作业放在后台,然后拖尾日志

您如何进行转义工作,以便&实际在后台运行第一个命令?

# foo param1 param2 >> run.out &; tail -f run.out
Run Code Online (Sandbox Code Playgroud)

scripting shell bash background-process

7
推荐指数
1
解决办法
6175
查看次数

通过 Python 脚本/非交互方​​式更改用户密码的安全方法

问题

  1. 是否有更安全/更好的方式通过 Python 脚本以非交互方式设置用户密码?我目前的解决方案采用chpasswd面料脚本。另一种选择是在Fabric脚本中使用Pexpect
  2. 我目前设置密码的方法是否存在安全问题?潜在的安全问题,我看到的是,密码显示为明文我的本地终端上进行如下:
    [xxx.xx.xx.xxx] run: echo "johnsmith:supersecretpassw0rd" | chpasswd
    由于我只从笔记本电脑运行Fabric脚本,因此我认为这不是安全问题,但我对其他人的输入感兴趣。

背景

我已经使用Fabric创建了一个 Python 脚本来配置一个新构建的Slicehost Ubuntu 切片。如果您不熟悉 Fabric,它会使用Python SSH2 客户端Paramiko来提供“用于应用程序部署或系统管理任务”的远程访问。

我让Fabric脚本做的第一件事就是创建一个新的管理员用户并设置他们的密码。与Pexpect不同,Fabric 无法处理远程系统上的交互式命令,因此我需要以非交互式方式设置用户密码。目前,我正在使用该chpasswd命令,该命令以明文形式读取用户名和密码。

当前代码

# Fabric imports and host configuration excluded for brevity
root_password = getpass.getpass("Root's password given by SliceManager: ")
admin_username = prompt("Enter a username for the admin user to create: ")
admin_password = getpass.getpass("Enter …
Run Code Online (Sandbox Code Playgroud)

automation scripting python fabric

7
推荐指数
1
解决办法
1万
查看次数

脚本中 rsync 的用户名和密码

我正在创建一个 cron 作业来保持两个目录同步。我正在使用 rsync。我正在运行一个 rsync守护进程。我阅读了手册,它说:

   RSYNC_PASSWORD
          Setting  RSYNC_PASSWORD  to  the required password allows you to
          run authenticated rsync connections to an rsync  daemon  without
          user  intervention. Note that this does not supply a password to
          a shell transport such as ssh.

   USER or LOGNAME
          The USER or LOGNAME environment variables are used to  determine
          the  default  username  sent  to an rsync daemon.  If neither is
          set, the username defaults to 'nobody'
Run Code Online (Sandbox Code Playgroud)

我有类似的东西:

#!/bin/bash
USER=name
RSYNC_PASSWORD=pass
DEST="myhost::mymodule"

/usr/bin/rsync -rltvvv …
Run Code Online (Sandbox Code Playgroud)

scripting password bash rsync user-accounts

7
推荐指数
1
解决办法
7万
查看次数

基于grep结果的回声

无论 grep 是否找到任何结果,我都需要一个显示“是”或“否”的衬里。

我玩过grep -c,但没有成功。

scripting bash grep

7
推荐指数
1
解决办法
8182
查看次数

测试正在等待标准输入的脚本

有没有办法确定脚本是否正在等待 stdin 并在检测到命令时退出?

这是一个例子,我正在执行的命令需要很长时间才能运行,但它也会在启动 w/oa 提示之前提示输入。我想知道该命令实际上是在做某事,而不仅仅是在等待。

提供了以下名为 ./demo 的脚本

#!/bin/bash

read
Run Code Online (Sandbox Code Playgroud)

有没有办法检测读取正在等待标准输入?就像是

failifwaitingonstdin | ./demo
Run Code Online (Sandbox Code Playgroud)

一旦检测到读取命令,它将立即返回。

更新:

人们已经建议了诸如expect 和yes 之类的程序。在深入研究 yes 之后,我看到他们如何能够支持这种交互方式。他们不断地使用 fputs 将“y”写入标准输出。我可以简单地在 fputs 在写入标准输出时返回时立即返回错误,而不是无限地执行此操作。

scripting bash stdin

7
推荐指数
1
解决办法
1万
查看次数

从脚本安装 .msi,检测何时安装完成

我正在尝试制作安装脚本。我想安装一个.msi文件,Python,然后在安装Python后安装其他东西。我已经看到了如何进行命令行安装。但是,msiexec即使安装仍在运行,也会立即返回。如何从批处理脚本检测 msi 安装的完成?

scripting windows installation automated-install msi

7
推荐指数
1
解决办法
2万
查看次数

Perl 还是 Python,更适合 Unix 系统自动化?

我一直在使用bash我的大部分系统管理任务。我也懂一点perl。

我应该学习 Python还是Perl更适合系统自动化。到目前为止,从我的经验来看,学习 perl 很容易。

automation scripting python perl

7
推荐指数
1
解决办法
1万
查看次数