您的位置:首页技术文章
文章详情页

常用UNIX命令

【字号: 日期:2024-06-19 14:07:02浏览:65作者:猪猪

vi全屏幕编辑器

vi(Visual)是以视觉为导向的全屏幕编辑器、共分为三种方式(mode):

command方式:

任何输入都会作为编辑命令,而不会出现在屏幕上,若输入错误则有“岬的声音;任何输入

都引起立即反映

insert方式:

任何输入的数据都置于编辑寄存器。在command方式下输入(I,a,A等),可进入insert方式,insert方式下按ESC,可跳回command方式。

escape方式:

以“:或者“/为前导的指令,出现在屏幕的最下一行,任何输入都被当成特别指令。

进入vi(在系统提示符下面输入以下指令):

vi  进入vi而不读入任何文件

vi filename 进入vi并读入指定名称的文件(新、旧文件均可)。

vi +n filename进入vi并且由文件的第几行开始。

vi +filename  进入vi并且由文件的最后一行开始。

vi + /Word filename 进入vi并且由文件的word这个字开始。

vi filename(s)  进入vi并且将各指定文件列入名单内,第一个文件先读入。

vedit 进入vi并且在输入方式时会在状态行显示“INSERT MODE"。

编辑数个文件(利用vi filename(s))进入vi后)

:args 显示编辑名单中的各个文件名

:n读入编辑名单中的下一个文件

:rew读入编辑名单中的第一个文件

:e# 读入编辑名单内的前一个文件

:e file 读入另一个文件进vi(此文件可不在编辑名单内),若原文件经修改还没有存档,则应先以: w 存档。

:e! file强迫读入另一个文件进入vi,原文件不作存档动作。

存储及退出vi

:w filename 存入指定文件,但未退出vi(若未指定文件名则为当前工作的文件名)。

:wq 或者 :x或者zz 存文件,并且退出vi.

:q不作任何修改并退出vi。

:q! 放弃任何修改并退出vi。

:!command 暂时退出vi并执行shell指令,执行完毕后再回到vi。

:sh 暂时退出vi到系统下,结束时按Ctrl + d则回到vi。

加数据指令

i 在关标位置开始插入字符,结束时候按ESC键。

I 在光标所在行的最前面开始加字,结束时按ESC键。

a 在光标位置后开始加字,结束时按ESC键。

A 在光标所在行的最后面开始加字,结束时按ESC键。

o 在光标下加一空白行并开始加字,结束时按ESC键。

O 在光标上加一空白行并开始加字,结束时按ESC键。

!command执行shell指令,并把结果加在光标所在行的下一行。

删除指令

nx删除由光标位置起始的n个字符(含光标位置,按一个x表示删除光标所在的字符)

nX  删除由光标位置起始的n个字符(不含光标位置)。

ndw 删除光标位置其实的n个字符组(Word)。

d0  将行的开始到光标位置的字符全部删除。

d$ 或D  将光标位置起始到行尾的字符全部删除。

ndd 将光标位置起始的n行(整行)删除(dd表示删除光标所在行)。

:start,endd 删除文件的第start到end行。

关标移动

0 移到一行的开始

$ 移到一行的最后

[ 移到文件开始位置

] 移到文件结束位置

nh往左移n位

nl或者spacebar  往右移n位

nk向上移n行

n+向上移n行,光标在该行的起始

ni  向下移n行

n-向下移n行,光标在该行的起始

H 移到屏幕的左上角

M 移到屏幕的中间行开头

L 移到屏幕的最后一行

G 移到文件的最后一行

nG或者:n移到文件的第n行

nw右移n个字组,标点符号属于字组

nW右移n个字组,标点符号不属于字组

nb左移n个字组,标点符号属于字组

nB左移n个字组,标点符号不属于字组

Ctrl + u屏幕上卷半个菜单

Ctrl + d  屏幕下卷半个菜单

Ctrl + b  屏幕上卷一个菜单

Ctrl + F  屏幕下卷一个菜单

修改指令

r 修改光标文件的字符

R 从光标位置开始修改,结束时按ESC键

new 更改n组字符,结束时按ESC键

ncc 从光标所在位置开始更改n行,结束时按ESC键

重排各行长度

i 并按Enter将该行由光标所在处断开,并进入insert方式

J 把下一行的数据连接到本行之后

