unix 基础知识

来源:互联网 发布:域名和ip绑定 编辑:程序博客网 时间:2024/05/22 23:57

前言

总结日常经常使用的UNIX命令和vi的基本使用。

find . -name*.txt -print在当前目录及子目录中查找所有的’* .txt’文件

查找文件

find search_path –name filename –print

从文件中查找字符串

grep [-i] string file ?从文件file中查找并显示包含字符串string的行,-i选项表示忽略大小写。

1.find . -name "*XML"|xargs grep -l STRCMP

正文

1.特殊文件

.profile

每个用户的根目录下有一个隐藏文件.profile,可以用ls –a查看。

每次用户登录时,首先执行该文件。对该用户的环境变量设置,或其它的预处理均可在该文件中设置。

2.find使用匹配来查找文件

$ find search_path –name filename –print
例:
$ find . –name file1 –print  从当前目录(.)及其子目录查找文件file1

3.使用grep命令:从文件中查找包含特定字符串的文件

$ grep [-i] string file  从文件file中查找并显示包含字符串string的行,-i选项表示忽略大小写。


注:常用grep和find命令来组合使用

比如:

find . -name "*.XML"|xargs grep "XXXXXX"

查找包含XXXXX字符串内容的所有XML文件。


4.vi编辑或创建一个文件

1)vi的指令模式

 指令集 功能

a  在当前游标之后输入
在当前行之末输入
i 在当前游标之前输入
I 在当前行之首输入
o 在当前行之下新增一行,并在新增行输入
O 在当前行之上新增一行,并在新增行输入
输入结束后,按Esc键退出输入模式。

2)游标移动 

指令集 功能
h 向左移动一个字元
l 向右移动一个字元
j 向下移动一个字元
k 向上移动一个字元
b 左移一个单词,至词首
w 右移一个单词,至词尾
0 移到当前行行首
$ 移到当前行行尾
+ 移至下一行的行首
- 移至上一行的行首
H 移至视窗的第一行
M 移至视窗的中间一行
L 移至视窗的最后一行
G 移至该文件的最后一行
nG 移至该文档的第n行
n+ 下移n行
n- 上移n行

3)视窗移动 

指令集 功能
<Ctrl> + f 视窗下卷一页
<Ctrl> + b 视窗上卷一页
<Ctrl> + d 视窗下卷半页
<Ctrl> + u 视窗上卷半页
<Ctrl> + e 视窗下卷一行
<Ctrl> + y 视窗上卷一行

4)删除操作

 指令集 功能

删除游标所在字元
X 删除游标前一字元
dw 从游标当前位置开始向后删除一个单词
db 从游标当前位置开始向前删除一个单词
d0 从行首删除至当前游标位置
d$ 从游标当前位置删除至行尾
dd 删除游标所在行
D 同d$

5).修改操作

 指令集 功能

s 修改游标所在字元,修改完成后按Esc键结束
S 修改整行内容,修改完成后按Esc键结束
r 替换当前游标所在字元
R 进入替换状态,直至按Esc键结束
cw 修改一个单词(从游标位置至词尾)
cb 修改一个单词(从词首至游标位置)
cc 修改整行内容,完成后按Esc键结束,同S
c0 修改行首至游标位置的内容
c$ 修改游标位置至行尾的内容
~ 游标所在字元大小写切换


6).保存与退出 

指令集 功能
:w  保存,但不退出
:wq  保存并退出
:x  同:wq
:q 退出,如果当前文件没有保存,禁止退出
:q! 不保存退出
:w file1 将内容保存至文件file1中,注意:此时编辑的仍为原文件
:w! file1 将内容覆盖保存至文件file1中,如文件file1存在,:w file1将禁止执行


7)执行指令

以下用具体的数字为例进行介绍,数字表示行数,游标所在行可用“.”代替,文
件最后一行可用“$”代替。 

 指令集 功能
:10,20d  删除第10行至第20行的内容
:10d 删除第10行的内容
:%d 删除全部内容
:10,20co30 将第10行至第20行的内容复制到第30行之后
:10,20mo30 将第10行至第20行的内容移动到第30行之后
:1,$s/old/new 将第1行至最后一行中的old替换成new
:1,$s/^/new 将第1行至最后一行的内容前面插入new
:10 将游标移至第10行


8).切换到shell状态 

指令集 功能

:sh 切换到shell状态,exit返回

9)替换字符串

1)):%s/aaaa/bbbb/g 将所有行的aaaa替换为bbbb
2)):2,10s/aaaa/bbbb/g将第2行到第10行的aaaa替换为bbbb

