从网上总结了基础的Mac终端命令,方便以后工作中查看
OS X[1]采用的Unix文件系统,所有文件都挂在根目录/
下面
根目录: /
上一级目录: ../
当前目录 ./
用户文件夹位置: /Users/用户名
桌面的位置: /Users/用户名/Desktop
驱动所在位置: /System/Library/Extensions
注意:
- Unix系统是区分大小写字符的.
-
cd /System
表示转到根目录下的System中,而cd System
表示转到当前目录下的 System中
进入命令行操作模式
finder ==> 应用程序 ==> 使用工具 ==> 终端
开机时按
F8
,用-s
参数启动,然后输入命令mount -uw /
小技巧
使用Tab
键可以自动补齐命令
基本常用命令
- 目录操作
命令名 | 功能描述 | 使用举例 |
---|---|---|
mkdir | 创建一个目录 | mkdir dirname |
rmdir | 删除一个目录 | rmdir dirname |
cd | 改变当前目录 | cd dirname |
pwd | 显示当前目录的路径名 | pwd |
ls | 显示当前目录的内容 | ls |
- 文件操作
命令名 | 功能描述 | 使用举例 |
---|---|---|
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 |
chmod | 更改文件的权限 | chmod -R 755 filename |
touch | 创建一个文件 | touch filename |
open | 打开一个文件或目录的窗口 | open filename |
nano | 文本编辑文件 | nano filename |
注意
使用rm命令时要小心,例如:rm -rf /
你的系统就全没了
- 选择操作
命令名 | 功能描述 | 使用举例 |
---|---|---|
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 | 在本地主机与远程主机之间传输文件 | ftp[ftp.sp.net.edu.cn] |
rcp | 在本地主机与远程主机 之间复制文件 | rcp file1 host1:file2 |
ping | 给一个网络主机发送 回应请求 | ping hpc.sp.net.edu.cn |
阅读和发送电子邮件 | ||
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 subdirdf |
/tmp | 显示文件系统的总空间和可用空间 | /tmp |
w | 显示当前系统活动的总信息 | w |
显示隐藏文件
显示隐藏文件 defaults write com.apple.finder AppleShowAllFiles -bool truekillall Finder
恢复隐藏文件 defaults write com.apple.finder AppleShowAllFiles -bool falsekillall Finder
获得权限
Root user,又名超级用户,是一个权力最高的Unix 账户,Root 的账户能在整个系统里任何部份进行任何“操作”,包括:拷贝档案、移动/移除档案、执行程序等。
为了防止误操作破坏系统,在用户状态下是没有权限操作系统重要文件的
- 获取得root权限:
sudo -s
- 然后输入密码(输入密码时没有任何回显,输入完回车)
注意$
和#
的变化,#
表示你在最高权限root里面
清理系统
每日清理 sudo periodic daily
-->回车-->输入管理员密码
每周清理 sudo periodic weekly
每月清理 sudo periodic monthly
三个清除一起做 sudo periodic daily weekly monthly
终端命令参数
-l
列出当前目录下的所有内容的详细信息
-w
显示中文
-a
包括隐藏文件
-R
对目录进行递归操作
例子:cp -R A B
即把A文件备份到B目录下
-rf
表示递归和强制
-rw------- (600) -- 只有属主有读写权限。
-rw-r--r-- (644) -- 只有属主有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700) -- 只有属主有读、写、执行权限。
-rwxr-xr-x (755) -- 属主有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711) -- 属主有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666) -- 所有用户都有文件读、写权限。这种做法不可取。
-rwxrwxrwx (777) -- 所有用户都有读、写、执行权限。更不可取的做法。
屏幕熄灭
control+shift+Eject
(eject就是键盘右上角那个打开光盘的键),按任意键恢复
关机命令
sudo shutdown -h now
通过终端删除Finder中无法删除的文件
由于某种原因(死机,文件下载一半意外退等),导致文件无法删除,系统提示你权限不够。这个时候我们就可以利用一行简单的命令进行删除。
- 输入命令:
sudo rm -r -f
- 把你要删的文件/文件夹拖进终端窗口(好多个也可以一起拖)
- 在终端中回车
- 输入当前管理员用户密码(如果没有密码就直接回车,注意不是root账号的密码)
- 终端中没有任何提示信息表明成功删除
注意:
如果用这个命令还无法删除,有两种可能性:
- 是你删除的是系统正在使用的临时文件之类的。
- 是有可能你的硬盘目录出现问题。这时请先用磁盘工具检查一下你的硬盘。
死循环终止
control + c
-
OS X 10.11 El Capitan 为最新版本的OS X,之后的版本更名为macOS,目前最新版为 Sierra ↩