由于这个问题有一个windows版本,我决定在unix、linux等下为同样的问题打开一个社区wiki。
我将用答案更新此列表:
网站:
键盘快捷键: - Ctrl T(特定于 BSD):将 SIGINFO 发送到正在运行的程序 - Magic SesRq 键(特定于 Linux):en.wikipedia.org/wiki/Magic_SysRq_key
我有一个要在远程 Windows 2003 服务器上执行的命令。
我试过 wmic,它有效,但显示标准输出的唯一方法是将其重定向到本地文件,然后列出本地文件(有点笨拙)。
我也试过 psexec,但在 Windows 2003 服务器上似乎有问题(至少它报告说最新版本可以 - 而旧版本不可用)。
我试图远离 Windows rcmd 实用程序,因为我认为需要安装一个服务器组件,而且我不想提供对机器的一般命令行访问。
对于允许我在远程计算机上执行特定命令的工具或实用程序,是否还有其他建议。
笔记:
这是我试图让 PsExec 工作的一个非常简单的例子:
C:\Program Files\SysInternalsSuite>psexec \\remote-svr -i -u MyUsername D:\Public\do.bat
PsExec v1.95 - Execute processes remotely
Copyright (C) 2001-2009 Mark Russinovich
Sysinternals - www.sysinternals.com
Password:
D:\Public\do.bat exited on remote-svr with error code 1.
Run Code Online (Sandbox Code Playgroud)
我的示例 do.bat 文件很简单,只包含以下行:
copy dg.bmp dg1.bmp
Run Code Online (Sandbox Code Playgroud)
源文件 dg.bmp 存在于远程机器上,目标文件不存在。我确实有对远程机器的写访问权限。
当我执行上面的 PsExec 命令时,do.bat 文件没有运行(虽然我在远程服务器上有权限)并且我没有得到我期望的控制台输出。我确实喜欢使用 PsExec 的想法,所以如果有关于我可能做错了什么的任何提示,我将不胜感激。
谢谢...
有没有与Linux中的函数inode相同的命令。任何信息都会有所帮助。
我想在date -s <string>使用命令时运行 shell 脚本。例如,我想通过在 shell 脚本中执行以下命令将命令记录到文件 /tmp/user.log
logger -p user.notice "date -s command executed" -f /tmp/user.log
Run Code Online (Sandbox Code Playgroud)
在shelldate -s <string>上执行时如何运行shell脚本?
为了使它更通用,当其他人在我的系统上发出特定的 linux 命令时,我想运行我的 shell 脚本。这该怎么做?
我编写了一个小的 bash 脚本来启动、停止和重新启动我的 Java 应用程序,我想让所有用户都可以使用它,以便他们可以运行它。我应该把它放进/usr/bin去吗?这是我的脚本的正确位置吗?这不只是像安装的包脚本之类的东西吗?
我想列出在 Windows PowerShell 中输入的命令及其各自的时间戳。我怎样才能用Get-History命令做到这一点?
我在我的 php 脚本中收到此错误:
Fatal error: Call to undefined function xdiff_file_diff()
我意识到我没有安装 xdiff 扩展。当我尝试使用install pecl xdiff命令安装它时,我收到了这个错误(在其他行中):
配置:警告:如果您想重新生成 PHP,您将需要 re2c 0.13.4 或更高版本配置:错误:请重新安装 libxdiff 发行版
然后我安装了re2c和libxdiff:
wget http://www.compdigitec.com/labs/files/re2c_0135_redhat.rpm
wget ftp://ftp.task.gda.pl/vol/vol1/ftp.pld-linux.org/dists/2.0/PLD/i386/PLD/RPMS/libxdiff-0.7-1.i386.rpm
rpm -ivh re2c_0135_redhat.rpm
rpm -ivh libxdiff-0.7-1.i386
Run Code Online (Sandbox Code Playgroud)
但在那之后我仍然得到同样的错误。
PS:我在谷歌上搜索了很多,我发现有几个人有这个问题,但他们也没有得到答案:(
我想要~/.bashrc将是source每当改变其内容。我用这样的东西创建了一个 bashrc 类:
file { "/root/.bashrc":
ensure => present,
owner => root,
group => root,
mode => 0644,
source => "puppet:///bashrc/root/.bashrc"
}
exec { "root_bashrc":
command => "source /root/.bashrc",
subscribe => File["/root/.bashrc"],
}
Run Code Online (Sandbox Code Playgroud)
但如您所知,它source是一个 shell 内置命令,因此在运行代理时出现以下错误:
# puppet agent --no-daemonize --verbose
notice: Starting Puppet client version 2.7.1
info: Caching catalog for svr051-4170
info: Applying configuration version '1311563901'
err: /Stage[main]/Bashrc/Exec[root_bashrc]/returns: change from notrun to 0 failed: Could not find command 'source'
notice: Finished catalog run …Run Code Online (Sandbox Code Playgroud) 我已经可以检查每个快照一个的文件系统独立,手动。
我更愿意一次检查所有内容(全部使用单个命令或脚本)。请:
答案应该适用于名称中带有空格的文件系统。
来自 zfs(8) 的手册页:
zfs holds [-H] [-r] snapshot…
… -r指定将具有给定标记的保留递归应用于所有后代文件系统的快照。
我想知道最近的快照是否被视为旧快照的后代。不:
Last login: Sat Dec 8 09:02:26 on ttys003
macbookpro08-centrim:~ gjp22$ zfs holds -r gjp22@2012-12-08-081957
NAME TAG TIMESTAMP
macbookpro08-centrim:~ gjp22$ zfs holds -r gjp22@2012-10-28-212255
NAME TAG TIMESTAMP
gjp22@2012-10-28-212255 problem with LocalStorage for WOT for Safari Mon Oct 29 6:44 2012
macbookpro08-centrim:~ gjp22$ zfs hold experiment gjp22@2012-12-08-081957
macbookpro08-centrim:~ gjp22$ zfs holds -r gjp22@2012-10-28-212255
NAME TAG TIMESTAMP …Run Code Online (Sandbox Code Playgroud) 我试图通过以下命令运行网络状态。
sudo systemctl status network
Run Code Online (Sandbox Code Playgroud)
但是系统说找不到 systemctl 命令。