(课程学习笔记)玩转Linux:常用命令实例指南

链接:https://edu.csdn.net/course/play/26264/326631

课程一:linux入门经典书籍推荐
linux入门到精通
鸟哥的linux私房菜
linux就该这么学
课程二:linux开发环境搭建
如何安装linux系统?VMware了解一下
1.1常见的虚拟机:VMware(收费、功能强大),VirtualBox(开源免费)

远程操作虚拟机神器XShell

拖拖拉拉实现文件传输

课程三:linux基本命令用法(工作中百分之九十是常用命令)
文件及目录管理命令
1.1创建和删除
创建一个或多个文件 touch xxx1 xxx2
修改时间戳为当前时间 touch xxx
进阶-a -m -t
创建空目录 mkdir xxx
递归创建多个目录 mkdir -p xxx/xxx1/xxx2
删除一个或多个文件rm xxx1 xxx2
删除一个或多个目录rm -r xxx1 xxx2
强制删除文件/目录 rm -rf xxx
移动文件/目录 mv xxx1,txt xxx2
更改文件名 mv xxx1.txt xxx2.txt
复制文件 cp file1 file2
复制目录 cp -r dir1 dir2
ps:如果dir2存在则dir1复制到dir2下
1.2目录切换
cd
.当前目录
…上一层目录
cd 进入用户主目录
cd ~进入用户主目录
cd -返回进去此目录之前的目录(回退操作)
cd …返回上级目录
cd …/…返回上两级目录
pwd:查看当前所在路径
1.3列出目录项
列出当前目录所有的文件 ls
列出当前目录所有的文件包含隐藏文件 ls -a
以列表形式列出当前目录所有文件包含隐藏文件 ls -ll
以易于人类阅读形式列出当前目录所有文件ls -lh
以树形显示目录的文件架构
tree
tree dir
1.4权限及所有者相关
查看文件的权限信息 ll
例如:drwxr-x— tarena tarena
解释:第一部分只有一个字符,代表文件类型;第二部分三个字符,代表文件所有者权限;第三部分三个字符,代表文件所属用户组权限;第四部分三个字符,代表其他人对这个文件的权限 ;第五部分为文件所有者的名字tarena,第六部分为文件所属用户组权限tarena。
文件类型:- 普通文件 d 目录文件 p 管道文件 I 链块文件 b 块设备文件 c 字符设备文件 s 套接字文件
1.4.1更改文件所有者 chown 英文释义 change owner
chown[-R] 所有者文件或者目录
chown[-R] 所有者:所属组文件或者目录
[-R]代表所有的子孙目录文件也会相应的改变
1.4.2更改文件所属组 chgrp 英文释义 change group
chgrp[-R] 所属组 文件或者目录
1.4.3修改文件权限 chmod
使用数字来修改文件权限
例如: chmod 777 file.txt
将file.txt这个文件的权限修改为 三者都是可读可写可操作权限
—分别是4 2 1,如果没有权限则是0
7=4+2+1,7代表rwx
5=4+1,5代表r-x
3=2+1,3代表-wx
使用字母来修改文件权限
u-user g-group o-other a-all
+代表添加 =代表设定 -代表删除
例如 chmod a+w file.txt 意思是给所有的权限者添加写权限
chmod u=rwx,go=rx file.txt 意思是给所有者可读可写可操作,给组用户和其他用户可读可操作

