1、shell命令
top
:查看有哪些系统进程正在运行。该命令提供了实时对系统处理器状态的监控,它能够实时显示系统中各个进程的资源占用情况。该命令可以按照对CPU、内存使用和执行时间对系统任务进程进行排序显示,同时还可以通过交互式命令进行设定显示。
df
:检查磁盘空间占用情况(磁盘空间使用率)。
wc
:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
kill
: 终止进程
2、复制:
y1G
:从当前行复制到第一行,并复制第一行
yG
:从当前行复制到最后一行
y0
:从当前位置复制到行首,不包括光标所在位置的字符
y$
:从当前位置复制到行尾,包括光标所在位置的字符
3、删除:
d1G
: 从当前行删除到第一行
dG
:从当前行删除到最后一行
d0
:从当前位置删除到行首,不包括光标所在位置的字符
d$
:从当前位置删除到行尾,包括光标所在位置的字符
4、获取文章行数:
wc -l filename
5、输入文件的最后5行到另外一个文件中
tail -n 5 file1 >> file2
6、查找文件中包含hello的行
grep hello filename
(直接输出显示到终端)
7、查找当前目录下所有目录名为CVS的子目录的命令***
find ./CVS -maxdepth 1 -type d print
8、如何让一个程序在后台运行并把输入定向到指定的文件***
nohup 程序 >> 文件名 2>&1 &
(2>&1要放在输出文件名的后面)
nohub = no hang up不挂起
9、如何把一个文件的内容添加到另一个文件的末尾
cat file1 >> file2
10、如何实时的显示一个文件的输出
more
less
(ctrl+b
: 向上翻页;ctrl+f
: 向下翻页)
(less
比more
更强大,提供翻页,跳转,查找)
11、定时执行一个程序的方法有什么
at
: 仅执行一次任务就结束。
crontab
:循环周期性调度。
12、vi 编辑器中,如何替换指定的字符串
使用s
命令。
:n1,n2s/word1/word2/g
: 将第n1行与n2行之间的word1
替换为word2
:1,$s/word1/word2/g
: 从第1行到最后一行中的word1
替换为word2
13、如何查看所有用户
cat /etc/passwd
14、Linux上的crond服务可对服务器设置计划任务,设置每2分钟执行一次/tmp/test.sh的脚本。
(1)开启cron服务:
sudo /etc/init.d/cron start
(2)添加定时任务:
crontab -e
(3)编辑如下:
*/2 * * * * /tmp/test.sh
15、检测Linux性能(cpu,磁盘io,内存,网络等)都用到哪些命令?
ps
: 显示当前进程 (process) 的状态。
free
: 显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等
vmstat
: 是Virtual Meomory Statistics(虚拟内存统计)的缩写,可实时动态监视操作系统的虚拟内存、进程、CPU活动。
netstat
: 显示整个Linux系统的网络情况
16、打包压缩和解包命令
tar -zcvf 新压缩包名 要压缩的文件名
: 压缩文件
tar -zxvf 压缩包名
:解压文件
17、软连接和硬链接有什么区别?
-
软链接:
ln -s 源文件 目标连接名
1.软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
2.软链接可以 跨文件系统 ,硬链接不可以
3.软链接可以对一个不存在的文件名进行链接
4.软链接可以对目录进行链接
-
硬链接:
ln 源文件 目标链接名
1.硬链接,以文件副本的形式存在。但不占用实际空间。
2.不允许给目录创建硬链接
3.硬链接只有在同一个文件系统中才能创建
18、Linux下的find命令和grep命令的区别
find
:在磁盘/分区中找到文件,可以配type可以配size time等,通过文件名或文件大小或访问时间找到指定文件。
grep
:查找文件里符合条件的字符串,并把匹配的行打印出来,可以使用正则表达式。
19、有mail.log的一个文档,内容为若干邮件地址,其中用' '将邮件地址分隔。要求从中挑选出sina.com的邮件地址(包括从文件读取、过滤到列印出来)。
mail.log内容如下:
james@sina.com.cn
jack@163.com
zhansan@sohu.com
lisi@hotmail.com
wangwu@gmail.com
参考答案:
`cat mail.log | grep sina.com`
或者:
#!/bin/bash
while read row ;
do
case $row in
*sina.com*) echo $row ;;
esac
done < mail.log