史上最全:MAC OS X 命令行汇总

简介: 史上最全:MAC OS X 命令行汇总

很多朋友对osx下的命令行操作挠头,估计多数是在windows时代开始接触计算机的。有dos基础的应该是看看就明白,而玩过Linux的应该是轻车熟路了。这个贴子希望能给见到命令行就头大的兄弟一些帮助,所涉及到的命令基本限于安装kext,修改plist,更换核心所碰到的操作。如果想进一步了解Unix的命令,再网上找些关于Linux命令的文章看,有很多

  高手们就免看了,不过希望能来挑挑毛病,再来补充两句。。。

  ——————————————————————————————————————————————

  OSX 的文件系统

  OSX 采用的Unix文件系统,所有文件都挂在跟目录 / 下面,所以不在要有Windows 下的盘符概念。

  你在桌面上看到的硬盘都挂在 /Volumes 下。

  比如接上个叫做 USBHD的移动硬盘,桌面上会显示出一个硬盘图标,它实际在哪里呢?

  在终端里执行 ls /Volumes/USBHD, 看看显示出的是不是这个移动硬盘的内容。

  根目录位置是 / 核心 Mach_kernel 就在这里,

  驱动所在位置 /Systme/Library/Extensions

  用户文件夹位置 /User/用户名

  桌面的位置 /User/用户名/Desktop

  文件通配符为星号 *

  注意:在 Unix系统中是区别大小写字符的,A.txt 不等于 a.txt。

  根目录标志 / 不是可有可无,cd /System 表示转到跟目录下的System中,而cd System 表示转到当前目录下的 System中

  ——————————————————————————————————————————————

  如何进入命令行操作模式

  再图形界面下,用finder 打开 应用程序 》实用程序》终端

  如果连图形界面都进不去了(比如安错了显示驱动),开机时按 F8,用-s参数启动,然后输入命令 mount -uw /

  获得权限

  为了防止误操作破坏系统,再用户状态下时没有权限操作系统重要文件的,所以先要取得root权限

  sudo -s

  然后输入密码,输入密码时没有任何回显,连星号都没有,只管输完回车就行了。

  ——————————————————————————————————————————————

  基本命令

  列出文件

  ls 参数 目录名

  例: 想看看跟目录下有什么,

  ls /

  想看看驱动目录下有什么,

  ls /System/Library/Extensions

  参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件

  转换目录

  cd

  例:想到驱动目录下溜达一圈

  cd /System/Library/Extensions

  建立新目录

  mkdir 目录名

  例:在驱动目录下建一个备份目录 backup

  mkdir /System/Library/Extensions/backup

  在桌面上建一个备份目录 backup

  mkdir /User/用户名/Desktop/backup

  拷贝文件

  cp 参数 源文件 目标文件

  例:想把桌面的Natit.kext 拷贝到驱动目录中

  cp -R /User/用户名/Desktop/Natit.kext /System/Library/Extensions

  参数R表示对目录进行递归操作,kext在图形界面下看起来是个文件,实际上是个文件夹。

  把驱动目录下的所有文件备份到桌面backup

  cp -R /System/Library/Extensions/* /User/用户名/Desktop/backup

  删除文件

  rm 参数 文件

  例:想删除驱动的缓存

  rm -rf /System/Library/Extensions.kextcache

  rm -rf /System/Library/Extensions.mkext

  参数-rf 表示递归和强制,千万要小心使用,如果执行了 rm -rf / 你的系统就全没了

  移动文件

  mv 文件

  例:想把AppleHDA.Kext 移到桌面

  mv /System/Library/Extensions/AppleHDA.kext /User/用户名/Desktop

  想把AppleHDA.Kext 移到备份目录中

  mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup

  更改文件权限

  chmod 参数 权限 文件

  例:把驱动目录下所有文件设定到root读写,其他用户只读

  chmod -R 755 /System/Library/Extensions

  参数R 表示递归,755表示各用户的权限

  更改文件属主

  chown 参数 用户:组 文件

  例:把驱动目录下的所有文件属主改成根用户

  chown -R root:wheel /System/Library/Extensions

  参数R 表示递归操作

  修复整个系统中文件的权限

  diskutil repairpermissions /

  严格的说这不是一个unix 命令,而是osx一个软件,记得修改或添加的驱动就执行一次。

  文本编辑

  nano 文件名

  例:编辑natit Info.plist

  nano /System/Library/Extensions/Natit.kext/Info.plist

  编辑完成后 用 Ctrl +O 存盘,Ctrl+X 退出

  另一个文本编辑软件是 vi,操作有些古怪,熟了是非常好用的,而且在所有类Unix系统中都它,走遍天下都不怕了。

  运行脚本命令

  sh 脚本文件名

  例 修改驱动后所有需要的操作存成一个脚本,以后修改了驱动后只要运行一次这个脚本就可以了,方便吧

  1. 终端中运行nano /clean

  2. 把下列代码粘贴到 nano 中

  rm -rf /System/Library/Extensions.kextcache

  rm -rf /System/Library/Extensions.mkext

  chown -R root:wheel /System/Library/Extensions

  chmod -R 755 /System/Library/Extensions

  diskutil repairpermissions /

  kextcache -k /System/Library/Extensions/

  3. Ctrl +O 存盘,Ctrl+X 退出

  4. 以后只要动了驱动,就在终端中运行一次 sh /clean

  ————————————————————————————————————

  小技巧

  用 Tab 键自动补齐命令

  比如想到 /System 目录中去,输入 cd /Sy 然后按一下Tab 键,命令就会自动补齐成 cd /System

  操作带名字中带有空格的文件和目录

  空格在命令中写成 \\空格, 比如要进入 My Documents,命令为 cd My\\ Documents

  查看命令的详细帮助

  man 命令名

  比如要看看 ls 命令的详细用法,执行 man ls

  ————————————————————————————————————

  典型操作流程

  (假设已经制作好清理脚本,记得每次操作前 sudo -s 获得系统权限)

  假设下载了一个显卡驱动 Natit.zip,在桌面解压得到了一个Natit.kext,该怎么做呢?

  为了保险起见,先把所有驱动备份了再说

  mkdir /User/用户名/Desktop/backup 在桌面上建立备份文件夹

  cp -R /System/Library/Extensions/* /User/用户名/Desktop/backup 备份驱动文件

  现在可以安心安装了

  cp -R /User/用户名/Desktop/Natit.kext /System/Library/Extensions 把它 拷贝到系统驱动目录位置

  sh /clean 执行清理脚本,操作完成

  重新开机失败,进不去桌面了,发现不应该安这个驱动,怎么恢复呢?

  开机按F8,用 -x 参数启动

  执行 mount -uw /

  rm -rf /User/用户名/Desktop/Natit.kext 删除这个驱动

  sh /clean 执行清理脚本,操作完成

  重启,回到原先状态了,不死心啊,没有特效怎么行呢,又听说需要修改 Natit的 Info. plist 文件才行,好,再来

  cp -R /User/用户名/Desktop/Natit.kext /System/Library/Extensions 把它 拷贝到系统驱动目录位置

  nano /System/Library/Extensions/Natit.kext/Info.plist

  编辑完成后 用 Ctrl +O 存盘,Ctrl+X 退出

  sh /clean 执行清理脚本,操作完成

  重启,这回对了,显卡特效都有了,该弄声卡了,天知道会出什么事,得把现有成果保护好。

  mkdir /User/用户名/Desktop/gooddrivers 专为有效驱动建个目录

  cp -R /System/Library/Extensions/Natit.kext /User/用户名/Desktop/gooddrivers 备份

  这个声卡要求把 AppleHDA.kext 删除和编辑 AppleAzaliaAudio.kext中的Info.plist 文件,谁知道以后会不会还用AppleHDA呢,不如暂时禁用吧。

  mkdir /System/Library/Extensions/disabled 建立个禁用目录

  mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/disabled 移动过去

  nano /System/Library/Extensions/Natit.kext/AppleAzaliaAudio.kext/Info.plist

  编辑完成后 用 Ctrl +O 存盘,Ctrl+X 退出

  sh /clean 执行清理脚本,操作完成

  成功了,也把修改好的驱动备份一下把。

uname 命令只能获取内核版本信息,而不是获取Mac OS 本身信息。欲获取Mac OS 本身

版本信息,可以使用sw_vers命令,输出如下:

YYC-MAC: yyc$ sw_vers

ProductName:    Mac OS X

ProductVersion: 10.5.5

BuildVersion:   9F33

也可以通过正则表达式配合sw_vers直接过滤出版本号来:

YYC-MAC: yyc$ sw_vers grep 'ProductVersion:' grep -o '[0-9]*\.[0-9]*\.[0-9]*'

10.5.5

相关文章
|
3月前
|
人工智能 网络安全 数据安全/隐私保护
操作系统的演进:从命令行到图形用户界面
本文将带领读者穿越时光隧道,探索操作系统的发展历程。我们将从最早的命令行界面(CLI)开始,逐步走向现代的图形用户界面(GUI)。通过这篇文章,你将了解到操作系统如何适应技术变革,满足用户需求,以及它们是如何塑造我们今天数字生活的。让我们一起解锁操作系统的历史密码,发现那些改变了世界的创新故事。
|
3天前
|
人工智能 数据可视化 vr&ar
操作系统的哲学:从命令行到图形界面的演变
【10月更文挑战第22天】 本文探讨了操作系统用户界面(UI)的发展,特别是从早期的命令行界面(CLI)到现代图形用户界面(GUI)的转变。通过分析这一转变背后的技术、社会和心理因素,我们不仅能够理解操作系统设计的演变,还能够洞察人类与技术互动方式的根本变化。文章采用总分总结构,先概述操作系统UI的历史发展,然后详细分析CLI和GUI的特点及其对用户的影响,最后总结这一转变对人类生活和技术发展的深远意义。
10 3
|
22天前
|
人工智能 Unix 人机交互
揭秘操作系统:从命令行到图形界面的演变之旅
【10月更文挑战第3天】本文将带你穿越时空,探索操作系统从简单的命令行界面(CLI)如何进化为今天广泛使用的图形用户界面(GUI)。我们将一探究竟,了解这一变革背后的故事和技术进步,同时通过代码示例,揭示现代操作系统如何实现这一转换。文章不仅回顾了历史,还展望了未来可能的技术革新,旨在激励读者思考操作系统设计的哲学和未来发展方向。
32 4
|
8天前
|
人工智能 搜索推荐 物联网
操作系统的进化之路:从命令行到智能时代
【10月更文挑战第18天】 本文将带你穿越操作系统的演变历程,从最初的命令行界面到今天的智能操作系统。我们将探讨操作系统如何从简单的任务管理工具发展成为支持复杂应用程序和人工智能的多功能平台。
15 0
|
26天前
|
Linux C语言 iOS开发
MacOS环境-手写操作系统-06-在mac下通过交叉编译:C语言结合汇编
MacOS环境-手写操作系统-06-在mac下通过交叉编译:C语言结合汇编
14 0
|
2月前
|
物联网 iOS开发 MacOS
操作系统的演变之旅:从命令行到图形界面
在数字世界的长河中,操作系统作为计算机技术的核心,不断演进,塑造着我们与机器交互的方式。本文将带您穿越时空,探索操作系统从最初的命令行接口(CLI)到现代图形用户界面(GUI)的转变历程,揭示这一进程如何深刻影响我们的工作和日常生活。
48 7
|
2月前
|
物联网 Linux Android开发
探索操作系统的核心:从命令行到图形用户界面的演变
在数字时代的浪潮中,操作系统作为计算机硬件与软件之间的桥梁,其发展历程映射了技术进步的足迹。本文将通过浅显易懂的叙述,带领读者一探究竟,从早期的命令行界面(CLI)到现代图形用户界面(GUI)的转变,揭示这一变迁背后的意义及其对日常生活的深远影响。
42 1
|
2月前
|
人工智能 Linux iOS开发
操作系统的演变:从命令行到图形界面
在这篇文章中,我们将探索操作系统的发展历史,从最初的命令行界面到现代的图形用户界面。我们将了解操作系统的基本功能和重要性,以及它们如何随着时间的推移而演变。我们还将讨论一些著名的操作系统,如Windows、macOS和Linux,并了解它们的特点和优势。最后,我们将展望未来的操作系统发展趋势,包括人工智能和虚拟现实等新技术的影响。
|
3月前
|
数据可视化 Linux UED
探索操作系统:从命令行到图形界面的演变
【8月更文挑战第31天】 本文将带您穿越时空,探索操作系统的发展历程。我们将从最初的命令行界面(CLI)开始,逐步走向现代的图形用户界面(GUI)。通过深入浅出的语言和实际代码示例,我们将揭示操作系统如何影响我们的日常生活和工作。准备好跟随我们的脚步,一起揭开操作系统的神秘面纱吧!
|
3月前
|
安全 Linux 开发工具
探索Linux操作系统:从命令行到脚本编程
【8月更文挑战第31天】在这篇文章中,我们将一起潜入Linux操作系统的海洋,从最基础的命令行操作开始,逐步深入到编写实用的脚本。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供新的视角和实用技能。我们将通过实际代码示例,展示如何在日常工作中利用Linux的强大功能来简化任务和提高效率。准备好了吗?让我们一起开启这段旅程,探索Linux的奥秘吧!