Mac 常用终端命令

9,914 阅读6分钟

绝对路径

大家都知道,在我们平时使用计算机时要找到需要的文件就必须知道文件的位置,而表示文件的位置的方式就是路径,例如只要看到这个路径:c:/website/img/photo.jpg我们就知道photo.jpg文件是在c盘的website目录下的img子目录中。这样完整的描述文件位置的路径就是绝对路径。我们不需要知道其他任何信息就可以根据绝对路径判断出文件的位置。(也可以认为以"/"开头的都为绝对路径)

相对路径

所谓相对路径,顾名思义就是自己相对与目标位置。不论将这些文件放到哪里,只要他们的相对关系没有变,就不会出错。   另外我们使用“../”来表示上一级目录,“../../”表示上上级的目录,以此类推。(也可认为不是以"/"开头的都是相对路径)

举个栗子

   示例一
   比如说你的C盘ABC文件夹下有两个文件1和2(它们都在ABC文件下),如果要文件1说出文件2的位置
   (也就是路径),那么它有两种表示方法:

  1.绝对路径:  C:\ABC\2  
   因为它指明2文件在C盘ABC文件下,从最大的目录C盘开始表示出来.   
  2.相对路径:  2
   因为1文件和2文件都在C:\ABC下,所以它们的路径前面"C:\ABC"都是一样,就不用表示出来了.
   示例二
   比方C盘ABC文件夹有个1文件,还有一个DEF文件夹,而DEF文件下有个2文件1和2的文件路径分别为:
   (都是绝对路径)
   C:\ABC\1
   C:\ABC\DEF\2
   如果让1文件来表示2文件的路径
   * 绝对路径: C:\ABC\DEF\2
   * 相对路径: DEF\2 (因为1和2文件前面的C:\ABC这段路径相同就不用写出来了)。

常用mac终端操作命令符

1. 显示当前目录的路径

    显示当前目录的路径(让你实时查看当前所处的路径)    
    pwd

2. 查看当前目录下的内容(让你实时查看当前路径下的内容)

    ls 参数 目录名
    参数: -w 显示中文,-l 详细信息, -a 包括隐藏文件,
    每一行开头是 “d” 则为文件夹,开头是 “-” 则为文件。
    ls                 显示在当前目录下的所有文件或文件夹
    ls + 目录          显示在该目录下的所有文件或文件夹
    ls + 空格 +   -a   显示当前目录下隐藏文件
    ls + 空格 +   -l   显示当前目录下详细信息
    ls + 空格 +   -R   显示当前目录下子目录文件      
    ls + 空格 +  -w    显示当前目录下中文文件
    ls + 空格 +  -la   显示所有文件
    例: 看看驱动目录下有什么:ls /System/Library/Extensions

3.切换路径(也可称为转化目录) 就是将从一个路径中,进入到另外一个路径

    cd 目录名
    cd .                      表示当前目录
    cd ..                     表示返回上一级目录
    cd ../..                  表示返回上两级
    cd ../.. /..              表示返回上三级目录
    cd  + 空格 + 下一目录  表示将从当前路径进入到下一目录
    cd  + 空格 + 〜            表示从当前目录进入到用户根目录
    cd  + 空格  + /            表示从当前目录进入根目录
    cd  + 空格 + ./            表示从当前目录进入到当前目录(一个点"." 表示当前)
    例:想到驱动目录下溜达一圈:cd /System/Library/Extensions

4. 建立新目录(也可理解为创建文件夹)

    mkdir 目录名 
    mkdir + 空格 +文件夹名       表示创建一个文件夹
    mkdir + 空格 + 绝对路径      表示创建一个文件夹和上面的功能相同,
    只不过上面是通过相对路径创建, 下面是通过绝对路径创建.
    例:在驱动目录下建一个备份目录 backup:mkdir /System/Library/Extensions/backup

5. 删除目录(也可理解为删除文件夹)

    rmdir 目录名
    rmdir + 空格 + 文件夹名      表示删除一个文件夹
    rmdir + 空格 + 绝对路径      表示删除一个文件夹和上面的功能相同,只不过上面是通过相对路径删除,下面是通过绝对路径删除
    例:在桌面删除一个叫new的文件  MacBook-Air:Desktop admin$ rmdir  new

6.建立新文件

    touch 文件名        
    例:在当前目录下建一个备份文件 backup:touch backup.txt

7.删除文件

    rm  参数 文件 参数-rf          表示递归和强制,千万要小心使用,如果执行了 rm -rf /
    你的系统就全没了 
    rm  + 空格 + 文件名和格式        表示删除一个文件
    rm   + -r    + 文件夹          表示强制删除文件夹中包含文件的文件夹
    (当文件夹中包含有文件, 通过"rmdir + 空格+ 文件夹名"的方式                                   是删不掉文件夹的,只有通过"rm + -f + 文件夹名",进行强制删除)
    rm   + -rf   + 文件夹          表示强制删除文件夹中包含文件的文件夹
    (和"rm + -r + 文件夹名" 功能相同)
    注意: rm 可以删除多个文件而不止一个文件 ,但是两个文件的路径必须用空格隔开.
    例:想删除驱动的缓存:rm -rf /System/Library/Extensions.kextcache                                                    rm -rf /System/Library/Extensions.mkext     

8. 拷贝

    cp 参数 源文件 目标文件        
    例:想把桌面的 Natit.kext 拷贝到驱动目录中  cp -R /User/用户名/Desktop/Natit.kext  /System/Library/Extensions  
    参数 R 表示对目录进行递归操作,kext 在图形界面下看起来是个文件,实际上是个文件夹。            
    把驱动目录下的所有文件备份到桌面 backup:cp -R /System/Library/Extensions/ 
    /User/用户名/Desktop/backup

9.移动文件和重命名文件

    mv 源文件 目标文件
    mv + 需要移动的文件或文件夹 + 空格 + 移动到的路径(这里路径可以是相对路径,也可以是绝对
    路径);mv + a.c + 空格 +b.c 表示将a.c 重命名为b.c
    例:想把 AppleHDA.Kext 移到桌面:
    mv /System/Library/Extensions/AppleHDA.kext  /User/用户名/Desktop

10.文本编辑

    vim 文件名
    vim + 文件名 表示编辑文件内容
    例:  
    vim /System/Library/Extensions/Natit.kext/Info.plist 
    编辑完成后 用 Ctrl +O 存盘,Ctrl+X 退出 
    注意:
  * 在默认的"指令模式"下按 i 进入编辑模式 
  * 在非指令模式下按 ESC 返回指令模式 
  * 在"指令模式"下输入: 
    :w  保存当前文件 
    :q 退出编辑,如果文件为保存需要用强制模式 
    :q!	强制退出不保存修改 
    :wq	组合指令, 保存并退出 
  * 在"指令模式"下移动: 
    h	左 
    j	下 
    k	上 
    l	右 

11. 清屏

    clear

12.打开某个文件,文件夹或应用

open
  * 如果是open .则是打开当前命令里的目录,如果要打开指定的文件夹或者文件则格式为open 要打开的路径即可。(这里绝对路径或相对路径都可以)
  * open命令可以在终端中开启应用,使用-n可以开启多个相同应用。比如你可以使用下面的命令开启新Safari窗口
    open -n /Applications/Safari.app/