mac终端命令大全介绍(mac 终端常用命令)

http://www.itjxue.com  2023-03-06 04:34  来源:未知  点击次数: 

Mac下的常用终端命令

cd 切换工作目录

. 表示当前目录

.. 表示当前目录的上一级目录

/ 根目录/目录分隔符

./ 当前目录

../ 回到上一级目录

ls 显示当前目录下的所有文件

mkdir 创建新目录

rmdir 删除空目录,注意是空目录

Vim常用命令

Vim 的几种模式:

i 进入insert模式,可以像普通编辑器一样操作。

esc 进入 Normal 模式,不可不可编辑,只可滚动查看。

v 进入Visual模式

进入Vim Esc 模式命令

vim xx

打开xx文件,如果没有就创建xx文件,且挑到编辑页面,并将光标置于第一行首

vim + xx 打开文件,并将光标置于最后一行首

vim +n xx

打开文件,并将光标置于第n行首

vim +/pattern xx

打开文件,并将光标置于第一个与pattern匹配的串处

vim -r xx

在上次正用vim编辑时发生系统崩溃,恢复 xx 文件

vim xx...xx

打开多个文件,依次编辑

移动光标命令:

h - 左

j - 下

k - 上

l - 右

0 - 移动到本行的行首

$ - 移动到本行的行末

gg - 移动到文档的开始位置

G - 移动到文档的末尾

撤销和重做

u - 撤销上一个操作

U - 撤销对当前行的所有操作

Ctrl + r 重做

搜索

/text + Enter + n - 向后搜索文本text

/text + Enter + N - 向前搜索文本text

插入类命令

i 刚进到编辑页面的时候是无法编辑的,所以输入i就可以编辑了

esc 按esc就会退出编辑模式

I 在当前行首

a 光标后

r 替换当前字符

R 替换当前字符及其后的字符,直至按ESC键

s 从当前光标位置处开始,以输入的文本替代指定数目的字符

S 删除指定数目的行,并以所输入文本代替之

ncw或nCW 修改指定数目的字

nCC 修改指定数目的行

o - 向后插入一行,并进入insert模式

O - 向前插入一行,并进入insert模式

A - 从行末开始插入文字,并进入insert模式

删除

x - 删除当前光标位置的字符,重复后删除光标之后的字符

X - 删除当前光标位置的字符,重复后删除光标之前的字符

r - 替换当前光标位置的字符,比如re,把光标当前位置字符替换为e

dw - 删除光标当前位置直到下一单词(不包括下一个单词的首字母)

de - 删除光标当前位置到这个单词的结束(包括这个单词的尾字母)

dd - 删除当前行

d$ - 删除当前光标位置到行末的字符

剪切粘贴

dd + p 其中dd是删除当前行,p粘贴到下一行

数字和快捷键连用如:

上 k 向上

nk 向上移动n行

下:j 向下

nj 向下移动n行

左:h 向左

nh 向左移动n列

右:l 向右

nl 向右移动n列

3w - 移动到后3个单词的首字母

10ig - 一下子插入10个g

d9e - 删除光标后九个单词(不计空格)

9dd - 删除光标当前位置往后的9行

退出命令

:q! - 不保存,退出

:wq - 保存并退出

:w 输入:w就是保存刚才编辑

:q 退出vim编辑页面

MacOS 常用终端命令大全

MAC系统采用Unix文件系统,所有文件都挂在根目录下面,没有Windows系统的盘符概念,根目录用斜杠(/)表示;

根目录(/)不是可有可无,/System表示根目录下的System文件,System表示当前目录下的System文件;

在 Unix系统中区别字符大小写,A.txt 不等于 a.txt;

关键的标点符号:点(.)表示当前目录;两个点(..)表示上一级目录;星号(*)匹配任意字符任意次数;问号(?)匹配任意字符仅一次;

获得权限:为了防止误操作破坏系统,再用户状态下没有权限操作重要的系统文件,先要获取root权限,语法:sudo -s,然后会提示输入密码,输入密码时没有任何回显,连星号都没有,输入完密码按回车键即可;

编辑文件:vim directory/file_name,若指定路径的文件不存在,则新建空文件,输入字母i或o进入编辑模式,编辑好内容,点击【esc】键后,输入:w进行保存;输入:wq进行保存并退出;输入:q!进行不保存强行退出;