寻找指令

/text 从光标位置往下找字串text

?text 从光标位置往上找字串text

n 继续找下一个字串(在输入上面的寻找指令之后使用)

寻找并且取代指令

:getxt1/s/ /text2/options 将各行的text1替换为text2

option=g表示文件中所有的text1均被取代,若未输入任何option,则只有各行中的第一个出现的text1被取代

option=go 在屏幕显示各取代的行

option=gc 在每个字串取代之前要求确认

Start,endgtext1/s/ / text2/options 同上,只寻找并取代第start~end行。

或:Start,ends/text1/text2/options

复制及移动文件

:first,last co dest 将first 到last行的数据复制到目标行(dest)下面

:Start,endm dest将start 到 end行的数据移动到目标行(dest)下。

:r filename 将指定文件的内容读入光标所在行下。

nY  将光标所在位置开始的n行数据暂存

p 复制暂存数据在光标的下一行

P 复制暂存数据在光标的上一行

其他命令

. 重复前一指令

u 取消前一指令

Ctrl + l刷新屏幕显示

:set number 显示文件的行号,但不会存文件

:set nonumber 解除行号显示

:set ai 设置每行起始位置(以光标当前位置为起始)

:set noai 取消行起始位置设定

:f 或<Ctrl> + g 告诉用户有关现行编辑文件的数据。

quit 退出bc

附录 Unix 常用命令简单说明

UNIX 命令大多数可用联机帮助手册 man 获得帮助,下面是常用命令及简单说明,可供用户快速查找使用。

命令 功能简述

acctcom 等于进程记帐文件

accton 启动或中止记帐进程

adb 汇编语言调试工具

admin 创建和管理SCCS文件

ar 档案文件和库文件管理程序

as 汇编器

asa 回车控制

at 在指定时间执行程序

awk 模式搜索和处理语言

banner 制作标题

basename 生成文件基本名(无前。后缀)

batch 命令的延迟执行

bc 计算器

bdiff 大型文件比较

bfs 大文件搜索

break 退出循环

cal 打印日历表

calendar 打印日历表

cancel 取消打印任务

case 分支语句

cb C语言整理程序

cd 改变当前目录

cc C语言编译器

cdc SCCS实用程序

cflow 生成C语言流程图

checkeq 数学公式排版命令

chgrp 改变文件组

chmod 改变文件存取模式

chown 改变文件主

chroot 改变根目录

cksum 显示校验和

clri 清除指定的I节点

cmp 文件比较

col 过滤反向换行

comb SCCS实用程序

comm 显示两个排序文件的公共行

command 执行简单命令

continue 进入下一循环

cp 复制文件

cpio 复制文件档案

cpp C语言预处理程序

crash 检查系统内存映象

create 建立临时文件

cref 生成交叉引用表

cron 在指定时间执行一组命令

crontab 为命令cron 准备crontab文件

crypt 加密/解密

csplit 将一个文件分解

ct 远程终端注册

ctags 创建供vi使用的标识符

cu 呼叫另一Unix系统

cut 断开一文件中所选择的字段

cxref 生成C程序交叉访问表

date 打印和设置时间

dc 桌面计算器

dd 转换和复制文件

delta SCCS实用程序

deroff 去掉排版格式

devnm 标识设备名

df 显示可用磁盘空间

diff 显示两个文件的差异

diff3 显示三个文件的差异

dircmp 目录比较

dis 反汇编程序

du 显示对磁盘的占用情况

dump 对指定文件备份

echo 回显指定参数

ed 行编辑器

edit 文本编辑器

egrep 在文件中查找指定模式

env 设置命令执行环境

eqn 数学公式排版命令

eval 执行指定命令

ex 行编辑器

exec 执行指定命令

exit 进程中止

expand 使表格占满行宽

export 将变量传递给子程序

expr 计算表达式值

factor 因式分解

false 返回FALSE

fgrep 在文件中查找指定模式

file 确定文件类型

find 查找符号条件的文件

fmt 安排简单的文本格式

fold 折行

for 循环语句

fsck 文件系统检查和修复

fsdb 文件系统调试程序

fumount 强制性拆协指定资源

function 函数说明

fuser 列出使用文件的进程

fwtmp 产生记帐记录

get SCCS实用程序

getconf 查找配置参数

