我有10多台Linux机器。如何使用单个脚本关闭所有机器?
所有机器的密码和用户都是相同的。
我有 Linux 主机,想要将所有内容压缩到一个 zip 文件中,但始终排除 .htaccess 文件,并且其他隐藏文件不会添加到 zip 文件中。
我正在使用-e旗帜。
用法:
#!/bin/bash -e
Run Code Online (Sandbox Code Playgroud)
解释:
-e Exit immediately if a simple command (see SHELL GRAMMAR above) exits with a non-zero status
Run Code Online (Sandbox Code Playgroud)
当脚本中的某个命令失败时,脚本退出并且不会继续执行其余命令,这正是我想要的。
但是,失败仅包含失败命令选择公开的信息。
有时失败的命令非常复杂,例如带有许多标头的卷曲。
如何打印失败的命令?我的意思是,在失败后立即。
我知道我可以使用-xbash 标志,但它会打印所有已执行的命令。我只想看看失败的那个。
关于笔记本电脑的 RAM 我确实意识到这是可用的
它符合:
该选项出现在newegg上,用于笔记本电脑内存(仅约ECC)和服务器内存(约ECC和Buffered/Registered)
问题)
使用什么命令或命令可以知道
ECC/Non-ECC和Buffered/ Unbuffered?观察结果
在公羊的盒子和公羊本身中,没有任何迹象表明这两个功能。另外对于一些基于DDR2的老型号,网上不存在这个信息。
目标
目的是检查当前安装的RAM是否正确,并进行正确的RAM升级。
我在 HP Unix 上使用此命令搜索大文件:
find . -type f -size +100000000c -exec ls -lrt {} \;
Run Code Online (Sandbox Code Playgroud)
结果是这样的:
-rw-rw-rw- 1 qa1wrk32 test 169263642 Oct 27 12:28 ./rgs/test/qa1wrk32/DB/Dmp/intrefbl01_20111027_Backup_for_qa1ref32_CNSTRNO.dmp.gz
-rw-rw-rw- 1 qa1wrk32 test 173779937 Oct 24 16:33 ./rgs/test/qa1wrk32/DB/Dmp/qa1ref32_20111024_Backup_before_Refresh.dmp.gz
-rw-rw-rw- 1 qa1wrk32 test 105020030 Oct 31 09:53 ./rgs/test/qa1wrk32/DB/Dmp/qa1app32_20111031_R112_Before_CopyBan_from_INT01_to_ENV32_for_LISA_CNSTRNO.dmp.gz
find: cannot open ./rgs/test/maes32/master/.ssh
find: cannot open ./rgs/test/qa1oln32/.ssh
find: cannot open ./rgs/test/qa1oln32/local_tlg/bin/.adm
find: cannot search ./rgs/test/qa1wrk91/mail
Run Code Online (Sandbox Code Playgroud)
我不想要 find 无法搜索或打开或其他任何内容的输出行。有没有办法过滤掉它们?更好的是,我可以find搜索具有某些权限的文件吗?
* nix中命令(和功能是什么?)具有许多与它们一样fsck(8),killall(1)等
数字是什么意思?
我有一个包含同一条目的多行的大日志文件,我们称之为“重复信息”。作为示例,日志的一部分可能如下所示:
[Timestamp] repeat-info
[Timestamp] repeat-info
[Timestamp] Log information 1
[Timestamp] Log information 2
[Timestamp] repeat-info
[Timestamp] Log information 3
[Timestamp] repeat-info
Run Code Online (Sandbox Code Playgroud)
有没有命令可以输出日志文件中的信息并排除重复的信息?如果我必须使用more file.log并筛选所有重复的信息以找到我想要查看的内容,这将变得很麻烦。
我正在阅读手册页sed,awk因为我看到那些出现在我的问题的搜索中,但是我没有找到任何可以满足我需要的结论。
我正在搜索较旧的问题,发现这个问题与我的有关。
我一直在寻找一种方法来使用单个命令或两个管道一起执行此操作,而无需创建脚本。
任何帮助表示赞赏!
如您所知,“wall”命令向所有终端发送消息:
wall message
Run Code Online (Sandbox Code Playgroud)
现在我的问题是:是否有任何命令可以发送在所有终端中运行的“命令”?
例如向clear所有终端发送命令,那么所有终端将被清除。
我喜欢使用相同的名称将命令封装在 shell 函数中。但是为了避免 shell 函数递归调用自身,我指定命令的完整路径作为以下示例:
less()
{
test 0 -lt $# && echo -ne "\e]2;$@\a\e]1;$@\a" # Window title
/usr/bin/less -i -rS --LONG-PROMPT --shift 5 "$@"
}
Run Code Online (Sandbox Code Playgroud)
但是对于某些命令,我不想指定路径,因为它可能会改变。我更愿意使用$PATH.
例如,我的以下尝试无法mvn使用反斜杠调用命令:\mvn
mvn() # colorizes maven output
{
\mvn "$@" 2>&1 | #here: the shell-function recursively calls itself indefinitely
sed -u '
s/^\[ALL\].*/\o033[1;37m&\o033[0m/
s/^\[FATAL\].*/\o033[1;31m&\o033[0m/
s/^\[ERROR\].*/\o033[1;31m&\o033[0m/
s/^\[WARNING\].*/\o033[1;33m&\o033[0m/
s/^\[INFO\].*/\o033[1;37m&\o033[0m/
s/^\[DEBUG\].*/\o033[1;36m&\o033[0m/
s/^\[TRACE\].*/\o033[1;32m&\o033[0m/'
}
Run Code Online (Sandbox Code Playgroud)
绕过此问题的最佳方法是什么?
请不要建议使用不同的 shell 函数名称。
(我通常使用,bash但我对其他 shell 解决方案感兴趣。)
我发出以下命令来在我的 Red Hat Linux 机器上杀死 Firefox:
[subhrcho@slc04lyo ~]$ pkill -9 -f firefox
[subhrcho@slc04lyo ~]$
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试通过 Applications -> Internet -> Firefox 调用 Firefox 时,它说:
Firefox 已在运行,但没有响应。要打开新窗口,您必须先关闭现有的 Firefox 进程,或重新启动系统。