根据Windows和Linux的线程,你在Mac OS X Server (或Client)中发现哪些命令最有用?
say "some text"
着名的用于让人们回到他们的公寓 , say
你的论点,并通过audio输出设备朗读。
pbpaste
和pbcopy
与剪贴板(aka剪贴板)进行交互。
例子:
# copies the directory listing ls -l | pbcopy # get pasteboard lines containing foo and save them in a_file pbpaste | grep foo > a_file
我认为他们默认使用macros人编码,所以如果你想要UTF-8(你这样做),你应该看看这些链接:
fs_usage
让您监视文件系统活动。 方便如果你想看看一些应用程序创build的文件。 有关更多说明,请参阅http://rentzsch.com/macosx/fs_usageIntro 。
open .
在当前工作目录中打开查找器窗口。
从命令行,我喜欢有能力:
创build并刻录“通用”CD / DVD:
$ mkisofs -allow-multidot -allow-leading-dots -d -hide -rr-moved \ -l -joliet-long -R -T -v \ -V VOLUME_NAME -o output.iso root-cd-dir / $ hdiutil burn -noverifyburn output.iso
从CD / DVD创buildISO映像:
$ diskutil unmountDisk / dev / disk2s0 $ dd if = / dev / disk2s0 of = cdname.iso bs = 32m
当我正在寻找ldd时能够忘记otool命令:
$ alias ldd ='printf“发送命令到\'\''otool -L \'\'' - \ n”&& otool -L'
从命令行挂载磁盘映像:
$ hdid diskimage.dmg(或.iso)
使用预览来访问手册页:
$ man -t rsync | 打开-f -a /Applications/Preview.app
“机场”CLI实用程序是我最喜欢的。 见http://osxdaily.com/2007/01/18/airport-the-little-known-command-line-wireless-utility/ 。 它会向您显示诸如信号电平,噪声电平以及您所关联的AP的BSSID等详细信息。
ipconfig getpacket en0
显示主以太网接口(en0)的networkingconfiguration。
如果你习惯了Windows,并认为“ipconfig”坏了,那不是;-)你只需要添加一些参数
drutil tray open
由于Apple光驱上的popupbutton无法从shell访问,因此在没有连接键盘的情况下,这是非常宝贵的(通过ssh)。
这不能说是不够的,“开放”是伟大的。 您可以在其GUI程序中打开文档,也可以使用-aselectGUI程序。 例如,
open -a vlc movie.avi
将打开VLC,并告诉它加载当前目录中的movie.avi。
open movie.avi
将打开它与任何程序是默认的。 如果你只是想打开一个程序,你也可以这样做:
open -a system\ preferences
将运行系统偏好设置。 你也可以打开Url:
open vnc://myserver:5900
将打开屏幕共享并连接到myserver。
查看
man open
看到你可以使用的所有标志。
softwareupdate
从CLI更新您的mac。
networksetup
在命令行中的“系统偏好设置”中的“networking偏好设置窗格”中configuration您find的所有内容。 使写脚本,或远程做事更容易。
sudo changeip -checkhostname
检查正向和反向DNSparsing是否正常,并经常向您显示可用于解决问题的命令。 如果它说“名字匹配,没有什么可以改变的”,那么你的状态很好。 重要的是,如果你曾经改变你的服务器的networkingconfiguration。 在将您的服务器升级到Open Directory Master之前,使用此function同样重要。
dscacheutil -flushcache
我发现自己使用这个堆在10.5+上刷新DNScaching。
ping 224.0.0.1
Ping你的子网上的所有设备
last
显示谁已login到系统,他们使用了多长时间以及系统何时重新启动。
这是一个输出示例:
clinton ttys000 Thu May 28 22:33 still logged in clinton console Thu May 28 08:05 still logged in reboot ~ Thu May 28 08:05 shutdown ~ Wed May 27 20:15 clinton console Wed May 27 17:33 - 20:15 (02:42) ... wtmp begins Thu May 14 09:26
srm
用于安全删除的命令行版本。
lsof
列出打开的文件
当你想popup你的USB驱动器,并告诉它正在使用,并请退出所有的应用程序,然后再试一次,方便。
$ sudo lsof /Volumes/CLINTON COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 55966 clinton cwd DIR 14,12 16384 2 /Volumes/CLINTON lsof 56042 root cwd DIR 14,12 16384 2 /Volumes/CLINTON lsof 56043 root cwd DIR 14,12 16384 2 /Volumes/CLINTON
在这种情况下,我已经把cd
放到了驱动器上,所以bash正在访问这个卷。
请注意,如果您看到“mds”条目,这意味着聚光灯正在索引驱动器。
苹果提出的命令行pipe理指南是非常宝贵的。
谷歌search“命令行pipe理mac”给出了很好的结果。
用于Mac OS X 10.5,10.4和10.3的命令行pipe理
虽然不是一个专门的Mac资源,它使用terminal的图标,并且大部分真正有用的命令的列表都可以工作。
osascript -e 'tell application "AppName" to quit'
让你从shell中退出一个应用程序。
osascript -e 'tell application "Finder" to sleep'
长shell脚本的有用最后一行,使脚本完成后Machibernate。 我有它iSleep别名。
pbpaste | script.sh |pbcopy
获取纸板的内容(编辑 – >复制)并将其传递给script.sh。 结果放在粘贴板上,供您编辑 – >粘贴到文档中。
mcxquery
这将让您看到什么样的MCX(托pipe客户端)设置正在应用到客户机。
[GUI等同于进入System Profiler,在Software部分下,点击“Managed Client”。]
确定是否pipe理一台机器并查看它是否获得您期望的设置是非常有用的。
sw_vers
显示当前安装的Mac OS X的版本和版本。
system_profiler
只有在命令行上select关于本机 – >更多信息时,才能获得与您获得的结果相同的结果。
运行
system_profiler -usage
或者查看手册页会给你提示如何使用它。
几个例子:
system_profiler -xml > MySystem.spx # and later, open MySystem.spx # or just double click on it in the Finder
这将把系统configuration文件转储到一个可以在稍后在另一台机器上查看的文件。
system_profiler SPUSBDataType
告诉你所有的USB设备(包括他们的供应商和产品ID,这可以帮助追踪驱动程序)。
system_profiler SPUSBDataType | grep "Product ID" -c
会告诉你有多less个USB设备被插入(包括内部的USB设备),这对于看电脑是否看到一个设备是有用的(或者,如果说Parallel被抓住了,或者它已经死了)。 System Profiler GUI App,您可以从菜单中selectView – > Refresh来更新列表; 这可能会更容易。]
system_profiler SPHardwareDataType
将获得基本的硬件信息(对资产跟踪有用)和
system_profiler SPHardwareDataType | grep Serial
会给你机器的序列号。
ifconfig en0 ether 00:00:00:00:00:00
更改(欺骗)MAC地址,直到下一次重新启动
df -h
检查我目前在所有磁盘上有多less磁盘空间。
dns-sd -B _ssh dns-sd -B _rfb dns-sd -B _services._dns-sd._udp
在Bonjour中列出服务器广告。 最后一个build议列出了您可以列出的服务types。 列表是实时的,当你看到足够的时候按Ctrl-C。
在最近的Linux和Windows的Bonjour SDK中都有相同的命令。
opendiff file1 file2
在file1
和file2
上运行FileMerge (Apple开发人员工具附带的graphicsdiff
)。
sudo opensnoop
在豹和更新,报告哪些进程打开文件,无论成功与否。 您可以让它查看在系统中打开的所有文件,通过特定的进程,或者任何进程打开给定的文件,使用不同types的时间戳,以及显示是否发生错误。
这里有一些更多的细节:
opensnoop是一个dtrace脚本; / usr / bin中还有许多其他的东西来看待进程正在进行的系统调用,正在创build的进程以及正在执行的I / O。 运行apropos DTrace
查看列表,并查看手册页以获取详细信息。
当我努力诊断为什么漫画人生Magiq 1.1在OS 10.5.8上崩溃时,我发现了关于opensnoop的问题。
我跑了(几次,在不同的帐户,通过SSH):
sudo opensnoop -e -n Comic > output.txt
networking用户打开的最后一个文件是这样的(完整path):
/Network/Servers/.../username/Library/Icons/WebpageIcons.db
这让我想起Safari 5.0对于networking用户来说是崩溃的,我们通过pipe理一个首选项来cachingfavicons或者redirect一个文件来解决这个问题。 苹果显然在Safari 5.0.1中解决了这个问题,昨天当我升级到Safari 5.0.2时,它修复了漫画人生Magiq用户的崩溃。
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent
启动远程桌面服务(如果您只有SSH访问权限,但希望在客户端Mac上使用GUI执行某些操作,则该function很有用)。 有关更多选项,请参阅: http : //support.apple.com/kb/HT2370
drutil eject
会popup一张CD。