getopt 获得命令中的选择项

getopts 获得命令中的选择项

getty 设置终端类型、模式、行律等

grep 在文件中查找指定模式

head 打印文件的头若干行

hexdump 按十六进制转储文件

id 显示用户号

if 条件语句

init Unix 初启进程

install 安装一个文件到文件系统

ipcrm 删除IPC队列

ipcs 显示IPC状态

join 连接两个文件(关系操作〕

kill 中止指定进程

killall 中止所有活动进程

labelit 给文件系统提供标号

ld 目标文件链接编辑器

lex 词法分析程序

line 读一行

link 连接文件

lint C程序检查程序

ln 链接文件

local 建立局部变量

logger 显示注册信息

login 注册

logname 获取注册名

look 在排序文件中查找某行

lorder 查找目标库的次序关系

lp 打印文件

lpr 打印文件

lpstat 显示打印队列状态

ls 目录列表

mail 发送或接收电子邮件

mailx 发送、接收或处理电子邮件

make 执行有选择的编译

makekey 生成加密码

man 显示命令用法

mesg 接收或取消对话方式

mkdir 建立目录

mkfifo 建立FIFO文件

mkfs 建立文件系统

mknod 建立文件系统的I节点

mount 安装文件系统

mv 移动文件

mvdir 移动目录

ncheck 按节点号生成节点名清单

neqn 数学公式排版命令

newgrp 把用户加入到新组

news 打印消息

nice 改变命令执行优先级

nl 给文件加行号

nm 显示目标文件符号表

nohup 忽略挂起或退出执行命令

nroff 文本文件排版

od 按八进制转储文件

pack 压缩文件

passwd 改变口令

paste 文件合并

pax 可移植档案管理程序

pcat 显示压缩格式文件

pg 分屏显示

pr 按打印格式显示文件

pstat 报告系统信息

pwck 口令文件校验程序

pwd 显示当前工作目录

quot 检查文件系统所有权

ratfor 转换成标准FORTRANC程序

read 从标准输入读一行

readonly 标记变量为只读

red 文本编辑器

regcmp 正规表达式编辑

restor 文件系统恢复程序

restore 文件系统恢复程序

return 返回语句

rev 颠倒文件中每行字符次序

rm 删除文件

rmdel SCCS使用程序

rmdir 删除目录

rsh(net) 远程SHELL

rsh(sec) 受限SHELL

runacct 运行日常记帐程序

sact SCCS实用程序

sag 打印系统活动图

sar 报告系统活动

sccsdiff SCCS实用程序

sdb 符号调试器

sdiff 并列显示两个文件的差别

sed 流编辑器

sendto 发送邮件

set 设置选项或参数

setmnt 建立文件系统安装表

sh SHELL解释器

shift 命令行参数移位

shl SHELL层(layer)管理程序

shutdown 关机

size 显示目标文件长度

sleep 挂起进程一段时间

sort 文件排序和合并

spell 拼写错误检查程序

spellin 拼写错误检查

spellout 拼写错误检查

spline 按平滑曲线输出数据

split 分解一个文件

strings 在目标文件中寻找可打印字符

strip 删除符号表

stty 设置终端模式

su 改变用户

sum 显示文件校验和及块数

sync 更新磁盘

tabs 设置制表符

tbl 表格排版

tee 在管道上建立多通路

tic 终端数据库编译程序

time 打印执行命令所花时间

tIEmx 报告命令所花时间及活动

touch 更新文件时间

tput 恢复终端或查询数据库

tr 转换字符

trap 捕获信号

troff 文本文件排版

true 返回TRUE

tsort 拓扑排序

tty 显示终端设备名

umask 设置文件掩码

umount 拆卸文件系统

uname 显示系统名

unget SCCS实用程序

uniq 删除文件中重复行

units 度量单位转换

unlink 删除文件

unpack 将压缩文件还原

until 循环语句

update 更新磁盘

val SCCS实用程序

vc SCCS实用程序

vi 全屏幕编辑器

volcopy 文件系统的文字拷贝

wait 等待所有字进程结束

while 循环语句

who 显示谁在使用系统

whodo 显示哪些用户在做什么

write 和另一用户直接对话

xargs 建立参数表并执行命令

yacc 语法分析程序生成器

vmstat iostat sar topas glance

标签: Unix系统