您可以在macOS登录提示符下键入> console作为用户名(无需密码)以获取登录提示,该提示允许您直接登录到命令行终端并获取BASH shell。 获得BASH shell后,可以运行许多您在Linux上习惯使用的命令。很多时候,在Linux上使用的相同语法规则适用于macOS上的BASH:所有命令都区分大小写。 绝大部分命令都可以使用,列出了常规选项(-h)和POSIX选项(--help)。 手册页(man who)和info页面(info who)列出了大多数命令文档。 help命令显示BASH功能帮助(帮助显示)。 可以使用分号(date; who)链接命令。 可以使用管道(|)符号(ps aux | less)将一个命令的标准输出发送到另一个命令的标准输入。 命令的标准输出和标准错误可以重定向到文件(ls -l /Users > usersfile 2 > errorfile)。 单引号保护所有特殊shell字符,双引号保护大多数shell字符(变量是一个例外),反引号执行命令替换(echo The date is `date` ),反斜杠保护下一个字符(echo You owe \¥4.50)。 ~metacharacter表示用户的主目录。 Tab完成命令和文件路径。 Ctrl + C通过向前台进程发送SIGINT终止信号来取消命令。 通配符元字符可以与命令一起使用,并且正则表达式可以在文本实用程序中使用。 BASH控件结构和函数可用于创建BASH shell脚本。 注意:如果您希望以root用户身份执行系统管理,则必须首先使用Directory Utility应用程序 (在/System/Library /CoreServices/Applications中)启用root用户。打开此应用程序后,只需从“编辑”菜单中选择“更改根密码”即可。
常见的macOS命令 下面是一些常见的macOS命令,按一般功能组织罗列。您可以收藏或者把我们加入书签,方便您可以经常回顾查看。虽然这些命令的大多数选项在Linux和macOS之间是相同的,必要是还是的使用的命令的手册页。
macOS中的系统文档命令 - man 显示/搜索手册页数据库
- apropos 按关键字搜索手册页数据库
- info 显示/搜索信息页面数据库
- help 显示有关BASH功能的帮助
macOS 中的文件管理命令 - pwd 显示当前目录
- cd 更改当前目录
- ls 列出文件
- file 显示文件类型
- Locate 使用预定义数据库查找文件
- which 在PATH变量中搜索文件
- find 根据特定条件查找文件系统上的文件
- cp 复制文件和目录
- mv 移动/重命名文件和目录
- rm 删除文件和目录
- rmdir 删除空目录
- mkdir 创建空目录
- ln 创建硬链接; -s 选项用于创建符号链接
- chown 更改文件和目录的所有权
- chgrp 更改文件和目录的组所有权
- chmod 更改文件和目录的权限(模式)
- umask 更改用于确定默认权限的UMASK变量
macOS中的文本工具 - cat 将(连接)文本文件的内容连接到终端屏幕
- more 逐页查看文本文件的内容
- less 使用高级文本功能逐页查看文本文件的内容
- head 显示文本文件的开头
- tail 显示文本文件的结尾
- sort 对文本文件中的行进行排序
- wc 计算文本文件中的行数,单词和字符数
- grep 搜索正则表达式的文本文件
- egrep 搜索正则表达式的文本文件(包括扩展表达式)
- sed 使用搜索和替换功能编辑文本文件
- awk 使用预定义函数编辑和格式化文本
- ·vi(vim)vi文本编辑器(所有UNIX系统通用)
- emacs GNU Emacs文本编辑器
- ·nano 一个基于UNIX pico编辑器的易于使用的小型文本编辑器
macOS中的文件系统管理 - mount 将文件系统挂载到挂载点目录 - 或者,您可以使用mount_filesystem命令(其中filesystem是相应文件系统的名称) - 有关详细信息,请参阅man mount。
- umount 从挂载点目录卸载文件系统
- pdisk 可用于创建Apple磁盘分区
- newfs_type 在设备上创建新的文件系统(type = apfs,hfs,udf,exfat,msdos)
- fuser 确定访问某个文件,目录或终端的用户
- df 按文件系统显示磁盘可用空间
- du 按目录显示磁盘可用空间
- quota 显示特定用户的配额
- edquota 编辑用户配额
- repquota 按用户显示有关配额的报告
- quotacheck 更新文件系统的配额限制
磁盘配额在macOS中的配置不同。在Linux中,使用/etc/fstab中的相应选项启用配额。不过/etc/fstab在macOS系统中不可用。不过,您可以在文件系统的根目录中创建两个文件,以便在(.quota.ops.user和.quota.ops.group)上启用配额。
macOS中的关闭和系统状态 - shutdown 在指定时间关闭或重新启动系统
- halt 立即关闭系统
- reboot 立即重启系统
- macOS 中的压缩,备份和软件
- compress 使用Lempel-Ziv算法压缩文件
- gzip 使用标准Lempel-Ziv算法压缩文件
- bzip2 使用块排序算法压缩文件
- tar 用于创建小型tar档案和tarball
- cpio 用于使用各种选项创建完整的文件系统备份
- make gcc和Makefile设置make Manages软件编译
- gcc 用于编译软件的GNU C编译器
macOS中的BASH管理 与在Linux一样,macOS将其变量存储在环境文件中。系统默认使用/etc/profile和/etc/bashrc文件。每个用户还可以创建自己的/.bash_profile和/.bashrc文件。另外,/.bash_logout可用于在shell出口处执行任务。以下是更多用于macOS的BASH管理命令。 - set 显示shell中的所有变量
- env 在shell中显示导出的变量
- alias 创建特殊别名变量
- unalias 删除特殊别名变量
- export 创建和导出变量
- ulimit 为用户设置BASH限制(例如,最大用户进程数)
macOS 中的进程管理 - ps 显示系统和用户进程(仅支持BSD样式选项)
- top 显示顶级流程和系统统计信息
- kill 按进程标识号(PID)向进程发送kill信号
- killall 按名称向进程发送kill信号
- jobs 显示后台进程
- fg 将后台进程移动到前台
- bg 将前台进程移动到后台
- nice 更改进程启动时的优先级
- renice 更改正在运行的进程的优先级
- at 计划命令以便稍后运行
- atq 工作视图
- atrm 删除一份工作
- crontab 编辑用户计划任务表(用于重复执行命令)
macOS中的用户和组管理 用户和组管理在macOS中与Linux略有不同。没有useradd或userdel命令。相反,您必须使用“系统首选项”实用程序正确创建用户帐户。用户信息存储在/var /db目录下的目录数据库中。 /etc /shadow文件不存在,并且/etc/passwd和/etc/group文件仅用于向应用程序提供信息。 - whoami 显示当前用户名
- who am i显示您的用户名和计算机信息
- groups 显示当前用户的组成员身份
- id 打印当前用户的用户ID(UID)和组ID(GID)
- chfn 更改finger命令使用的用户描述
- finger 显示用户描述信息
- chsh 更改用户帐户的shell
- passwd 更改当前用户的密码(root用户可以通过将用户名指定为参数来更改其他用户的密码)
- who 显示系统中的人员
- w 显示系统中的人员以及他们正在执行的操作
通用Unix打印系统(CUPS)在macOS中打印 - lp 打印文件(支持BSD与BSD兼容)
- lpstat 查看打印作业和打印机状态(BSD支持lpq和lpc兼容性)
- cancel 从打印队列中删除打印作业(BSD支持lprm兼容性)
- cupsaccept 允许作业进入打印队列
- cupsreject 禁止作业进入打印队列
- cupsenable 允许从打印队列将作业发送到打印机
- cupsdisable 阻止作业离开打印队列
macOS中与网络和安全相关的命令 网络设备在macOS中具有不同的名称。第一个以太网适配器称为en0(通常是有线以太网),第二个称为en1(通常是无线以太网)。确保使用“系统偏好设置”更改任何网络参数,因为它们不存储在Linux系统上的文本文件中。比如/etc/resolv.conf文件仍然存在于macOS中,并列出了在“系统偏好设置”中配置的DNS服务器,但系统未使用它 - 只是在应用程序查询它的情况下。主动使用且可编辑的唯一网络相关文件是/etc/hosts(用于本地主机名解析)。以下是macOS中与网络和安全相关的更多命令。 - ifconfig 显示和配置TCP / IP网络接口
- ping 测试主机之间的连接
- whois 查询域名注册信息
- arp 查看和管理地址解析协议(ARP)缓存
- netstat 查看TCP / IP网络统计信息和路由表
- route 管理TCP / IP路由表
- traceroute 跨路由器跟踪IP数据包
- hostname 设置系统主机名
- host 将主机名解析为IP地址,反之亦然
- nslookup 将主机名解析为IP地址,反之亦然
- dig 将主机名解析为IP地址,反之亦然
- su 将您的用户帐户切换到另一个帐户
- sudo 通过/etc/sudoers文件中的条目以另一个用户身份执行任务
- last 显示以前用户登录的详细列表
- tcpdump 在网络接口上捕获数据包
macOS中的系统和杂项命令 - date 显示当前日期和时间
- exit 退出shell(注销)
- echo 参数显示终端屏幕的参数
- clear 清除屏幕
- uname 选项显示选项指定的系统信息; -a指定所有信息
- uptime 列出系统统计信息和正常运行时间
- cal 列出当前月份的日历
- banner 打印ASCII横幅
- iostat 显示系统的输入/输出(I/O)统计信息
如果你刚刚把每个命令再mac os 命令行里试着输入下查看下结果,那么现在你已经熟悉掌握了macOS基础知识,并且你知道常用的命令。
|