文本处理命令
2.1 cat cat不是猫,是单词concatenate的缩写,代表“连接”
在终端查看文本内容 cat file.txt
从键盘创建一个文件 cat > file1.txt ,敲完这个命令后回车会进入编辑,再按ctrl+c会保存并退出编辑模式
将几个文件合并为一个文件 cat file1.txt file2.txt > file3.txt
2.2 more 分页显示查看
基本操作:q:退出 more 空格键:向下滚动一屏 b:返回上一屏 回车:向下滚动一行
分页显示文本文件内容 more file.txt
通过管道分页显示结果 例: ll / etc | more
2.3 less 分页显示查看
基本操作:实际上与man命令相同
分页显示文本文件内容 lessfile.txt
通过管道分页显示结果 例: ll / etc | less
2.4 head 显示文本文件前n行内容(默认显示前10行)
例:head -n 5 file.txt 显示这个file.txt前五行的内容
2.5 tail
显示文件末尾最后几行内容 例:tail -n 5 file.txt
循环查看文件最新内容,也就是刷新最新的内容
比如查看日志文件时会用到,我们需要查看的是最新生成的日志追加内容 tail -f 20200415.log
从第5行开始显示文件 tail -n +5 file.txt
2.6 sort
按ASCII码升序排序 sort file.txt
排序并去除重复行 sort -u file.txt
按ASCII码降序排序 sort -r file.txt
2.7 uniq 显示去重后的内容 uniq file.txt
2.8 文本处理三剑客
grep 文件内的字符串查找
grep [option] p attern file
常用选项-i 忽略大小写 -r 递归搜索文件 -n 标识结果所在的行数 -s 不显示错误信息
例:grep -rins apple file.txt,在file.txt这个文件里递归忽略大小写查询apple,且显示所在行数和错误信息
sed 针对行的文本处理
命令格式
sed option ‘script’ file1 file2
脚本格式
/pattern/command
常用选项
-n 静默输出
-i 直接修改源文件,经过脚本指令处理后的内容将输出至源文件
常用脚本指令
a append 追加 ,i insert 插入 ,d delete 删除,s substitute 替换,p print 打印
常用sed替换指令
/pattern/s/pattern1/pattern2/查找符合pattern的行,将该行第一个符合pattern1的替换为pattern2
/pattern/s/pattern1/pattern2/查找符合pattern的行,将该行所有符合pattern1的替换为pattern2
示例:
sed ‘2a apple’ file.txt 在第二行后追加apple
sed ‘1,2a apple’ file.txt 在第一,二行后分别追加apple
sed ‘2i apple’ file.txt 在第二行上面插入apple
sed ‘2d apple’ file.txt 把第二行删除
sed ‘/root/a tarena1512’ /etc/passwd 在路径为/etc/passwd这个文件查找有root的行并追加tarena1512
sed -n ‘/root/p’ /etc/passwd 在路径为/etc/passwd这个文件查找有root的并将这行内容打印
sed ‘/root/s/bin/BIN/g’ /etc/passwd 在…查找包含root的行并将这行中所有的bin替换为BIN
sed ‘s/bin/BIN/g’ /etc/passwd 在该文件中所有的bin替换为BIN
sed ‘s/root/----&----/g’ /etc/passwd 在该文件中所有的root替换为----root----,&相当于拼接符号
awk 针对列的文本处理
命令格式
awk option ‘script’ file1 file2
脚本格式
/pattern/{actions}
condition{actions}
示例:
awk ‘{print $2}’ score.txt 打印出score.txt这个文件第二列的内容
awk ‘$2<60 {print $2}’ score.txt 打印出score.txt这个文件第二列小于60分的内容
awk ‘$2>90 {print $0 " GOOD"} $2<70 {print $0 " BAD"}’ score.txt 打印出score.txt这个文件,第二列分数小于70分的和分数大于90分的所有列内容,并在其后拼接上对应评语GOOD和BAD,$0代表所有列
awk -F ‘:’ ‘{print $2}’ score.txt 以’:‘为分隔符打印出第二列的内容
awk -F ‘:’ ‘{print $1"\t"$3}’ score.txt 以’:'为分隔符打印出第一列和第三列的内容,\t为转义字符空格
awk -F ‘:’ ‘BEGIN {print “start:”}{print $1"\t"$3}END{print “end…”}’ score.txt 在所有打印内容的最前面以及最后面分别加上内容

磁盘管理命令
3.1 df 磁盘文件的可用空间
df -h 以人类能看的懂的方式看磁盘空间,h-human
df ~ -h 查看家目录磁盘空间
3.2 du
显示目录或者文件所占空间 du (-h)
显示指定文件所占空间 du -h file.txt
3.3 tar
压缩文件 tar zcvf file.tar.gz file1 file2
解压文件 tar zxvf file.tar.gz

