前言
面试的时候经常会问到一些关于linux的命令,linux命令有很多种,但是测试人员经常用到的有一些,今天安静总结下linux常用的一些命令。
操作目录命令
显示文件
ls:表示列出当前目录下的文件内容,可以通过 ls --help 查看更多使用。安静简单介绍两个使用最多的
ls -a:表示全部文件包括隐藏文件
ls -l:列出全部文件,显示文件属性权限,修改时间
切换目录
cd :表示切换目录
# 上一层目录 [root@anjing anjing]# cd .. # 回到根目录 [root@anjing home]# cd / # 跳转到指定目录 [root@anjing /]# cd /home/anjing
创建新的目录
mkdir:创建新的文件夹
mkdir -p :表示创建子目录
[root@anjing test]# ls [root@anjing test]# mkdir anjing [root@anjing test]# ls anjing [root@anjing test]# mkdir -p 123/anjing [root@anjing test]# ls 123 anjing [root@anjing test]# cd 123/anjing/ [root@anjing anjing]#
显示当前目录路径
pwd:表示显示当前目录的绝对路径
[root@anjing anjing]# pwd /home/anjing/test/123/anjing
删除目录
rm:表示删除目录文件
rm -r :依次删除目录下的文件内容
rm -f : 表示强制删除文件或目录
rm -i: 表示删除文件前先询问是否删除
[root@anjing test]# rm -rf anjing/ [root@anjing test]# ls 123
文件操作命令
创建文件
touch:表示创建一个空的文件
vi:表示创建一个文件(需要进入使用vi命令保存)
[root@anjing 123]# ls [root@anjing 123]# touch 123.txt [root@anjing 123]# ls 123.txt
复制文件
cp 文件目录 对应文件目录
cp :表示文件辅助文件到对应目录
cp -p :表示文件属性一起复制过去
cp -r:表示复制改文件下的所有文件
[root@anjing 123]# cp 123.txt anjing/ [root@anjing 123]# cd anjing/ [root@anjing anjing]# ls 123.txt
移动文件
mv 文件目录 移动到目录(最后也可以更改名称)
mv:表示移动文件目录
mv -f :表示强制移动文件
[root@anjing 123]# mv 123.txt anjing/1111.txt [root@anjing 123]# cd anjing/ [root@anjing anjing]# ls 1111.txt
更改文件属性
linux文件中都会有对应的属性。【rwx】的三个参数组成的。一般通过ls -l的时候就可以查看到。如果没有权限的话,会已“-”代替
r:表示可读(read)数字表示4
w:代表可写(write)数字表示2
x:代表可执行(execute)数字表示1
如果想要全部的属性权限就是777
我们可以通过chmod进行修改文件属性
chmod:表示修改文件属性
[root@anjing anjing]# chmod 777 1111.txt [root@anjing anjing]# ls -l total 0 -rwxrwxrwx 1 root root 0 Nov 16 16:57 1111.txt -rw-r--r-- 1 root root 0 Nov 16 17:04 123.txt
查看文件
cat:表示从第一行开始读显示文件内容
cat -n :表示显示文件的行数
tac:表示从最后一行开始显示。
more:表示查看文件内容
在看文件页面,我们可以通过B键进行切换上一页,空格是下一页。
[root@anjing anjing]# more 1111.txt
less:表示一页一页的查询内容
空格:翻页
键盘 ↑ : 表示上一页
键盘 ↓ :表示下一页
/XXX:表示查看XXX
n:往下查找XXX
q:退出less
[root@anjing anjing]# less 1111.txt
head - n :表示去除文件前几行 n表示数字输入几显示几
[root@anjing anjing]# head -2 123.txt 这是1行 这是2行 [root@anjing anjing]#
tail -n:表示显示后几行 n表示几行
[root@anjing anjing]# tail -1 123.txt 这是最后一行
查找文件
find :表示查找文件内容
find -name :表示根据文件名进行查找
find -tpye: 表示根据文件类型查找
下图查找表示:在home/anjing/test目录下 查找名字后缀为 txt的文件
which : 查找环境变量下符合内容条件返回对应的目录
[root@anjing ~]# which python
/usr/bin/python
解压文件
tar :解压命令
tar(选项)(参数) -c或--create:建立新的备份文件; -C <目录>:这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。 -d:记录文件的差别; -x或--extract或--get:从备份文件中还原文件; -t或--list:列出备份文件的内容; -z或--gzip或--ungzip:通过gzip指令处理备份文件; -Z或--compress或--uncompress:通过compress指令处理备份文件; -f<备份文件>或--file=<备份文件>:指定备份文件; -v或--verbose:显示指令执行过程; -r:添加文件到已经压缩的文件; -u:添加改变了和现有的文件到已经存在的压缩文件; -j:支持bzip2解压文件; -v:显示操作过程; -l:文件系统边界设置; -k:保留原有文件不覆盖; -m:保留文件不被覆盖; -w:确认压缩文件的正确性; -p或--same-permissions:用原来的文件权限还原文件; -P或--absolute-names:文件名使用绝对名称,不移除文件名称前的“/”号; -N <日期格式> 或 --newer=<日期时间>:只将较指定日期更新的文件保存到备份文件里; --exclude=<范本样式>:排除符合范本样式的文件。
其他常用命令
df:列出文件系统的整体磁盘使用量
-a : 表示所有文件系
[root@anjing ~]# df -a Filesystem 1K-blocks Used Available Use% Mounted on sysfs 0 0 0 - /sys proc 0 0 0 - /proc devtmpfs 989704 0 989704 0% /dev securityfs 0 0 0 - /sys/kernel/security tmpfs 1008140 0 1008140 0% /dev/shm devpts 0 0 0 - /dev/pts tmpfs 1008140 16832 991308 2% /run tmpfs 1008140 0 1008140 0% /sys/fs/cgroup cgroup 0 0 0 - /sys/fs/cgroup/systemd pstore 0 0 0 - /sys/fs/pstore none 0 0 0 - /sys/fs/bpf
top:查看系统动态资源占有率
第一行表示:系统时间,用户连接数,15分钟的平均负载
第二行表示:进程信息
第三行表示:cpu信息
第四行表示:内存信息
netstat:表示查看端口信息
-a:显示全部端口信息
[root@anjing ~]# netstat -a Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:sunrpc 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:mountd 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:ssh 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:34711 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:nfs 0.0.0.0:* LISTE
ps:查看进程
-e:查看所有进程
-f:显示UID信息
root@anjing ~]# ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 0 13:52 ? 00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 18 root 2 0 0 13:52 ? 00:00:00 [kthreadd] root 3 2 0 13:52 ? 00:00:00 [rcu_gp] root 4 2 0 13:52 ? 00:00:00 [rcu_par_gp] root 6 2 0 13:52 ? 00:00:00 [kworker/0:0H-events_highpri]
kill -9 pid:表示杀死进程
总结
安静收集了这多的linux命令,大部分也都举例说明了使用方法,小伙伴们可以动手自己操作下,熟能生巧。敲的多了就记住了。