相信很多使用苹果本的同学对使用command line比较陌生,只是习惯用一些可视化的工具来操作,但是如果你作为一个程序开发者如果还不会用的话,难免会显得有点尴尬。所以此篇文章就简单的总结一下常用的指令,希望你们能用的上。
command line是大小写敏感的,并且对文件名必须包括文件扩展,macOS传统上喜欢使用文件夹(floder)这个名字的,但是在command line中主要使用目录(directory)这个词,这一点上和UNIX是一致的。
首先说一下我之前一直困惑的路径问题:
两种路径:一种是绝对路径另一种是相对路径
绝对路径:完整的描述一个文件的位置,总是以斜杠/开头 比如/Users/michelle/Public/Drop
Box。
相对路径:只描述一部分位置信息,它和你在 command line 目前的目录有关。当你打开新的 Terminal 程序时,command line 会话的目录应该是你的 home folder。这时上面例子文件夹的相对路径写作Public/Drop
Box。显然它从当前目录开始。和html相似你可以使用 .. 来代表父目录,这样你就可以用相对路径表示上级或同级目录了。例如你可以输入cd.. 甚至还可以输入cd../..
然后就是是一些查看路径的指令:比如列出当前位置下的文件有哪些?输入 ls 即可
切换路径指令 cd 它会改变当前目录到你指定的目录,如果你不指定则会返回你的home folder。
pwd 会显示当前目录的绝对路径
查看隐藏文件:ls -la
为了简化工作,command line 和 Finder 都会隐藏许多文件和文件夹,这些内容通常是系统需要的。不借助第三方工具让 Finder 显示隐藏文件比较困难,但是在 command line 中却非常简单。首先,许多隐藏文件的隐藏是通过隐藏属性在 Finder 中隐藏的,而 command line 会忽略这些属性,所以这些文件会在 command line 中显示。另外,ls命令会隐藏文件名以.开头的文件,但是这些文件却可以被显示出来,方法是利用-a选项。例如:
michelle$ ls -la
我们还添加了-l选项,目的是控制输出格式。如果你注意输出内容的话,会发现还包括.和..两项,它们分别表示当前文件夹和父文件夹(如图)。如果你不想显示这两项,只需要把-a改成-A即可。
再就是说一下 我们经常操作的文件相关指令
有许多基础的命令用来编辑文件和文件夹,包括mkdir,cp,mv,rm,rmdir以及vi。下面我们来简要地介绍一下这些命令。
mkdir
“make diretory”的缩写,用来创建文件夹,语法为mkdir后接新文件夹的目录。可以用-p选项,来一起创建路径中不存在的文件夹(这样你就不用挨层创建了)。
cp
“copy”的缩写,用来把文件从一处复制到另一处。语法为cp后接原始路径,后接目标路径。如果你想复制整个文件夹和所有内容,需要添加-R选项。如果指定的目标路径不含文件名,则 cp 命令会按原名复制。如果指定的目标路径包括文件名,则会复制为你指定的文件名。如果仅指定新文件名,则会在原处以新名称创建文件副本。注意,系统会自动替换同名文件而不出现提示。
mv
“move”的缩写,用来移动文件。语法为mv后接原路径,后接新路径。mv 的指定路径规则和 cp 是一样的(没错,如果仅指定新文件名,它就成了重命名命令)。
rm
“remove”的缩写,会永久删除文件。注意,command-line中没有废纸篓。语法为rm后接文件路径。然而,使用 rm 命令删除的文件有可能可以通过数据恢复工具恢复。如果希望安全删除文件,可以使用srm命令。
rmdir和rm -R
rmdir是“remove directory”的缩写,这个命令会永久删除文件夹。再强调一遍,CLI 中木有废纸篓。语法为rmdir后接希望删除目录的路径。然而,rmdir 命令无法删除含有任何其他文件的文件夹,所以大多数情形下rmdir命令是不适用的。不过,你可以利用rm添加-R选项来删除文件夹及包含的所有文件。
vi
代表“visual”(视觉的),然而这个名称相当具有讽刺意味:vi可能是可视化效果最差的文本编辑器了。然而,vi 是 command line 中最常见的文本编辑器。用vi打开文本文件,只需要输入vi后接文件路径即可。Mac OS X 还提供了nano,一个更加现代的文本编辑器。它也更加方便,例如在底部包含了一个作弊小条(=_=),上面有常用的快捷键列表(你就不用背下来它们了)。然而,vi却有时是默认的文本编辑器,所以掌握vi是很有用的
最后,其他Command-Line技巧提示
输入命令open .可以用 Finder 打开当前的位置。
中止一个错误的或者发疯的命令,可以使用组合键control+C。
没有输入任何命令时,你可以用▲和▼来浏览历史命令。同样可以编辑和再次执行。
你可以使用组合键control+L清屏。
你也可以使用history命令查看历史记录。
补充:
还有一堆的 Mac OS X 下的终端命令,我将这些命令进行了简单的分类,这里很多命令在其他系统(Windows、Linux)一样有效,特别是 Linux/Unix。希望这些命令对你有帮助。
重启 Mac OS X:
shutdown- r now
关闭 Mac OS X:
shutdown now
设置显示器无活动15分钟后关闭:
sudopmset displaysleep 15
让计算机在无活动30分钟后休眠:
sudo pmset sleep 30
ping 某个主机
ping-o oschina.net
。
。
。
。
。
好多好多,如果你想用的,我这里没有说到,还请自行百度搜索,我只是做一个简单的常用的汇总。