-z 支持gzip属性的文件
-v 显示操作过程
-f 必须,使用档案名字,这个参数是最后一个参数,后面只能接档案名
-c 建立压缩档案
-x 解压
1
2
3
4
5
进程管理命令
4.1 ps
ps命令是Process Status的缩写,用来列出系统中当前运行的那些进程
ps aux 列出目前所有的正在内存当中的程序

USER:该 process 属于那个使用者账号的
PID :该 process 的号码
%CPU:该 process 使用掉的 CPU 资源百分比
%MEM:该 process 所占用的物理内存百分比
VSZ :该 process 使用掉的虚拟内存量 (Kbytes)
RSS :该 process 占用的固定的内存量 (Kbytes)
TTY :该 process 是在那个终端机上面运作,若与终端机无关,则显示 ?
STAT:该程序目前的状态,主要的状态有 R :该程序目前正在运作,或者是可被运作 S :该程序目前正在睡眠当中 (可说是 idle 状态),但可被某些讯号 (signal) 唤醒。 T :该程序目前正在侦测或者是停止了 Z :zombie (疆尸) 程序
START:该 process 被触发启动的时间
TIME :该 process 实际使用 CPU 运作的时间
COMMAND:该程序的实际指令
4.2 top
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况并且倒序排序,类似于Windows的任务管理器。
4.3 kill
linux下向进程发送信号的命令。
列出所有命令名称
kill -l
杀死指定进程PID的进程
kill –9 PID
4.4 killall
杀死指定名字的进程
killall helloworld

网络工具
5.1 ssh 在主机环境是windows的情况远程操控linux服务器
连接到远程主机 ssh name@remoteserver
如何查看远程主机的IP地址 ifconifg
通过SSH运行远程shell命令 ssh [email protected] “uname -a”
5.2 wget
使用wget下载单个文件
wget https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2
断点续传
wget -c https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.bz2
5.3 scp
上传文件 scp /home/alvin/file.txt [email protected]:/home/root
下载文件 scp [email protected]:/home/root/file.txt /tmp
5.4 ping
向指定的网络地址发送一定长度的数据包,按照约定,若指定网络地址存在的话,会返 回同样大小的数据包
测试网络连通性 ping baidu.com
ping指定次数 ping -c 5 baidu.com
用户管理工具
6.1 sudo
sudo command 以系统管理者的身份执行指令
例:sudo touch file1.txt 以系统管理员的身份创建一个file1.txt
6.2
adduser: 会自动为创建的用户指定主目录、系统shell版本,会在创建时输入用户密码。
useradd:需要使用参数选项指定上述基本设置,如果不使用任何参数,则创建的用户无密 码、无主目录、没有指定shell版本。
6.2.1 useradd
例:sudo useradd -d “/home/alvin” -m -s “/bin/bash” alvin
-d “/home/alvin" :就是指定/home/alvin为主目录
-m 就是如果/home/alvin不存在就强制创建
-s 就是指定shell版本
6.2.2 adduser
adduser user
如何查看有几个用户?
ls /home/ 直接查看home目录下有几个主目录
6.2.3 userdel
删除用户
userdel -r user # 将其宿主目录和系统内与其相关的内容删除
6.2.4 passwd
更改密码
passwd alvin
6.2.5 groupadd
添加一个新组
groupadd leader
查询组
cat /etc/group | grep leader
6.2.6 groupmod
更改组名 groupmod -n leaders leader 前一个为新组名 后一个为老组名
更改组GID groupmod -g 3000 leaders
6.2.6 groupdel
删除用户组
groupdel leaders
7.linux终端快捷键(不同SHELL的快捷键会有所不同)
tab键:补全路径/命令,使用最广泛
ctrl+l: 清屏
ctrl+c: 终止当前运行的程序
ctrl+z: 将当前运行的程序转到后台,和&效果一样
ctrl+r: 查找历史命令

8.Vi/Vim编辑器基本用法
Vim可以理解为windows下的笔记本功能,但是比笔记本功能强大很多。
8.1三种模式之间的切换

你可能感兴趣的:((课程学习笔记)玩转Linux:常用命令实例指南)