linux基础
用户 |
---|
操作系统(管理计算机硬件与软件的计算机程序) |
计算机硬件 |
1.1linux发行版本
Debian
Kali Ubuntu
Redhat
Fedora CentOS(企业版) Oracle Linux(企业版)
OpenSUSE
1.11Linux是树形结构 /是根目录 其他目录都是他的子节点。
/:根目录 ,唯一
/root:系统管理员root目录
/home:用户目录
/usr:应用程序
/etc:系统配置
/boot:内核文件
/tmp:临时文件
/bin:放命令的目录
1.12Linux远程连接(xshell,MobaXterm_Personal_)
了解Linux ip 地址 以及SSH的端口(默认:22)
查看linux ip ifconfig命令
通过netstat-anopt | grep sshd 查看ssh的端口
控制对方电脑的条件
1.对方开启服务 是否开启用通过netstat-anopt | grep sshd 命令
2.知道对方ip地址
3.可以ping通对方的电脑
linux命令格式 命令 -选项 参数
command [-options] [parameter]
command 表示命令名称
[]表示是可选的 可有可无。
[-options] : 表示命令的选项。
[parameter] :表示命令的参数
命令 --help 查看帮助信息
man 命令 查看帮助信息
ls -l 以列表形式显示文件或者目录内容
ls -a 以列表形式显示所有的目录或者文件,包括隐藏文件。
ls -h 显示文件的目录或者大小
touch 新建文件 不是文件夹
*:匹配0-多个任意字符 ls *.txt
?:匹配单个任意字符 ls ?.txt
[abcd]:表示匹配括号内的任意一个字符 ls [abcd] .txt
[a-d] : 匹配a-d的范围中任意一个字符 ls [a-d].txt
绝对路径:/开头
/home开头
相对路径:有参照物
~ 表示:/home/用户
cd . 等价于 cd ./
cd - 切换到1上一次操作的目录。
cd 和 cd ~ 快速回到家目录
mkdir 目录名称
-p选项 实现多个层级的目录创建
mkdir /mike 在根目录下创建文件夹
mkdir mike 在当前目录下新建文件夹
rm 删除文件或者目录
-i :表示交互式,删除前询问是否删除
-f:删除后不显示提示信息
-r:删除文件夹以及文件夹里的所有内容
cp 复制文件
-f:强制覆盖已存在文件,并且不提示。
-i:交互式复制,覆盖时提醒用户。
-r:若源文件为目录,则复制该目录下的所有内容。
-v:显示复制的进度。
cp 1.txt a.txt
复制1.txt 复制后的文件名为a.txt
mv 移动文件或者目录
格式 : mv 源文件 目标文件/目录
mv 1.txt ../tom.txt
把1.txt移动到上一个文件夹,并改名为tom.txt。
cat 查看文件 ,创建文件,合并文件,追加文件
cat用来查看内容少的文件
more 文件名 适用于查看文件内容多的文件
b上一页 f下一页 q退出
grep 查找文本文件
^a 在1.txt文件里 查找以a开头的字符所在行 grep “^a” 1.txt
ke$ 在1.txt文件里查找以ke结尾的字符所在行 grep “ke$” 1.txt
重定向 > >>
ls -l > 1.txt
将ls -l 所显示的内容 重定向到1.txt文件中。原来的内容不存在,将被覆盖
ls -l >> 1.txt
将ls -l 所显示的内容 重定向追加到1.txt文件中,原来的内容还在。
cat合并文件需要用到 >符号
cat 1.txt 2.txt > 3.txt
管道 | 过滤取关键信息
ls /usr/bin | grep more
查找 bin目录中的内容 找到包含more的内容
管道左边将ls 查询出的内容放入到管道,管道右边,取出信息,并根据命令查找相关信息。
which 查找工具的安装位置
echo :输入什么显示什么 格式 echo bobo 结果:bobo
通过重定向删除/var/log/message 文件中的信息
echo " " > /var/log/message
ps 查看进程
ps -aux 显示进程详细信息
-a 显示所有进程,包括子进程
-u显示进程的详细状态
-x显示没有控制的终端进程
ps -aux | grep gedit 查找名字为gedit的进程信息
top 查看进程的时时状态
shift+m按内存降序降序排列信息
shift+p 按cpu使用率降序排列信息
kill -9 进程号 杀死进程
netstat 查看系统监听端口
netstat [-anptu] | grep mysql 查看mysql端口号
-a 查看所有已打开的端口
-n 以数字方式显示打开的端口,不显示别名。
-p 显示对应的pid
-t 显示tcp协议的端口
-u 显示出udp协议的端口
查看系统监听的端口号{ 格式 : lsof -i:端口号}
通过端口号查看进程号
lsof -i:3306
主要用于查询占用端口号的进程,查到后将之杀死
查看日志信息 头部 head
head -5 查看前五行
查看日志信息 尾部 tail
tail -5 查看后五行
tail -f 文件名 动态跟踪文件的变化。
用户权限
r read 4 读 - 0 无权限
w write 2 写
x execute 1 执行
-代表普通文件
l代表链接文件 link
d文件夹 document
-rw-r--r--. 1 root root 43 11月 5 21:58 tesh02.sh
-代表普通文件
三个为一组 rw- 代表拥有者的权限 r–代表所属用户组的权限 r–代表其他用用户的权限
chmod u+x,g+w,o=rwx tesh02.sh
修改tesh02.sh 拥有者权限加x,用户组权限+w 其他用户加权限rwx
chmod : chmod u+x 文件名
用户类型:u代表文件所属用户,g代表文件所属用户组,o代表其他用户,a表示所有用户。
权限说明: +增加权限 - 撤销权限 =设定权限
chmod a=- tesh02.sh 将tesh02.sh所有用户权限撤销
chmod 777 tesh02.sh 将所有权限赋予给用户 777拥有者的权限,所属用户组的权限,其他用用户的权限都为最高 7=4+2+1 读+写+执行
增加用户
useradd -g qq admin 创建用户admin,所属组为qq
删除用户
userdel -r tom 删除用户和目录 -r删除目录
修改密码
sudo passwd admin 修改用户的密码admin
查看所属用户
whoami
查找文件
find . -name test.sh 在当前目录查找test.sh文件
find / -name "*.sh"
.当前目录 test.sh文件名
软链接:ln -s 源文件(必须为绝对路径) 链接文件名 (删除源文件,链接不存在)
ls -s /home/lisi lisi_link
不加参数 -s 为硬链接 (删除源文件 链接还在)
解压和打包文件
打包:tar -zcvf 打包的文件名 文件或者目录
解包:tar -zxvf 解包的文件名 没有参数默认本文件夹
-c创建打包文件, -v显示出打包或者解包的进度, 用于指定打包文件名, 表示解包对应的文件。 -z文件类型为gzip -j 文件类型为bz2 -J .xz格式的文件
tar -xvf 2.zip -C /lisi/abc 将解压放到后的文件放到lisi/abc的文件中
zip压缩归档工具
zip -r 压缩文件名 文件或者目录
unzip -d 解压目录 压缩文件名
硬链接 (删除源文件 链接还在)
解压和打包文件
打包:tar -zcvf 打包的文件名 文件或者目录
解包:tar -zxvf 解包的文件名 没有参数默认本文件夹
-c创建打包文件, -v显示出打包或者解包的进度, 用于指定打包文件名, 表示解包对应的文件。 -z文件类型为gzip -j 文件类型为bz2 -J .xz格式的文件
tar -xvf 2.zip -C /lisi/abc 将解压放到后的文件放到lisi/abc的文件中
zip压缩归档工具
zip -r 压缩文件名 文件或者目录
unzip -d 解压目录 压缩文件名