Linux基础命令-学习笔记02

Linux:

关机命令:halt init0

重启:reboot init6

linux目录结构:

bin 存放系统可执行的命令文件

boot 存放系统文件【相当于windows下的c盘】

dev 存放媒体设备

etc 系统配置文件

home 普通用户家目录

lib 基础软件编译库

opt 用户安装软件目录

proc 设备信息

run 进程任务pid

root 管理员家目录

tmp 临时存放文件目录【php的session文件】

usr 存放自己安装的文件目录【php环境】

var 各种服务的日志,定时任务


linux常用命令:

cd 路径 #切换目录XXXX

sl 展示文件目录【不填路径默认展示当前路径下的目录】

ll 展示文件目录下文件的详细信息

cal【年分-时间可选】 查看日历【添加时间查看指定时间日历】

date 查看时间

yum install xxxx 安装系统软件包

man 命令 查看命令使用说明

rm -rf /* 删除所有文件

fdisk -l 列出文件所属磁盘

cat 不进入文件,列出文件内容

netstat -nltp 查看运行的所有进程

ip addr 查看ip

mkdir 创建文件夹

rm -rf(*) 强制删除文件夹

touch 创建文件

rm -f 删除文件

mv dir1 dir2 dir2不存在 dir1目录名改成dir2

cp -r dir1 dir2 将dir1 的所有内容拷贝到dir2

pwd 查看当前位置

uname [-a] 查看系统版本

top 查看服务器(cpu 内存)运行状态

exit 退出

tree -L n [文件名] 列出文件下的树形图

more 将文件内容分屏查看(空格键下一页,b上一页)

less 将文件内容分屏查看(可以回头看,必须按Q退出)

head 显示文件前几行内容(默认10行)

head -n num 显示文件前num行内容

tail -f 查看文件最后几行内容,并且实时更新(一般用于log日志实时查询)
tailf

wc 查看文件字符数,行数

> 输出重定向 例:echo nihao > test01.txt(将 nihao写进test01.txt里面)

>> 输出重定向 例:echo nihao > test01.txt(将 nihao 覆盖写进test01.txt里面)

< 输入重定向

<< 输入重定向

find /文件名 -name 文件 查找文件

which 命令 查询命令可执行文件

tar:
*.tar 用tar-xvf 解压

*.tar.gz 压缩文件

tar czf 压缩后的名 要压缩的文件名 压缩文件

tar xf 压缩包名称 解压文件

rz 本地上传文件到服务器

unzip 压缩包名称 解压文件【只能解压 .zip格式】

sz 文件名 下载文件到本地

wget 链接地址 下载到服务器

curl

ps -ef 列出所有的进程

kill -9 PID 关闭进程

killall 进程名【MySQL php】 关闭某任务的所有进程


---------------------------------------------------------------

linux编辑器vim命令:

编辑模式: i/a/o

编辑模式切换到命令模式 按ECS

:set num 显示行号
:set nu

:set nu! 不显示行号

:n(行数) 跳转到第n行

:wq 保存退出
:wq! 不保存退出

:q 强制退出
:q! 强制不保存退出

:u 撤销

:s/xx/yy 将光标行查找到xx的第一个替换成yy

:%s/xx/yy 将查找到xx全部替换成yy
:dd 删除光标当前行

:n(行数)dd 删除光标当前行到下n行

yy 复制当前行

nyy 复制光标当前行到下n行

p 粘贴

. 重复一次执行上一个命令

0 到行首

$ 到行尾

G 移动到文件尾

gg 移动到文件首 行号 gg 跳到改行


Ctrl +v 批量操作

:%s# 待替换#要替换#g

/字符串 向下搜索 字符 n 选择下一个 N 选择上一个

?字符串 向上搜索

awk -F '分隔符' ‘{print $1[数值-第多少列]}’文件名 //获取文件第i列的内容

grep '获取值' 文件名 //获取行

grep -V '^查询值' 文件名 //取反

| 管道符 实现多个命令同步操作 例:cat index.php| awk '{print $1}'

wc -l //统计行数


sed -i 's###g' 不进入文件批量替换内容【功能同 %s###g相同】

sort 排序

linux 用户/管理员:

useradd 用户名 添加用户

useradd -g (用户组)用户名 -M (去掉)-s

usermod -g (组id) -d 用户主目录 -u 用户id -l 修改用户名

userdel 用户名 删除用户
userdel -r 删除用户并删除用户对应的主目录

groupadd 创建用户组
groupadd -g 用户组 id 添加用户组的同时指定用户组id

groupmod 修改用户组
groupmod -n 新租名称 旧组名称
groupmod -g 组 id 组名 修改用户组id

groupdel 组名 删除用户组(组里面还有用户,则删除失败)

passwd 修改用户密码

passwd 用户名 修改指定用户的用户名(只有root用户能操作)

---------------------------
查询所有用户:tail -n 5 etc/passwd

查询所有用户组 :tail -n 5 /etc/group

查询当前用户所在用户组:groups id

------------------------
linux用户权限设置命令:

chmod 权限值 文件名 设置用户权限

chnod R 文件名 递归设置用户权限

chown 用户名 文件名 修改文件的所属用户

chown R 用户名 文件名 递归修改文件的所属用户

chgrp 更改文件所属组

--------------------------------------------------------------------------


linux 中级知识

2.1 Shell 脚本编程

文件创建: vim *.sh

脚本格式: #!/bin/bash

脚本执行命令:bin/bash 文件名|修改文件执行权限 ./文件名


2.2变量赋值: name='haha' age=23

变量拼接:echo $name$age

字符串截取: echo ${name:2:4}

数组赋值:username=('haha' 'hehe')

数组输出 echo ${username[0]}

打印数组所有值 echo ${username[*]} | echo ${username[@]}


2.3传值

执行脚本 值1 值2

获取传值个数:$#

获取传入值:$1 $2 .....

获取当前进程PID:$$

查询脚本有无报错:$?[0 没有错误 127有错误]

2.4 流程控制 if

!//非 -o//或者 -a//并且

if [ 条件 ] //条件必须和中括号隔开
then
elif
else
fi

-d//判断目录是否存在 -f//判断文件是否存在 -e //判断目录或者文件是否存在
---------------------------------------------------------------------------------------------------

apache nginx 区别

apache: 1.稳定 2.在处理动态请求有优势 3.功能丰富,但是占用资源多 4.select 模型 阻塞

nginx:轻量级,占用资源小 2.抗并发 3.配置方便

总结:两者最核心区别:apache 是同步多线程模型 nignx 是异步

猜你喜欢

转载自www.cnblogs.com/grhbaby/p/11737926.html