5.ls  显示目录的内容

1)ls –l
  以列表方式显示当前目录的内容( 可以使用alias 查看命令的别名 比如可以定义ls –l 等同于 l)
2))ls –a
  显示当前目录下的所有文件(包括隐藏文件)

6.cd  改变当前目录

1)cd  /ics/develop/public  改变当前目录为/ics/develop/public
2).cd  .. 进入上一级目录
3).cd -   退回上次的目录
4).cd    进入用户的主目录

7.mkdir新建目录

1)mkdir  dirname 在当前目录下创建一个名为dirname的目录

8.mv 改变文件名或文件所在目录

1)mv  file1 file2 将文件file1改名为file2(若file2存在,则覆盖file2)
2)mv  file1 /ics/develop 将文件移动到/ics/develop目录下

9.cp复制文件或目录

1)cp file1 file2 将文件file1的内容复制到文件file2(若file2存在,则覆盖file2)
2)cp  /ics/*  /home将/ics下的所有文件复制到/home下(不包括/ics/下的目录)
3)cp –R  /ics  /home将/ics下的所有文件和子目录复制到/home下

10.rm删除文件或目录

1)rm  file1 删除文件file1
2)rm –r  dirname 删除目录dirname
3)rm –f  file 强制删除文件file

11.history 显示历史命令

1)按ESC进入命令模式

1))可以使用j 和k查看历史命令。
2))/ 命令 可以查看该命令的最近执行命令,按n 和shift+n 来进行向下和向上查找。

12.man 在线帮助

1))man  rm显示rm命令的在线帮助

13查看文件内容的相关命令

1)more分屏显示文件内容

1))more file 分屏显示文件file的内容
2))使用q,或ctrl+c 退出
3))?和/进行字符的匹配查找,使用n和shift+n来进行向上和向下查找。

2)
head 显示文件的最初几行

1))head20 file显示文件file的头20

3)tail 显示文件的最后几行

1))tail15file显示文件file的最后15

4)cut 显示文件每行中的某些域

1))cutf1,3d :/etc/passwd显示/etc/passwd文件的第1和第3域,以为域分隔符

5)diff 比较并显示两个文件的差异

1))difffile1 file2 显示文件file1file2不一样的行

6)wc统计文件的行数、词数、字符数

1))wcfile 统计文件file的行数、词数、字符数
2))wccl wfile统计文件file的字符数、行数、单词数

7)passwd修改用户密码

8)chmod改变文件或目录的权限

1))chmodogwfile收回其他用户和同组用户对file文件的写权限
2))chmodu+xfile赋予file文件属主执行权限
注:
常常使用数字进行操作,5,2,1分别表示读,写,执行的权限。

9)chown改变文件或目录的属主

1)chownusername filefile文件的所有权从原用户交给username用户

14.touch 更新文件的访问和修改时间

1))touch  file file文件的访问和修改时间改为当前时间
2))touchm05200900 filefile文件的修改时间改为当前年份520日的9

15.ps显示进程状态

1)psa显示所有活动进程的状态

16kill 终止进程

1)kill9123088终止PID123088的进程(信号值9表示确认终止)

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

18•time 显示程序的执行时间

1)timea.out显示程序a.out的执行时间

19alias给某个命令定义别名

üalias del=rm -r给删除目录命令定义别名del

20.clear清除屏幕或窗口内容

21.who显示当前登陆的所有用户

22.whoami显示当前正在进行操作的用户名

23.which查看文件的执行路径


1))which lst查看ls的执行路径

24.du 查询磁盘使用情况

du -a /ics显示/ics目录下所有文件、目录的大小和整个目录所占用的空间 

25.df 显示文件系统的总空间和可用空间

df /ics显示/ics目录所在文件系统的总空间和可用空间

26.>/>> 输出重定向操作符(>将输出保存到指定文件,>>将输出追加到指定文件末尾)

ls > dir.list 将ls的输出重定向到文件dir.list中
who >> dir.list 将系统上的用户列表追加到dir.list
</<< 输入重定向操作符
more < file 分屏显示file的内容
cat 显示或连结文件
cat file 显示file文件的内容
cat file1 file2 >> file3 将file1和file2的内容合并到file3中

28.& 后台处理

date & pwd & 创建2个后台进程


总结

1.cd -


更改到上一次访问的目录。


2.sudo !!


以 root 帐户执行上一条命令。

3.mtr google.com


traceroute + ping。


0 0