table键,单击可以实现自动补全,双击可以列出指定路径下的所有内容,类似ls命令;

常用位置

驱动所在位置: /Systme/Library/Extensions

用户文件夹位置:/User/用户名,可以用波浪号(~)表示

桌面位置:/User/用户名/Desktop,可以用~/Desktop表示

清理系统

按天进行清理:sudo periodic daily

按每周进行清理:sudo periodic weekly

按每月进行清理:sudo periodic monthly

按上面3种情况进行清理:sudo periodic daily weekly monthly

命令——功能描述——示例

mkdir——创建一个目录——mkdir dirname

rmdir——删除一个目录——rmdir dirname

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

cd——改变当前目录——cd dirname

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

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

dircmp——比较两个目录的内容——dircmp dir1 dir2

命令——功能描述——示例

cat——显示或连接文件————cat filename

pg分页格式化显示文件内容——pg filename

more——分屏显示文件内容——more filename

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

cp——复制文件或目录——cp file1 file2

rm——删除文件或目录——rm filename

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

ln——联接文件——ln -s file1 file2

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

file——显示文件类型——file filename

open——使用默认的程序打开文件——open filename(open . 打开当前目录)

命令——功能描述——示例

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

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

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

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

paste——横向连接文件——paste file1 file2

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

sed————非交互方式流编辑器——sed “s/red/green/g” filename

grep——在文件中按模式查找——grep “^[a-zA-Z]” filename

awk——在文件中查找并处理模式——awk ‘{print 111}’ filename

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

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

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

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

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

命令——功能描述——示例

passwd——修改用户密码——passwd

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

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

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

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

xlock——给终端上锁——xlock -remote

命令——功能描述——示例

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

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

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

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

命令——功能描述——示例

ps——显示进程当前状态——ps u

kill——终止进程——kill -9 30142

nice——改变待执行命令的优先级——nice cc -c *.c

renice——改变已运行进程的优先级——renice +20 32768

命令——功能描述——示例

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

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

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

mail——阅读和发送电子邮件——mail

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

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

命令——功能描述——示例

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——显示文件系统的总空间和可用空间——df /tmp

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

命令——功能描述——示例

sudo —— 获取root权限 —— sudo -s

Ctr + D / exit —— 退出root权限

clear ——清除屏幕或窗口内容

ping —— 给网络主机发送回应请求 —— ping

man —— 查看命令说明 —— man ls

q —— 退出查看的命令说明

which —— 查看指定程序的路径 —— which python

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

hostname —— 电脑在网络中的名称

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

passwd —— 修改用户密码

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

cal —— 显示日历 —— cal

time —— 统计程序的执行时间 —— time

所以你可以使用▲(上箭头)或▼(下箭头)来上下移动,

使用 空格键 来翻页,输入/和关键字来按照关键字搜索

按Q来退出使用指南页面

tab按键自动补全唯一路径

中止一个错误的或者发疯的命令,可以使用组合键control + C。

你可以在执行前编辑命令,只需要使用箭头和键盘上的其他字母。

没有输入任何命令时,你可以用▲和▼来浏览历史命令。同样可以编辑和再次执行。

你也可以使用history命令查看历史记录。

你可以使用组合键control + L清屏。

细节:vim 编辑器 i 进入插入模式 ,在编辑完后按 esc,然后按Shift+":",这个时候输入wq保存退出。 (注意需要:符号)

Mac 常用终端命令

/ 根目录 cd / 返回最顶层磁盘位置 /

~ 当前用户目录 cd ~ 返回用户目录 /Users/dulane

. 当前目录 cd ./music 所在位置 /Users/dulane/music

../ 父级目录 cd ../ 所在位置 /Users/dulane

cd 跳转(cd 有后面必须有空格)

cd / 跳转根目录 /

cd ~ 跳转用户目录 /Users/dulane

cd music 跳转到music文件下 /Users/dulane/music

cd ../ 返回上级目录 /Users/dulane

ls 当前目录下的文件

ls -a 当前目录下的文件包括隐藏文件

ls -la 当前目录下文件包括详细信息

pwd 显示当前文件位置 /Users/dulane

history 显示所以操作的历史命令 532 history

clear 清空终端

mkdir command 创建名字为command的文件夹

rmdir command 删除空command文件夹

