社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
Linux中一切皆文件
内核 + 文件系统 + shell = Linux
bin:放Linux上常用的命令
dev:放设备的目录
etc:Linux配置文件目录
home:普通用户会在该目录下创建属于自己的目录
root:管理员用户家目录
media:即插即用型的设备的挂载目录
光盘自动挂载到media目录下
mnt:挂载目录
将硬盘中的分区(C/D/E)与目录进行关联
/datas/cpan 《- C分区
/datas/Dpan 《- D分区
/datas/Epan 《- E分区
opt:可选目录
usr:放安装的应用程序
sbin:只有管理员才能执行的命令
var:Linux日志默认存储目录
ls : list,用于列举一个目录或者文件
ls [-ald] file_path
a:所有的:列举包含隐藏文件
.开头的为隐藏文件
l:长格式查看详细信息
ls -l = ll
d:列举本身
.为本身
cd:change directory 改变目录
用于切换工作目录
cd target_path
./为本身或当期目录,…/文上一级目录
相对路径:相对当前路径,依次进行访问
more target_file:分页查看文件内容
more /shell/startserver.sh
绝对路径:当访问文件或者目录时,从/目录开始访问
cd /shell/
more startserver.sh
pwd:print work directory 打印当前工作目录
clear:用于清屏
快捷键:Ctrl+l
whereis:用于查看某个命令的位置
whereis more
回到顶部history:用于查看自己运行过的命令
创建文件夹
mkdir [-p] dir_path
mkdir /root/test01
mkdir -p /root/test02/test
p:表示递归创建
创建文件
touch file_path
touch test01/file1
rm−rffile/dir
r:递归,用于删除目录
f:确认文件
vi/vim:Linux中的文本编辑工具
i:进入插入模式
yy:复制当前行
10yy:复制从当前开始的十行
p:粘贴
dd:剪切当前行
10dd:剪切从当前行开始的十行
G:跳到最后一行
gg:跳到第一行
10gg:跳到第10行
o:在下一行进行插入
O:在上一行进行插入
u:撤销上一步
退出插入模式进入命令模式:esc
进入命令模式:按esc
q:退出
wq:保存退出
!:强制的
x:保存退出
X:加密
set nu:显示行号
1,$s/nologin/1234/g
1:从第一行开始
$:最后一行
s:替换
g:如果一行出现多个,全部替换
cat:一次性读取所有文件内容
cat /etc/passwd
cat -n /etc/passwd
显示行号
more:分页查看,一页一页的显示
只能向下翻页,最后自动退出
less:分页查看
按q退出,可以上下翻页
head:查看文件的前多少行
head [-n] file_path
head -10 /etc/passwd
tail:查看文件的后多少行
tail[−n]file_path
tail−10/etc/passwd
−F:动态查看该文件的末尾
$光标闪烁,等待更新 $
Ctrl+c退出
cp [-r] source_path target_path
cp /etc/passwd /root/
cp /etc/passwd /root/passwd2
$ -r表示递归,可以复制文件夹下的所有目录及文件,目标文件夹如果没有则递归创建$
拷贝过程中可以直接重命名
移动剪切:也可以实现重命名mv source_path target_path
No such file or directory
意思:没有对应的文件或者目录
原因:
1-真的没有该文件或者目录,路径写错了
2-没有权限
Permission denied
意思:没有权限
原因:没有权限
解决:修改权限
-bash:cdd : command not found
错误:命令没有找到
原因
1-命令错了
cdd /
2-语法不对
cd/
回到顶部
默认用户:root 管理员用户
默认组:root
Linux默认自带的用户的id都在500以内,用户自己创建的用户id从500开始
用户配置文件:/etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名:密码:用户id:组id:组名称:家目录:使用的shell类型
-o:or 或者条件
useradd fuyun
-r:删除时是否同时删除家目录
passwd fuyun
usermod -l NewUser -d /home/NewUser -m OldUser
-l 修改用户名
-d 修改登录后使用的路径
-m 修改登录名称的同时将目录名称一同修改
su - root
记得退出:exit
groupadd
groupdel
chgrp
groupmod -n newGroup oldGroup
所属用户
|所有者 |同组用户 |其他人 | 所有人 |
|---- |----- |------ |---- |
| u | g | o | a |
权限
|读 |写 |执行 |没有权限 |
|---- |----- |------|---- |
|r |w |x | - |
drwxr-xr-x:表示一个文件的所有权限
|d |rwx |r-x |r-x |
|---- |---- |---- |---- |
|文件类型 |所有者 |同组用户 |其他人 |
回到顶部chmod:用于修改某个文件或者目录权限的
chmod o+w /passwd
chmod a+x /passwd
chmod u+x,g-x /passwd
|r |w |x |
|— |— |---- |
|4 |2 |1 |
rwxrwxrwx:777chmod 755 /passwd
chown:用于修改某个文件或者目录的所有者的chown -R username:groupname file_path
−R:表示递归,用于修改目录时,将目录下所有的文件一起更改
shutdown -h now
halt
init 0
reboot
init 6
visudo:用于配置sudo,只有管理员能通过该命令分配权限给普通用户
root ALL = (ALL) ALL
用户名 从什么地方登陆 以什么身份 执行什么命令
需求:配置rdedu用户拥有启动防火墙的权限
rdedu ALL=(root) /sbin/service iptables start
测试:sudo service iptables start
rdedu ALL=(root) NOPASSWD:ALL
grep 'root' /etc/passwd
.:表示当前目录
…:表示上一级目录
~:代表家目录
|:管道符,用于数据流的转接
stdin
stdoutcat /etc/passwd | grep 'root'
>:输出重定向,覆盖
grep 'root' /etc/passwd > /grep_root.txt
>>:输出重定向,追加
grep 'root' /etc/passwd >> /grep_root.txt
回到顶部<:输入重定向
基本上在shell脚本里使用command1 < infile > outfile
:同时替换输入和输出,执行command1,从文件infile读取内容,然后将输出写入到outfile中
&:表示后台运行command &
:换行符
`:执行符号
用执行符号包裹命令,将命令先执行后返回
man top
man yum
按q退出查看
格式:find 路径 条件
find /etc -name init*
条件:
-name
*:匹配多个字符
?:匹配单个字符
ls /etc/init*
ls /etc/init??
-size:
find /etc -size +50(b,k,M,G)
+:大于
-:小于
并列条件和或者条件
-a:and 并列条件
-o:or 或者条件find /etc -size +500k -a -size -1000k
-atime n:查询文件最后访问时间
n表示n*24小时之前
-ctime n:查询文件状态最后改变时间
-mtime n:查询文件数据最后修改的时间
-type f/d:查询文件或文件夹的类型
-user:查询文件的所有者
-group:查询文件的组
stat:查看文件信息
du [-sh] dir_path
s:表示总的
h: 人性化显示单位
wc [-lwc] file_path
l:行wc -l /grep.txt
w:单词
wc -w /grep.txt
c:字节
wc -c /grep.txt
m:字符
回到顶部可以统计多件文件
wc /grep.txt /root/install.log
查看每个分区的磁盘利用率
挂载信息
插入硬盘
查看硬盘信息fdisk -l
对硬盘进行分区
- 分区:
主分区
扩展分区(建立逻辑分区)
```fdisk /dev/sdb```
回到顶部格式化
mkfs.ext4 /dev/sdb1
挂载
- 临时挂载
mount /dev/sdb1 /primary_part
- 永久挂载
vim /etc/fstab
/dev/sdb1 /primary_part ext4 defaults 0 0
ifconfig:用于查看和配置网络信息
/etc/sysconfig/network-scritps/ifcfg-eth0
route -n
:查看路由
![图片46:
每个应用程序启动以后会开放相应的端口
netstat -atunlp | grep 22
service:用于管理Linux中所有系统安装的服务
service service_name start|stop|status|restart
linux中通过service管理的服务程序地址:/etc/init.d/
常见服务:
iptables:防火墙
network:网络service network restart
NetworkManager:图形化界面的网络管理服务
sshd:安装登录访问服务
chkconfig:设置开机启动chkconfig service_name on|off|--list
chkconfig iptables --list
chkconfig iptables off:关闭防火墙chkconfig service_name on
top:Linux中的任务管理器
free:用于查看内存
free -m
ps:process 用于查看当前所有的进程
ps -ef
kill :用于对服务发送信号的
关闭进程:
kill -9 pidkill -9 1680
jps:java process
专门用于查看java进程的
tcp更安全,发送第一个信息后等待对方确认收到后再发送后面的信息,发送时间缓慢
udp更快速,将所有信息发送给对方,不管对方收到没有,所以会导致信息丢失,不安全
回到顶部
windows:rar/zip
Linux:gzip、bzip2、zip
.tar.gz/tgz/.tar.bz2
压缩类型:snappy、lzo、lz4
gzip:压缩为gzip格式
后缀:.gz
压缩:gzip file_path
gzip passwd
解压:gunzip file.gz
gunzip passwd.gz
特点:
1-压缩完源文件不存在了
2-不支持压缩文件夹
bzip2:压缩格式为bz2
后缀:.bz2
压缩:bzip2 file_path
bzip2 passwd
解压:bunzip2 file.gz
bunzip2 passwd.bz2
特点:
1-压缩完源文件不存在了
2-不支持压缩文件夹
tar -cvf test02.tar test02
tar命令是调用了gunzip命令的,对只有一个压缩内容的文件来解压的时候才用tar, 而如果压缩包里有多个文件被压缩了
tar -xf /root/test02.tar -C /
tar -zcvf /test02.tar.gz test02
tar -tvf /test02.tar.gz
tar -zxvf /test02.tar.gz -C /tmp
将上面的命令中的z改为j,即为bzip2格式的压缩和解压
压缩:tar -zcvf 压缩后的文件的路径 压缩谁
解压:tar -zxvf 解压谁 -C 解压到哪
查看:tar -tvf 压缩文件路径
z:gzip格式
j:bzip2格式
c:打包
x:解包
v:显示过程
f:档名,文件名,f后面必须直接跟文件名
t:text,查看
C:指定解压的路径
c/x/t:一条命令中不能同时存在
回到顶部如果压缩包里有多个文件被压缩了,可以采用unzip命令去解压
解压到当前文件:unzip a.zip
解压到指定文件:unzip a.zip -d a
- window类型
ex
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!