zoukankan      html  css  js  c++  java
  • Mac终端基本指令,一些实用命令的收集.

    基本命令
    1、列出文件
    ls 参数 目录名        例: 看看驱动目录下有什么:ls /System/Library/Extensions
    参数 -w 显示中文,-l 详细信息, -a 包括隐藏文件


    2、转换目录     

    cd    例:想到驱动目录下溜达一圈   cd /System/Library/Extensions

    3、建立新目录
    mkdir 目录名     例:在驱动目录下建一个备份目录 backup     mkdir /System/Library/Extensions/backup
    在桌面上建一个备份目录 backup    mkdir /User/用户名/Desktop/backup

    rmdir 目录名   仅限空文件夹

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

    5、删除文件
    rm 参数 文件   例:想删除驱动的缓存  rm -rf /System/Library/Extensions.kextcache     rm -rf /System/Library/Extensions.mkext
    参数-rf 表示递归和强制,千万要小心使用,如果执行了 rm -rf / 你的系统就全没了

    6、移动文件
    mv 文件   例:想把AppleHDA.Kext 移到桌面    mv /System/Library/Extensions/AppleHDA.kext /User/用户名/Desktop
    想把AppleHDA.Kext 移到备份目录中   mv /System/Library/Extensions/AppleHDA.kext /System/Library/Extensions/backup

    7、文本编辑
    nano 文件名   例:编辑natit Info.plist     nano /System/Library/Extensions/Natit.kext/Info.plist

    目录操作

    命令名                       功能描述                                             使用举例

    mkdir                        创建一个目录                                       mkdir dirname

    rmdir                         删除一个目录                                       rmdir dirname

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

    cd                             改变当前目录                                       cd dirname

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

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

    文件操作

    命令名                                 功能描述                                  使用举例

    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

    选择操作

    命令名                             功能描述                                       使用举例

    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

    进程操作

    命令名                     功能描述                                                 使用举例

    ps                           显示进程当前状态                                     ps u

    kill                         终止进程                                                     kill -9 30142

    时间操作

    命令名                           功能描述                                            使用举例

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

    cal                                   显示日历                                       cal 8 1996

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

    网络与通信操作

    命令名                                功能描述                                       使用举例

    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

    Korn Shell 命令              

     命令名                                 功能描述                                        使用举例

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

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

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

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

    其它命令

    命令名                                  功能描述                                         使用举例

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

    clear                       清除屏幕或窗口内容                                        clear

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

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

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

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

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

    du                                  查询磁盘使用情况                         du -k subdir
    df /tmp                          显示文件系统的总空间和可用空间

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

    Mac OS X 终端命令开启功能

    1.Lion下显示资源库
    方法一:
    显示
    在“终端”中输入下面的命令:
    chflags nohidden ~/Library/

    隐藏
    在“终端”中输入下面的命令:
    chflags hidden ~/Library/

    方法二:
    打开Finder,菜单中选择前往按住option键就会显示资源库项(每次打开都需要重复操作一次)。


    2.Finder显示隐藏文件
    显示隐藏文件
    在“终端”中输入下面的命令:
    defaults write com.apple.finder AppleShowAllFiles -bool true
    killall Finder

    恢复隐藏文件
    在“终端”中输入下面的命令:
    defaults write com.apple.finder AppleShowAllFiles -bool false
    killall Finder

    3.Xcode卸载
    在“终端”中输入下面的命令:
    sudo /Library/uninstall-devtools –mode=all

    为实际安装的目录,默认情况下Xcode安装在/Developer目录下,即可执行
    sudo /Developer/Library/uninstall-devtools –mode=all

    4.在Finder标题栏显示完整路径
    在“终端”中输入下面的命令:
    defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
    killall Finder

    5.去掉窗口截屏的阴影
    对窗口进行截屏的时候(Command-Shift-4, 空格),得到的图片周围会自动被加上一圈阴影。
    如果你不喜欢这个阴影的效果,可以把它关掉。
    在“终端”中输入下面的命令:
    defaults write com.apple.screencapture disable-shadow -bool true
    killall SystemUIServer

    6.强制Safari在新标签中打开网页
    Safari是默认支持标签浏览的。但是,我们在页面上点击链接或者在其他应用程序中点击链接的时候,
    Safari往往是打开了一个新的窗口,导致页面上的Safari窗口过多,不好管理。通过下面这个小窍门,
    我们可以让Safari默认是在一个新标签中打开网页。
    在“终端”中输入下面的命令:
    defaults write com.apple.Safari TargetedClicksCreateTabs -bool true

    7.改变截屏图片的保存位置
    Mac OS提供了非常方便的截屏快捷键,可以让我们非常快速的对整个屏幕、部分屏幕或者应用程序窗口进行截屏。不过,这个截屏功能有一个不足之处,就是只能将截 屏图片保存到桌面。如果我们截取的图片特别多,就会让桌面显得特别凌乱。那有没有办法来修改截屏图片的默认保存位置呢?有。方法非常简单,只要在“终端” 中输入下面的命令就可以了。
    defaults write com.apple.screencapture location 存放位置
    killall SystemUIServer

    在输入命令的时候,将“存放位置”替换成真正的文件夹就可以了。例如,你希望存放到自己用户目录的Screenshots文件夹下,就输入
    defaults write com.apple.screencapture location ~/Screenshots

    8.获取终端的管理管理员权限

    命令:sudo –s

    9.清除系统垃圾

    类似与清除系统在运行中所产生的一些碎片文件,用于系统的维护,一个十分有用处的命令,只要有这个命令,就可以不使用任何系统垃圾清除软件了。

    命令:sudo periodic daily weekly monthly

    然后屏幕显示“password:”,输入你的密码即可。

    10.文件权限变更

    顾名思义,将一个文件的使用权限进行变更。

    命令:chown   new owner   file_mame

    这里的new owner指的是新拥有这个文件权限的使用者的名字,file_name指的是文件名。

    例如: chown  root  LALA

    就是指文件LALA只有超级管理员可以使用(当然超级管理员可以拥有任何文件的权限,只不过在这里举一个例子)。

    11、比较两个文件的异同

    1)、比较两文件的差异
    $diff in_rgb.txt   out_rgb.txt
    2)、比较两个文件的差异,只列出有无差异,并不显示详细信息
    $diff -q in_rgb.txt   out_rgb.txt        //若是没有差异则什么也不会显示
    3)、比较两个文件,将两个文件的全部内容分别显示在左右两侧
    $diff -y in_rgb.txt      out_rgb.txt  
    4)、比较两个文件,仅在左侧显示相同内容,在两侧显示不同内容
    $diff -y --left-column in_rgb.txt    out_rgb.txt
    5)、比较两个文件,只将不同的行显示在左右两侧
    $diff -y --suppress-common-line  in_rgb.txt      out_rgb.txt
    6)、显两文件不同处,同时显示相异处前后内容
    $diff -c   in_rgb.txt     out_rgb.txt
    7)、比较a.txt与b.txt两个文件,显示相异处前后各两行的内容,并标出这两个文件的不同处
    $diff -c -2 in_rgb.txt    out_rgb.txt
    8)、比较a.txt与b.txt两个文件,显示相异处前后部分的内容,并将结果以合并的方式列出
    $diff -u in_rgb.txt     out_rgb.txt
    9)、比较a.txt与b.txt两个文件的不同,并显示相异处前后各行的内容,并将结果以合并的方式列出
    $diff -U 2 in_rgb.txt      out_rgb.txt
    10)、比较dir1与dir2两个目录中文件的异同
    $diff dir1 dir2
    11)、忽略内容中大小写的差异
    $diff -is dir1 dir2
    12)、比较dir1与dir2目录中的文件时,若文件中包含有question字符串,则忽略不比较此行
    $diff -I question -s dir1 dir2
    13)、比较dir1与dir2目录中的文件,并以并列方式显示文件的相异之处
    $diff -y --suppress-common-lines dir1 dir2
    14)、比较dirA与dirB两个目录下文件的异同,比较时连同子目录下的文件一并比较
    $diff -r dirA dirB
    15)、比较dirA与dirB两个目录下文件的异同,比较时忽略名称为file1的文件
    $diff -x file1 dirA dirB
    16)、比较a.txt与b.txt两个文件的异同,但比较时不比较空格数目的不同
    $diff -b a.txt b.txt
    17)、比较a.txt与b.txt两个文件的异同,比较时忽略空行
    $diff -B a.txt b.txt
    18)、比较二进制文件
    $diff -a a.txt b.txt
    19)、a.c与b.c是C语言的程序代码文件,比较两者异同,不一样的地方,列出差异所在函数
    $diff -p a.c b.c
    20)、比较两个文件并忽略空白字符和空白行,且当文件相同时仅显示左侧文件内容
    $diff -bBy  --left-column   file1  file2
    更多的用法可自行查看文档
    2、还看到有一种利用shell脚本的 第一种:如果想对两个有序的文件进行比较,可以使用comm命令。 语法:comm [- 123 ] file1 file2 说明:该命令是对两个已经排好序的文件进行比较。其中file1和file2是已排序的文件。 comm读取这两个文件,然后生成三列输出:仅在file1中出现的行;仅在file2中出现的行; 在两个文件中都存在的行。如果文件名用“- ”,则表示从标准输入读取。 选项1、2或3抑制相应的列显示。例如 comm - 12就只显示在两个文件中都存在的行; comm - 23只显示在第一个文件中出现而未在第二个文件中出现的行; comm - 123则什么也不显示。 有一个问题就是,如果两个文件排序不一样的话,会出问题 第二种:grep命令法 命令如下:grep -vwf file1 file2 统计file1中没有,file2中有的行
    3、如果文本文件没有排序,可以使用Diff命令,如上 该命令的功能为逐行比较两个文本文件,列出其不同之处。它比comm命令完成更复杂的检查。 它对给出的文件进行系统的检查,并显示出两个文件中所有不同的行,不要求事先对文件进行排序。 语法:diff [选项] file1 file2 说明:该命令告诉用户,为了使两个文件file1和file2一致,需要修改它们的哪些行。如果用“- ”表示file1或fiie2,则表示标准输入。 如果file1或file2是目录,那么diff将使用该目录中的同名文件进行比较。例如: diff /usr/xu mine 把目录/usr/xu 中名为mine的文件与当前目录中的mine文件进行比较。 diff能区别块和字符设备文件以及FIFO(管道文件),不会把它们与普通文件进行比较。 如果file1和file2都是目录,则diff会产生很多信息。如果一个目录中只有一个文件,则产生一条信息, 指出该目录路径名和其中的文件名。 diff各选项的含义如下: - b 忽略行尾的空格,而字符串中的一个或多个空格符都视为相等。如How are you与How are you被视为相同的字符串。 - c 采用上下文输出格式(提供三行上下文)。 - C n 采用上下文输出格式(提供n行上下文)。 - e 产生一个合法的ed脚本作为输出。 - r 当file1和file2是目录时,递归作用到各文件和目录上。
    4、比较二进制文件,cmp命令 用途 比较两个文件的内容并报告不同的第一个字符。 语法 cmp [ -l | -s ] File1 File2 描述 cmp 命令比较 File1 和 File2 参数指定的文件,并将结果写到标准输出。如果为 File1 或 File2 参数指定 -(减号), 则 cmp 命令读取该文件的标准输入。只可以从标准输入读取一个文件。在缺省条件下,如果文件相同, 则 cmp 命令不显示任何内容。如果它们不同,则 cmp 命令显示发生不同的第一个字节数和行数。如果指定了 -l 标志, 并且如果一个文件是另一文件的初始后继(即,如果在查找任何差别之前,cmp 命令读取文件中的文件结束符), 则 cmp 命令记下它。通常,使用 cmp 命令比较非文本文件,使用 diff 命令比较文本文件。 标志 -l 对于每个不同,(小写字母 L)显示十进制的字节数和八进制的不同字节。 -s 只返回退出值。值 0 指示相同的文件;值 1 指示不同的文件;值 2 指示不可访问的文件或缺少选项。 退出状态 该命令返回以下退出值: 0 文件相同。 1 文件不同。即使一个文件是另一个文件的初始后继(一个文件与另一个文件的第一个部分相同),也给出该值。 >1 发生错误。
  • 相关阅读:
    POJ3159 Candies —— 差分约束 spfa
    POJ1511 Invitation Cards —— 最短路spfa
    POJ1860 Currency Exchange —— spfa求正环
    POJ3259 Wormholes —— spfa求负环
    POJ3660 Cow Contest —— Floyd 传递闭包
    POJ3268 Silver Cow Party —— 最短路
    POJ1797 Heavy Transportation —— 最短路变形
    POJ2253 Frogger —— 最短路变形
    POJ1759 Garland —— 二分
    POJ3685 Matrix —— 二分
  • 原文地址:https://www.cnblogs.com/fuunnyy/p/5712857.html
Copyright © 2011-2022 走看看