mv command command1 重命名或者移动文件

rm ab.txt 删除文件ab.txt

cp ab.txt abc.txt 复制文件ab.txt为abc.txt

touch aa.txt 新建aa.txt

open ab.txt 打开ab.txt

vi aa.txt 进入编辑模式

ssh root@ip 连接远程服务器

sh build.sh 执行build命令

which java java的安装位置 /usr/bin/java

tab 键补全信息

control + c 中止一个错误的或者发疯的命令

ctrl + space 输入法切换

大写键 ,中英文切换

cmd + Click 打开文件/文件夹/链接

cmd + n 新建窗口

cmd + w 关闭当前页

cmd + t 新建标签页

cmd + 数字 , cmd + 方向键,切换标签页

cmd + enter 全屏

cmd + tab 切屏

cmd + d 左右分屏

shift cmd + d 上下分屏

cmd + ; 自动补全历史纪录

shift cmd + h 自动补全剪贴板历史

ctrl + 方向键 切换窗口

cmd + ctrl + d 查Mac自带词典

vi filename

i 插入模式

esc 推出插入模式

:w 保存当前编辑的文件但不退出

:w newfile 文件另存为

:w! filename 当前文件的内容替换filename中的原有内容

:q 退出,文件为保存时会提示

:q! 强制退出,不保存文件

:wq 先保存文件,然后退出到shell

:x 或者ZZ ,保存并退出返回shel

ctrl + u 清空当前行

ctrl + a 移动到行首

ctrl + e 移动到行尾

ctrl + f 向前移动

ctrl + b 向后移动

ctrl + p 上一条命令

ctrl + n 下一条命令

ctrl + r 搜索历史命令

ctrl + y 召回最近用命令删除的文字

ctrl + h 删除光标之前的字符

ctrl + d 删除光标所指的字符

ctrl + w 删除光标之前的单词

ctrl + k 删除从光标到行尾的内容

ctrl + t 交换光标和之前的字符

Mac 终端命令

1.查看运行中的进程: ps -help

# ps aux | less

-A:显示所有进程

a:显示终端中包括其它用户的所有进程

x:显示无控制终端的进程

ps -U root -u root

查看非root运行的进程

ps -u user1

查看具体某个用户运行的进程

top

top 命令提供了运行中系统动态的视图

2. 网络命令:netstat - help

ifconfig?

?显示网络接口(interface)信息。如接口名称,接口类型,接口的IP地址,硬件的MAC地址等。

ARP?

?ARP协议用在局域网(LAN)内部。借用ARP协议,设备可以知道同一局域网内的IP-MAC对应关系。当我们访问一个本地IP地址时,设备根据该对应关系,与对应的MAC地址通信。通过ARP工具,我们可以知道局域网内的通信是否正常。

arp -a?

显示本地存储的IP-MAC对应关系.

sudo arping -I eth0 192.168.1.1?

?经eth0接口,发送ARP请求,查询IP为192.168.1.1设备的MAC地址

sudo arp-scan -l

查询整个局域网内的所有IP地址的对应MAC地址

sudo tcpdump -i en0 arp

监听en0接口的arp协议通信

网络层

网络层是一个广域的互联网,互联网上的设备用IP地址识别。ping是向某个IP地址发送ICMP协议的ECHO_REQUEST请求。收到该请求的设备,将返回ICMP回复。如果ping到某个IP地址,那么说明该IP地址的设备可以经网络层顺利到达。

ping 192.168.1.1

向IP地址192.168.1.255发送ICMP请求。如果该地址的ICMP没有被禁用,那么在该网上的设备将回复。

ping 192.168.1.255

向广播(broadcast)地址192.168.1.255发送ICMP请求。如果ICMP没有被禁用,那么在该网上的设备将回复。

需要注意的是,许多设备会禁用ICMP。如果ping不到一个设备,并不一定是网络层故障。

如果两个设备有相同的IP地址,将导致IP冲突。许多网络中是由DHCP协议自动分配IP地址的,这样可以极大的减少IP冲突的可能性。DHCP服务器与设备达成协议,设备将在一定时间内占据某个IP地址,而DHCP服务器不再把该IP地址分配给别人。

sudo ipconfig set en0 DHCP

更新DHCP租约。设备将释放IP地址,再从DHCP服务器重新获得IP地址。

