MAC常用终端命令

1.了解什么是绝对路径和相对路径

   来自百度经验中的一段解释:

1> 什么是绝对路径:

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

2> 什么是相对路径:

  所谓相对路径,顾名思义就是自己相对与目标位置。不论将这些文件放到哪里,只要他们的相对关系没有变,就不会出错。 

 另外我们使用“../”来表示上一级目录,“../../”表示上上级的目录,以此类推。(也可认为不是以"/"开头的都是相对路径)


3> 举例说明

(1) 示例一            比如说你的C盘ABC文件夹下有两个文件1和2(它们都在ABC文件下),如果要文件1说出文件2的位置(也就是路径),那么它有两种表示方法:           * 绝对路径:  C:\ABC\2                  因为它指明2文件在C盘ABC文件下,从最大的目录C盘开始表示出来.           * 相对路径:  2                因为1文件和2文件都在C:\ABC下,所以它们的路径前面"C:\ABC"都是一样,就不用表示出来了. (2)示例二           比方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这段路径相同就不用写出来了)。     

2.常用mac终端操作命令符

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

pwd

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

ls 参数 目录名        参数: -w 显示中文,-l详细信息,-a包括隐藏文件,每一行开头是 “d” 则为文件夹,开头是 “-” 则为文件。         ls                 显示在当前目录下的所有文件或文件夹         ls + 目录          显示在该目录下的所有文件或文件夹         ls + 空格 +   -a   显示当前目录下隐藏文件         ls + 空格 +   -l   显示当前目录下详细信息         ls + 空格 +   -R   显示当前目录下子目录文件               ls + 空格 +  -w    显示当前目录下中文文件        ls + 空格 +  -la  显示所有文件        ls + 空格 +  -G    带颜色显示        例: 看看驱动目录下有什么: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)文本编辑

nano 文件名        nano + 文件名 表示编辑文件内容        例:              nano /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/

12)编译(比如.c文件 a.c

cc -c +a.c(需要编译的文件)   它的作用是编译将要编译的文件, 其中-c的意思就是Compile(编译的意思),它生成的结果是a.o的一个编译之后的目标文件.

cc  a.o它的作用是生成可执行文件a.out

  . /a.out 它的作用就是运行一个可执行a.out文件.打印出想要的结果.(注意"./a.out"前面没有 cc);

13) 更改文件权限

  chmod

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

                 chmod -R 755 /System/Library/Extensions  参数R 表示递归,755表示各用户的权限

14)脚本文件名

  sh

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

                 chmod -R 755 /System/Library/Extensions  参数R 表示递归,755表示各用户的权限

15)权限管理

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

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

              以下是一些常用命令~清理系统-----使用以下命令:

              sudo periodic daily      然后回车,输入管理员密码即可。

              suod periodic weekly  然后回车,运行的是每周清理。

              suod periodic monthly 然后回车,运行的是每月清理

              sudo periodic daily weekly monthly 然后回车,表示三个清楚一起做了

注意: sudo命令:任何命令前都可以加上sudo,sudo表示是管理员权限,可直接管理系统中较重要的文件,一般使用需要询问密码。输入管理员密码后,才能完成操作。


16)brew

  brew 

  解释:

        这个严格上说不是一个本地命令。但是没有一个OS X高级用户会离得开Homebrew。它的官网将它定义为“OS X上丢失的包管理工具”,它说的很正确。如    果你在Linux系统上使用过apt-get命令,你会在Homebrew中有找到组织的感觉。

         brew 让你轻松的从开源社区获取成千上万的开放的实用工具和软件库。

        例如,brew install imagemagick 命令会为你安装ImageMagick工具,它使一个功能强大的工具包,它可以从事任何从GIF动画到几十种不同类型的图片转            换任务。brew install node 命令会为你安装NodeJS,它是一个最新的热门的在服务器端开发和运行JavaScript程序的工具。

        你同样也可以用Homebrew来获得乐趣:brew install archey 命令会为你安装  Archey,它是一个很酷的脚本,用来在一个多彩的Apple Logo显示你的Mac的配置。Homebrew的可选内容很广泛,同时它很容易创建新规则,一直都会有新的包被添加进来。             

17)合并静态库

  lipo                        lipo –create Release-iphoneos/libiphone.a Debig-iphonesimulator/libiphone.a –output libiphone.a

    * 解释:

          很简单,我将模拟器和设备的静态库文件合并成一个文件输出了,以后在发布可以库的时候不用发一个模拟器版的和一个真机版的了,这样子的一个库              可以在编译的时候自动识别需要连接的库。

  * 那lipo到底是什么呢?

          lipo源于mac系统要制作兼容powerpc平台和intel平台的程序。

          lipo 是一个在 Mac OS X 中处理通用程序(Universal Binaries)的工具。现在发售或者提供下载的许多(几乎所有)程序都打上了“Universal”标志,意

          味着它们同时具有 PowerPC 和 Intel 芯片能够处理的代码。不过既然你可能不在意其中的一个,你就能够使用 lipo 来给你的程序“瘦身”。比如你想

          让“便笺”应用程序只包含 Intel(i386)的代码:

          cd /Applications

          lipo Stickies.app/Contents/MacOS/Stickies -thin i386 -output Stickies.app/Contents/MacOS/Stickies.i386

          cd Stickies.app/Contents/MacOS/

          rm Stickies

          mv Stickies.i386 Stickies 

