Mac Command-Line

command_line

引言:图形化界面很方便,命令行界面很极客。

时间:2017年11月06日

作者:JustDo23

关键字:命令行 Command-Line terminal shell

01. 简介

命令行界面Command-Line Interface 通过指令执行操作,节省资源运行高效

Linux 系统有 BashWindows 系统有 Windows PowerShell

02. 指令

指令均在 Mac 电脑执行,在 Windows 可能有不同指令。

  1. 查看当前用户

    $ whoami
    
  2. 显示当前的目录

    $ pwd
    
  3. 切换目录

    # 切换到当前目录
    $ cd .
    # 切换到当前目录的上级目录
    $ cd ..
    # 切换到当前目录内某个目录
    $ cd Desktop
    # 切换到系统根目录
    $ cd /
    # 切换当前用户根目录
    $ cd ~
    
    • 使用 Tab 按钮快速提示
  4. 查看文件列表

    # 列出当前目录下文件列表
    $ ls
    # 列出所有文件包含隐藏文件
    $ ls -a
    # 以列表详细信息形式列出文件列表
    $ ls -l
    # 两种组合
    $ ls -al
    
  5. 清除屏幕

    $ clear
    $ cls
    
    • 快捷键 Command + K
  6. 创建文件夹

    $ mkdir dirName
    
  7. 创建文件

    # 若没有便创建空文件
    $ touch fileName
    
  8. 文本编辑

    # 使用 nano 编辑
    $ nano fileName
    
    • 提示 Ctr + O 存盘
    • 提示 Ctr + X 退出
    • 更多是使用 Vim 编辑器
  9. 查看文件内容

    # 打印文件内容
    $ cat fileName
    # 同时打印两个文件内容
    $ cat fileNameA fileNameB
    # 添加行号
    $ cat -n fileName
    
  10. 复制与移动

# 复制文件
$ cp oldFileName newDirNewName
# 移动文件[重命名]
$ mv oldFileName newDirNewName
# 复制文件夹及内部子文件
$ cp -r sourceDirName targetDirName
  • 移动 命令可用于文件及文件夹的 重命名
  1. 文本内容操作
# 把一个文本内容复制到另一个
$ cat fileNameA > fileNameB
# 清空一个文本
$ cat /dev/null > fileName
  • 目标文件不存在自动创建
  • 参数 > 操作源文件内容会覆盖目标文件内容
  • 参数 >> 操作源文件内容追加到目标文件内容之后
  1. 删除
# 删除一个文件且不可用于删除文件夹
$ rm fileName
# 删除一个空的文件夹且不可删除不为空文件夹
$ rmdir emptyDirName
# 删除文件夹及内部所有文件
$ rm -r dirName
$ rm -rf dirName
# 删除之前提示并确认
$ rm -i fileName
  • 参数 -r 表示递归操作
  • 参数 -f 表示强制操作
  1. 查找
# 查找当前目录下所有后缀为 .txt 的文件
$ find *.txt
# 更多
$ find . -name "*.txt" -print
  • 命令中使用了通配符 *
  1. 可视化程序打开
  • open 命令用于打开文件目录执行程序;功能类似双击
# 使用 Finder 打开当前目录
$ open .
# 使用 Finder 打开指定目录
$ open dirName
# 使用默认程序打开制定文件
$ open fileName
# 打开系统中的计算器
$ open /Applications/Calculator.app
  1. 查看命令手册
# man 指令名
$ man command
  • 键盘按下 q 进行退出
  1. 显示文件类型
# 文件或者目录
$ file name
# 显示 inode 内容
$ stat name
  • 例如图片格式尺寸等信息
  1. 查看本机 IP 地址
$ ifconfig
  1. 退出
$ exit

