Linux基础知识总结
一:认识Linux:Linux是一款广泛应用于服务器的操作系统
Linux操作系统的特点:安全、免费开源、多用户 。用户具有完全的操作权限,并且一个用户的操作不会影响到其他用户 。拥有稳定、快速的优势。
Linux用户:root表示管理员用户,具有最高的访问权限。
其它用户:具有部分文件操作权限。
二:使用MobaXterm连接Linux:
由于Linux在服务器上,一般不能直接在上面操作,并且在上面操作也比较不方便。所以有各式各样的客户端软件用来连接Linux。例如MobaXterm。
要想连接Linux,首先知道Linux的ip地址、用户名、密码。在虚拟机中需要和本地机要能ping通,采取ifconfig命令获取IP地址。
需要注意虚拟机开机默认是不启网卡,事先需要手动启动。
nat方式是给虚拟机一个块独立的网卡 稳定 ip不变
鼠标在虚拟机上右键- 》设置-》网络适配器 -》右侧选 自定义 vmnet8 保存
虚拟机-》编辑-》虚拟网络编辑器-》更改设置-》讲net8改成NAT模式 应用 确定退出
很多情况下改为 并没有生效 可以先改成桥接或其他 -》保存 然后再改回 -》保存
三:Linux的基本命令
Linux的命令基本语法:命令名 -选项 参数
使用tab键可以使用命令提示功能。
cd,改变目录
ls,列出文件和目录
ls ‐a,显示目录下的所有文件,包括隐藏文件
ls ‐l,显示长列表格式
mkdir,建立目录
rmdir,删除空目录
touch,建立空文件
cp,复制命令
mv,移动文件和改文件名
rm,删除文件和目录
rm ‐rf *,删除所有内容,包含目录和文件,r表示递归,f表示强制
ln,建立符号连接,类似于建立某个文件的快捷方式
ln ‐s 源目标
vim 编辑器 i 写入按esc退出
:-> wq 保存并退出
:-> q!强制退出
cat 查看文本内容
cat a > b 将a的内容给b
cat a >> b 将a的内容追加给b
tar 归档压缩 两个功能 一个压缩 一个是解压缩
选项 -c 压缩
-x 解压缩
-f 文件
-v 显示
压缩 tar -czvf 压缩后文件名 目标
解压缩 -xzvf 目标名
-xzvf 目标名 -C 目标目录
四:Linux权限与用户组
Linux用户可以到几乎完全的隔离各个用户之间的操作互不影响.如果组中有用户修改组,
组中的用户也跟随改变。一个组里面可以有多个用户,所以我们可以通过命令操作用户和操作组。
用户以及组操作的指令及其案例:
useradd 用户名,添加用户
【案例】useradd xiaoming
passwd 用户名,为新用户设密码
【案例】passwd xiaoming,修改小明的密码
userdel 用户名,删除用户
【案例】userdel xiaoming,删除用户但保存用户主目录
【案例】userdel ‐ xiaoming,删除用户以及用户主目录
groupadd 组名,添加组
【案例】groupadd xiaoming
groupdel 组名,删除组
【案例】groupdel xiaoming
groupmod -n 组名,修改组
用户权限的操作:
1 在Linux中万物皆文件 我们可以查看文件的权限
2 通过ll或ls -l 可以查看文件的类型和权限
3 一供有10位 第一位是类型位 剩下9位 每三位一组 分别表示 所属用户 组 其他
4 权限的表示 x代表可执行 w代表可写 r代表可读
5 更方便的可以使用 1 2 4来表示执行写读 这样他们的和结果组合形式只有一种可能
所以我们还可以使用三个数字来表示755
改变权限的命令
chmod 改变文件或目录的权限
chmod 755 abc:赋予abc权限rwxr-xr-x
chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限
chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
chmod a+r abc:给所有用户添加读的权限
改变所有者(chown)和用户组(chgrp)命令
chown xiaoming abc:改变abc的所有者为xiaoming
chgrp root abc:改变abc所属的组为root
chown root ./abc:改变abc这个目录的所有者是root
chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root
改变用户所在组
在添加用户时,可以指定将该用户添加到哪个组中,同样用root的管理权限可以改变某个用户所在的组
usermod ‐g 组名 用户名
你可以用 usermod ‐d 目录名 用户名,改变该用户登录的初始目录
五:shell编程
在Linux的操作系统下,Shell用来和系统内部进行交互,可以理解为是一种语言。具有灵活、快捷、方便的特点。
例:Shell hello world[
echo 用来输出语句
]
Shell文件[
1 #!/bin/bash 什么shell版本
2 # 符号是 注释
3 ./文件名 执行文件中的脚本
4 bash 文件名 执行脚本
]
shell中的变量 {
1直接使用字母为变量命令
2使用等号赋值 注意变量和等号之间不可以有空格
3使用$变量名 ${变量名} 引用变量名
}
test{
-eq
-gt
-lt
}
if test $a -eq $b
if [ $a -gt 5 ];#注意![]内部两端要有空格
then 要执行的语句
else 要执行的语句
fi
if [];
then
elif [];then
else
fi #表示结束
case 变量 in
选项1) 要执行的语句;; #注意!两个分号
*) default
esac 表示结束
}
while 循环 :【
while [ $i -lt 10 ]
do
done
注意 在变量自增的时候
如果直接 $num+1 字符串拼接
a num=$(($num+1)) #当数字计算
num=$[$num+1]
】
2 for 语法【
a [ for n in a b c d
do
$n
done
]
b [ for((i=0;i<100;i++))
do
$i
done
]
】
3 函数【 1 定义函数 语法 [
function 函数名 () { 函数体 }
]
2 调用函数 函数名 参数1 参数2
3 $1 取第一个参 echo 输出结果 $(函数名取结果)
】