Linux的基础命令
初入运维界,从Linux开始学起。首先掌握的是Linux的26个常用命令,总结如下:
1. ls
ls = list 查看当前目录下所有文件信息,常用参数组合:ls -al (l 指详细信息 a指所有文件包括隐藏文件) -h (使用MB/GB表示文件大小) -i (显示文件的inode值)
2. cd
cd 切换到指定目录。cd /home/deploy 或 返回上一级目录 cd ../
3. pwd
查看当前所在路径。
4. touch
创建一个新文件。touch test 或 touch test.txt 或 touch test.sh
5. mkdir
创建一个新文件夹。mkdir newdir
在/root 下 创建一个 test 文件夹 mkdir /root/test
在/root 下 创建一个 master 文件夹,同时在master文件夹中创建minion文件夹 mkdir -pv /root/master/minion -p 递归创建 -v 查看过程
6. cat
查看文件全部内容并打印到屏幕上 cat /etc/passwd 或 cat test.txt
7. more
分页显示文件内容,与cat相似 more /etc/passwd 或 more test.txt
8. tail
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
查看文件后10行 tail -10 /etc/passwd
读取日志文件的持续写入 tail -F /var/log/messages
9. less
查看文件内容,同cat|more|tail,可以用 / 输入内容进行查找,q退出。
10. cp
拷贝文件或目录(文件夹)。例如:
将 test.txt 文件拷贝到 /tmp 目录下 cp test.txt /tmp 用法: cp 文件或文件夹 完整的路径
将 master 文件夹整体拷贝到 /tmp 目录下 cp -r master /tmp -r 参数表示递归处理,讲指定目录下的所有文件与子目录一并处理
11. mv
移动文件或目录,也可用来修改文件或目录名(类似WIN下的剪切)。例如:
将 test.txt 文件移动到 /tmp 目录中 mv test.txt /tmp
将 master 文件夹整体移动到 /tmp 目录下 mv -r master /tmp -r 表示递归处理,与cp用法类似
12. rm
删除文件或目录,删库跑路必备技能,慎用。例如:
删除 /tmp 下的 test.txt 文件 rm /tmp/test.txt -f -f 参数表示强制删除不询问
删除 /tmp 下的 master 目录 rm /tmp/master -rf -r 参数表示递归删除
终极跑路大招 rm -rf /* 后果自负
13. find
指定目录下查找文件。例如:
在 /tmp 目录下查找以 .txt 结尾的文件 find /tmp -name '*.txt' -name 指定文件名以 .txt 结尾的
14. ln
创建一个链接(类似于WIN下的快捷方式)。例如:
在 /opt 目录下创建一个 test.txt 文件的软链接 ln -s /tmp/test.txt /opt/test.txt.ln -s 创建一个软链接,用法 ln -s 从哪来 到哪去
15. ifconfig
打印当前网络设备(网卡)信息
16. netstat
查看当前网络相关信息。例如:
netstat -an -a 显示所有socket -n 直接使用ip地址
netstat -ntlp -t 显示TCP协议 -l 显示正在监控中的socket -p 显示程序识别码和程序名称
17. ps
查看当前进程,加参数组合使用。例如:
显示所有进程信息,连同命令行 ps -ef
显示目前所有正在内存当中的程序 ps aux
可以使用 管道符 来过滤出想查找的进程 ps aux | grep ssh
18. kill
杀死一个进程。PID为进程号,可以使用ps 命令结合参数查找出进程杀死。例如:
强制终止 PID为 15131 的进程 kill -9 15131 -9 是kill的9号信号 意思是强制终止。可以使用 kill -l 查看全部信号
19. top
实时显示系统各进程的运行与资源占用情况。
20. df
查看磁盘空间使用情况。例如:
df -h -h表示使用 MB/GB 大小显示出来
21. du
查看当前目录的磁盘使用情况。例如:
du -h /tmp
22. tar
打包、压缩和解压命令。例如:
解压 test.tar.gz 文件 tar -zxvf test.tar.gz -z 有 gzip 属性的 -x 解压 -v 显示过程 -f 指定文件
解压 test.tar.bz2 文件 tar -xjvf test.tar.bz2 -j 有 bz2 属性的
把 master 目录仅打包 tar -cvf master.tar master
把 master 目录打包后压缩 tar -zcvf master.tar.gz master -c 建立压缩档案,使用 gzip 压缩
把 master 目录打包后压缩 tar -jcvf master.tar.bz2 master -c 建立压缩档案,使用 bz2 压缩
23. useradd
创建一个普通用户。例如:
创建一个新用户 deploy useradd deploy
24. passwd
修改一个用户的密码。例如:
修改新创建的 deploy 用户的密码 passwd deploy 输入一遍确认一遍后生效
25. chown
修改文件或目录的所有者和所属组。例如:
修改 test.txt 文件的所有者和所属组为deploy chown deploy:deploy test.txt
修改 master 目录的所有者和所属组为deploy chown -R deploy:deploy master -R 表示递归处理
26. chmod
修改文件或目录的访问权限。例如:
Linux系统对文件权限划分说明:r=读权限=4,w=写权限=2,x=执行权限=1。u=所有者,g=所属组,o=其他人
将 test.sh 文件的所有者授予全部权限,所属组授予读和执行权限,其他人无权限。chmod 750 test.sh
将 master 目录和目录下的所有文件的所有者授予全部权限,所属组和其他人授予读和执行权限 chmod -R 755 master -R 递归处理
27. vi
文本编辑器。例如:
打开 test.txt 文件,按 i 进入编辑模式,编辑好后按ESC回退到查看模式,输入 ":wq" 保存退出
28. reboot
重启计算机
29. shutdown
关闭计算机,可加参数。例如:
立刻关机 shotdown now
30. su
切换用户。切换后不会改变当前工作目录,但会改变一些环境变量。例如:
临时切换至新用户deploy su deploy