我正在尝试编写一个 bash 命令,该命令将删除与特定模式匹配的所有文件 - 在这种情况下,它是所有已建立的旧 vmware 日志文件。
我试过这个命令:
find . -name vmware-*.log | xargs rm
Run Code Online (Sandbox Code Playgroud)
但是,当我运行该命令时,它会阻塞所有名称中包含空格的文件夹。有没有办法格式化文件路径,以便 xargs 将其传递给 rm 引用或正确转义?
我使用 puppet 来安装当前的 JDK 和 tomcat。
package {
[ "openjdk-6-jdk", "openjdk-6-doc", "openjdk-6-jre",
"tomcat6", "tomcat6-admin", "tomcat6-common", "tomcat6-docs",
"tomcat6-user" ]:
ensure => present,
}
Run Code Online (Sandbox Code Playgroud)
现在我想补充
JAVA_HOME="/usr/lib/java"
export JAVA_HOME
Run Code Online (Sandbox Code Playgroud)
到/etc/profile,只是为了解决这个问题。我还没有在文档中找到直接的答案。有没有推荐的方法来做到这一点?
一般来说,我如何告诉 puppet 将这个文件放在那里或修改那个文件?我将 puppet 用于单个节点(在独立模式下)只是为了尝试并保留服务器设置的日志。
有没有办法通过运行带有 -x 选项的 bash 脚本将显示的信息发送到文件,同时不更改运行脚本的用户看到的标准输出?
这是我想在我们经常使用的 bash 脚本中实现的调试功能。
非常感激。
在我的新 ec2 版本上运行几天后,发生了以下情况:
e了——输入时出现错误提示nano或vi与e工作正常,只是没有在bash或sh这令人费解!我什至可以从哪里开始进行故障排除?
我的本地机器设置:
EC2 设置
没有其他模组
stty -awhile I can't type an 的输出e
sh-4.1$ stty -a
speed 38400 baud; rows 30; columns 95; line = 0;
intr = ^C; …Run Code Online (Sandbox Code Playgroud) 为什么以下bash检查目录是否失败?
if [ ! -d "~/Desktop" ]; then
echo "DOES NOT EXIST"
exit 1;
fi
Run Code Online (Sandbox Code Playgroud)
~/Desktop确实存在。顺便说一下,这是在 Mac 上。
问题在于这种类型的脚本
read -p "Provide the destination directory: " DESTINATION
if [ ! -d $DESTINATION ]; then
echo "\t'$DESTINATION' does not exist." >&2;
exit 1;
fi
Run Code Online (Sandbox Code Playgroud) 我想测量使用了多少带宽git pull,最好是在 git 命令前面加上所需的程序,即nettally git pull
或者,是否有一些偷偷摸摸的方法来累积 nethogs/wireshark 数据并在执行后将数字相加?
谢谢
我正在创建一个 bash 脚本来配置一个新服务器,我可以将一个 Web 应用程序部署到该服务器。我总是必须做的一件事是将 GitHub 视为使用ssh git@github.com. 如何在 bash 脚本中自动执行此过程,并以幂等方式执行此操作?
我一直在测试最小的 Fedora 安装。要检查 python 或 node 等解释器的路径,我通常使用which.
我注意到which默认情况下未安装。我可以添加这个包,但我想知道是否有一个内置的 shell 可以用来执行这个常见的任务。
我正在使用 bash 4.2。
我有一个.pid文件,我需要检查进程是否正在运行。到目前为止,我发现了两个选项
kill -0 `cat something.pid`
Run Code Online (Sandbox Code Playgroud)
如果 pid 未运行,则会打印出错误。我知道这可以重定向到/dev/null,但这让我认为这不是最好的解决方案。
第二种解决方案是使用ps,但是它也会在 STDOUT 上打印
ps -ef `cat something.pid`
Run Code Online (Sandbox Code Playgroud)
将输出重定向到/dev/null并仅使用返回的状态代码是否正常,或者这是否表明我做错了什么,我需要一个不同的命令?
我想在 FreeBSD 9.1 中禁用邮件检查。我的登录 shell 是 BASH,所以我尝试添加
unset MAILCHECK
Run Code Online (Sandbox Code Playgroud)
在/root/.bashrc和 中/root/.profile,但我仍然收到这些消息。
题
有没有办法摆脱这些消息?