18)目录操作:

命令名功能描述使用举例

mkdir创建一个目录mkdir dirname

rmdir删除一个目录rmdir dirname

mvdir移动或重命名一个目录mvdir dir1 dir2

cd改变当前目录cd dirname

pwd显示当前目录的路径名pwd

ls显示当前目录的内容ls -la

19)文件操作:

命令名功能描述使用举例

cat显示或连接文件cat filename

od显示非文本文件的内容od -c filename

cp复制文件或目录cp file1 file2

rm删除文件或目录rm filename

mv改变文件名或所在目录mv file1 file2

find使用匹配表达式查找文件find . -name "*.c" -print

file显示文件类型file filename

20)选择操作:

命令名功能描述使用举例

head显示文件的最初几行head -20 filename

tail显示文件的最后几行tail -15 filename

cut显示文件每行中的某些域cut -f1,7 -d: /etc/passwd

colrm从标准输入中删除若干列colrm 8 20 file2

diff比较并显示两个文件的差异diff file1 file2

sort排序或归并文件sort -d -f -u file1

uniq去掉文件中的重复行uniq file1 file2

comm显示两有序文件的公共和非公共行comm file1 file2

wc统计文件的字符数、词数和行数wc filename

nl给文件加上行号nl file1 >file2

21)进程操作:

命令名功能描述使用举例

ps显示进程当前状态其选项说明如下:

-a   列出包括其他 users 的 process 状况。

-u   显示 user - oriented 的 process 状况 。

-x   显示包括没有 terminal 控制的 process 状况 。

-w  使用较宽的显示模式来显示 process 状况 。

kill终止进程kill -9 30142

22)编程操作

命令名功能描述使用举例

make维护可执行程序的最新版本make

touch更新文件的访问和修改时间touch -m 05202400 filename

dbx    命令行界面调试工具           dbx  a.out                             

xde图形用户界面调试工具xde   a.out

23)时间操作:

命令名功能描述使用举例

date显示系统的当前日期和时间date

cal显示日历cal 8 1996

time统计程序的执行时间time a.out

24)网络与通信操作:

命令名功能描述使用举例

telnet远程登录telnet hpc.sp.net.edu.cn

rlogin远程登录rlogin hostname -l username

rsh在远程主机执行指定命令rsh f01n03 date

ftp在本地主机与远程主机之间传输文件ftpftp.sp.net.edu.cn

rcp在本地主机与远程主机 之间复制文件rcp file1 host1:file2

ping给一个网络主机发送 回应请求ping hpc.sp.net.edu.cn

mail阅读和发送电子邮件mail

write给另一用户发送报文write username pts/1

mesg允许或拒绝接收报文mesg n

25)安全操作:

命令名功能描述使用举例

passwd修改用户密码passwd

chmod改变文件或目录的权限chmod ug+x filename

umask定义创建文件的权限掩码umask 027

chown改变文件或目录的属主chown newowner filename

chgrp改变文件或目录的所属组chgrp staff filename

xlock给终端上锁xlock -remote

26)Korn Shell 命令:

命令名功能描述使用举例

history列出最近执行过的 几条命令及编号history

r重复执行最近执行过的 某条命令r -2

alias给某个命令定义别名alias del=rm -i

unalias取消对某个别名的定义unalias del

27)其它命令:

命令名功能描述使用举例

uname显示操作系统的有关信息uname -a

clear清除屏幕或窗口内容clear

env显示当前所有设置过的环境变量env

who列出当前登录的所有用户who

whoami显示当前正进行操作的用户名whoami

tty显示终端或伪终端的名称tty

stty显示或重置控制键定义stty -a

du查询磁盘使用情况du -k subdir

df显示文件系统的总空间和可用空间df

w显示当前系统活动的总信息w

man     查看帮助相关命令符的用法           man ls        

purge   释放内存(purge命令可以清除内存和硬盘的缓存,与重启Mac的效果差不多。purge命令可以让不活跃的系统内存转变为可以使用的内存。

你只需在终端中输入下面的命令即可)

purge

caffeinate     阻止Mac运行屏幕保护和睡眠         caffeinate -t 3600     

chflags 隐藏文件或文件夹                         chflags hidden ~/Desktop/macx       隐藏

chflags nohidden ~/Desktop/macx   显示

zip        创建有密码保护的压缩文件          zip -e protected.zip ~/Desktop/macx.txt   

参考

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,233评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,013评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,030评论 0 241
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,827评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,221评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,542评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,814评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,513评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,225评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,497评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,998评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,342评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,986评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,812评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,560评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,461评论 2 266

推荐阅读更多精彩内容