03. 折腾

  1. 文件对比

    # 指定两个文本文件进行
    $ diff fileNameA fileNameB
    # 并排格式输出更直观
    $ diff fileNameA fileNameB -y -W 50
    
    • 会逐行进行文本对比
    • 指定文本目录则会比较子目录相同文件名的文件
    • 参数 -y 表示并列方式显示两文件异同
    • 参数 -W 50 表示并列情况下的栏宽
    diff
    • 符号 | 表示该行内容不同
    • 符号 < 表示后面文件比前面文件一行
    • 符号 > 表示后面文件比前面文件一行
  2. 分页查看文本

    # 一页一页形式查看
    $ more fileName
    # 多行空格合并一行
    $ more -s fileName
    # 升级版命令
    $ less fileName
    
    • 按下空格进行翻页
    • 按下 b 进行翻页
  3. 文本输出

    # 控制台输出指定文本
    $ echo string
    # 等价于
    $ echo "string"
    # 转义字符,输入双引号
    $ echo "\"string\""
    # 字符输入指定文本,覆盖
    $ echo string > fileName
    # 字符输入指定文本,追加
    $ echo string >> fileName
    # 原样输出字符,不进行转义
    $ echo '$name\"'
    # 显示指令执行结果
    $ echo `date`
    
    • 单引号包裹的字符进行转义
    • 反引号可以包裹指令
    # 换行问题在脚本中常见
    # 换行
    $ echo "Hello \n World."
    # 或者
    #!/bin/sh
    echo -e "OK! \n" # -e 开启转义
    echo "It it a test"
    # 不换行
    echo -e "OK! \c" # -e 开启转义 \c 不换行
    echo "It is a test"
    

04. 功能

  1. 时间

    # 显示系统当前具体时间
    $ date
    # 日历显示当前月份
    $ cal
    # 显示 Julian 日历
    $ cal -j
    # 日历显示指定年份
    $ cal year
    # 日历显示指定年份指定月份
    $ cal month year
    # 统计给定所花费的总时间
    $ time command
    
  2. 关机

    # 立即关机
    $ sudo shutdown -h now
    # 10分钟后关机
    $ sudo shutdown -h +10
    # 晚上八点关机
    $ sudo shutdown -h 20:00
    
  3. 显示隐藏文件

    # 显示隐藏文件
    $ defaults write com.apple.finder AppleShowAllFiles -bool true
    $ defaults write com.apple.finder AppleShowAllFiles YES
    # 隐藏隐藏文件
    $ defaults write com.apple.finder AppleShowAllFiles -bool false
    $ defaults write com.apple.finder AppleShowAllFiles NO
    
  4. 释放内存及硬盘

    # 类似重启
    $ purge
    
  5. 打开应用

    # 打开程序
    $ open -n /Applications/Safari.app
    

05. 系统设置

  1. 修改用户密码

    # 修改当前用户密码
    $ passwd
    
    • 键入旧密码及新密码
  2. 环境变量

    # 查看全部环境变量
    $ env
    # 查看当前终端内核
    $ echo $SHELL
    # 查看当前用户环境变量
    $ echo $PATH
    
  3. 文件权限

    # 设置所有人可读取
    $ chmod ugo+r fileName
    $ chmod a+r fileName
    # 仅文件拥有者可以执行
    $ chmod u+x fileName
    # 设置当前目录下所有文件及子目录权限
    chmod -r a+r *
    
    • 文件调用权分三级:
      • 字母 u 代表文件拥有者
      • 字母 g 代表群组
      • 字母 o 代表其他
      • 字母 a 代表三者皆是
    • 权限操作有三种:
      • 符号 + 代表增加权限
      • 符号 - 代表取消权限
      • 符号 = 代表唯一设定权限
    • 权限类型有四种:
      • 字母 r 代表可读取
      • 字母 w 代表可写入
      • 字母 x 代表可执行
      • 字母 X 代表只有当该文件是个子目录或者该文件已经被设定过为可执行
    # 使用数字设置权限
    $ chmod 777 fileName
    
    • r=4 w=2 x=1
      • 若要rwx属性则4+2+1=7
      • 若要rw-属性则4+2=6
      • 若要r-x属性则4+1=5

06. 拓展

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

推荐阅读更多精彩内容

  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 8,090评论 1 19
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,246评论 9 467
  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,158评论 2 33
  • 相信很多使用苹果本的同学对使用command line比较陌生,只是习惯用一些可视化的工具来操作,但是如果你作为一...
    兜的哈阅读 4,764评论 0 2
  • 一、基础语法: 1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文...
    蒋_Sir阅读 9,142评论 1 4