sudo ipconfig set en0 INFORM 192.168.0.120

将接口en0设定为静态IP地址。

网络监听

tcpdump是一款网络抓包工具。它可以监听网络接口不同层的通信,并过滤出特定的内容,比如特定协议、特定端口等等。我们上面已经使用tcpdump监听了ARP协议通信。这里我们来看更多的监听方式。

sudo tcpdump -i en0

监听en0接口的所有通信

sudo tcpdump -A -i en0

用ASCII显示en0接口的通信内容

sudo tcpdump -i en0 'port 8080'

显示en0接口的8080端口的通信

sudo tcpdump -i eth1 src 192.168.1.200

显示eth1接口,来自192.168.1.200的通信

sudo tcpdump -i eth1 dst 192.168.1.101 and port 80

显示eth1接口80端口,目的地为192.168.1.101的通信

sudo tcpdump -w record.pcap -i lo0

将lo0接口的通信存入文件record.pcap

域名解析

DNS是在域名和IP之间进行翻译。DNS故障会导致我们无法通过域名访问某个网址。

host

DNS域名解析。返回域名对应的IP地址

mac常见终端命令

cd + 路径: 进入文件夹

pwd: 当前路径

cd +..: 返回上层文件夹

mkdir + 文件夹名: 创建目录(make directory)

rmdir + 文件夹名: 移除目录(remove directory)

cd + ~ :? 进入根目录

touch + 文件名: 新建文件

rm ?+ 文件: 删除文件

rm + *.后缀名: 删除统一后缀文件

sudo rm -r -f + 文件夹名:删除非空文件夹

Mac下终端命令行(常用)

作为一名开发人员,越来越觉得对于终端的使用,是非常有必要的,本人之前接触这方面较少,也就偶尔用一下(大学没学过unix),现在总结几条,后续还会添加,学无止境嘛~

1.获取管理员权限:

输入 sudo -s

然后输入密码,不会提示,输入完后直接回车即可,然后即获得管理员权限。

2.打开文件

输入 open /Applications/Safari.app

在这里打开Safari浏览器,使用open命令是可以多次打开的 (当然有的软件不允许打开多个窗口)。open+空格+ -n +软件路径 (可以直接拖动到终端中)

我们也可以在命令中加入 -a 标识来选择你想要用来加载该文件的应用程序,或者使用-e 标识直接在文本编辑器中编辑。 例:open /Users/rhjt/Desktop/ -a /Applications/Safari.app (在safari浏览器中打开image图片)

3.搜索

关于搜索,mac上自带的有spotlight (ctr/cmd + 空格)可以实现全局搜索,但有时候没有正确的工作,而且如果我们想精确一个范围呢?

输入 mdfind + 文件名, 实现全局搜索

输入 mdfind -onlyin 文件大的路径 该路径下的某个文件名 (这样在我们精确文件大的路径时候,可以更精确搜索到我们要的文件)

4.读

mac中的Siri,可以读取出我们输入的内容

输入 say + 内容,然后就会读出来(不懂单词的发音时候,不用去找词典了~~)

5.延迟睡眠

caffeinate能阻止Mac进入睡眠状态,而且屏幕保护也不会激活。我们最好使用-t为命令加入具体的时间。

输入 caffeinate -t 3600 表示一个小时内屏幕不进入睡眠

6.释放内存 (相当于重启电脑)

purge命令可以清除内存和硬盘的缓存,与重启Mac的效果差不多 (还不会关闭你现在用的程序)。purge命令可以让不活跃的系统内存转变为可以使用的内存,所以电脑卡的时候试试这个命令~~

输入 purge

7.更新

我们更新系统软件一般都是通过AppStore来更新,但是AppStore经常打开太慢了,所以用下终端来更新。

输入 sudo softwareupdate -i -a

这个是更新系统的软件,比如系统更新

8.创建有密码保护的压缩文件

你可以通过下面的命令将桌面上的文件创建成有密码保护压缩文件。

zip -e protected.zip ~/Desktop/task.doc

protected.zip是文件名字,~后面的是文件地址。保存之后,文件会存储在你的私人磁盘中

9.删除

ctrl+u 删除当前整行.

ctrl+w 删除游标前的单词.

ctrl+k 删除从当前游标到行尾的文字.

(责任编辑:IT教学网)

更多

推荐人物新闻文章