1、Shell是什么
- 对外接受用户输入的命令
- 对内通过系统调用传递给内核运行
- 呈现内核运行结果
2、Shell与图形化界面
图形化界面鼠标操作为主,简单易学。
Shell:键盘操作为主,需要记忆各种控制命令
3、常用命令
注意:mv 命令用来重命名文件和目录/移动文件和目录、rmdir命令只能用来删除空目录
注意:
touch命令用于创建文件
cat命令用户展示文件内容
echo命令用于往控制台终端输出字符串和对字符串进行重定位
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# echo 123 >> 123.txt //往文件末尾处追加字符串
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ls
123.txt learn serverProject softWare tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat 123.txt
123
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# echo hhh >> 123.txt
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat 123.txt
123
hhh
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# echo siglg > 123.txt //将文件中的内容清空然后填写内容
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat 123.txt
siglg
wc命令用于统计某个文件中的行数(-l) 单词数 (-w)字符数(-c)
rm命令既可以删除目录 rm -r 也可以删除文件
ln命令是用来为文件创建链接文件的,链接文件又可以分为硬链接文件和软链接文件
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ln 123.txt 456 //用于为文件创建硬链接,所谓硬链接,就是源文件123.txt删除之后,456副本还能正常输出
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ls
123.txt 456 learn serverProject softWare tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 24
-rw-r--r-- 2 root root 6 Nov 29 21:57 123.txt
-rw-r--r-- 2 root root 6 Nov 29 21:57 456
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]#
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ln -s 456 789 //建立软连接,所谓软连接,就是当源文件456删除之后,789软连接无效了
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]#
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rw-r--r-- 1 root root 6 Nov 29 21:57 456
lrwxrwxrwx 1 root root 3 Dec 1 11:37 789 -> 456
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# rm -f 456
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 16
lrwxrwxrwx 1 root root 3 Dec 1 11:37 789 -> 456
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat 789
cat: 789: No such file or directory
cp命令用来拷贝文件 cp -r 可以拷贝文件夹
tar命令是用来打包和解包的,并不负责压缩
tar -cvf 文件名 => 打包文件
tar -xvf 文件名 => 解压文件
tar -tvf 文件名 => 详细列举归档文件
find命令能够很快的找到我们所需要的文件的文件路径
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# find / -name learn
/root/learn
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ls
learn serverProject softWare tools
grep命令能够帮助我们从文本里面找到我们需要的字符串
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# grep "Linux" 123.txt
I love Linux
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# grep "Linux" 123.txt -n // -n 代表定位行号
1:I love Linux
sudo命令帮助普通用户短暂的获取root权限
su命令可以实现用户切换
useradd命令只是创建一个最简单最基础的用户,和用户相关的一些配置信息都没有初始化好(密码、主目录都没有设置)。
adduser命令在创建的过程中会引导你完成用户配置。经过测试发现有的 Linux 系统这两个创建用户命令是一样的。
usermod命令修改GID
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat /etc/passwd
xiaoming:x:1004:1004::/home/xiaoming:/bin/bash
xiaowu:x:1005:1005::/home/xiaowu:/bin/bash
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# usermod -g 1004 xiaowu
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat /etc/passwd
xiaoming:x:1004:1004::/home/xiaoming:/bin/bash
xiaowu:x:1005:1004::/home/xiaowu:/bin/bash
deluser命令用于删除用户
passwd命令用于修改用户密码
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# passwd xiaoming
Changing password for user xiaoming.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
groupadd命令用于添加用户组,添加的用户组在 /etc/group 里可以查看
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# groupadd test
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat /etc/group
test:x:1006:
groupdel命令用于删除用户组
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# cat /etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:
cdrom:x:11:
mail:x:12:postfix
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
tape:x:33:
video:x:39:
ftp:x:50:
lock:x:54:
audio:x:63:
nobody:x:99:
users:x:100:
utmp:x:22:
utempter:x:35:
input:x:999:
systemd-journal:x:190:
systemd-network:x:192:
dbus:x:81:
polkitd:x:998:
ssh_keys:x:997:
sshd:x:74:
postdrop:x:90:
postfix:x:89:
chrony:x:996:
ntp:x:38:
tcpdump:x:72:
nscd:x:28:
yiwen:x:1000:
yiwen3:x:1002:
yiqi:x:1003:
xiaoming:x:1004:
xiaowu:x:1005:
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rw-r--r-- 1 root root 13 Dec 1 11:54 123.txt
-: 普通文件
rw-: 表示个人用户权限 可读 可写 二进制对应110 => 十进制对应6
r--: 表示用户组权限
r--: 表示其他用户权限
chmod修改文件权限
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rw-r--r-- 1 root root 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# chmod 777 123.txt
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rwxrwxrwx 1 root root 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]#
chown命令修改文件所有者
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rwxrwxrwx 1 root root 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# chown yiqi 123.txt
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rwxrwxrwx 1 yiqi root 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
chgrp命令用于修改文件所属用户组
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rwxrwxrwx 1 yiqi root 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# chgrp yiqi 123.txt
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# ll
total 20
-rwxrwxrwx 1 yiqi yiqi 13 Dec 1 11:54 123.txt
drwxr-xr-x 4 root root 4096 Dec 1 09:52 learn
drwxr-xr-x 6 root root 4096 Jul 26 19:38 serverProject
drwxr-xr-x 2 root root 4096 Nov 8 11:54 softWare
drwxr-xr-x 4 root root 4096 Mar 7 2021 tools
df命令用来展示文件系统的信息
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 41147472 4998956 34245024 13% /
devtmpfs 877748 0 877748 0% /dev
tmpfs 888200 0 888200 0% /dev/shm
tmpfs 888200 476 887724 1% /run
tmpfs 888200 0 888200 0% /sys/fs/cgroup
tmpfs 177644 0 177644 0% /run/user/0
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 4.8G 33G 13% /
devtmpfs 858M 0 858M 0% /dev
tmpfs 868M 0 868M 0% /dev/shm
tmpfs 868M 476K 867M 1% /run
tmpfs 868M 0 868M 0% /sys/fs/cgroup
tmpfs 174M 0 174M 0% /run/user/0
du命令汇总磁盘信息
[root@iZuf6a7sd2zy3fpen7rmbhZ ~]# du -sh // -s 表示只显示当前文件夹,不显示到文件 -h 表示大小以人类习惯的方式显示
1.7G .
mount命令主要是把一些硬件设备/网网络设备挂载到系统指定目录下面,挂载完成之后就可以通过指定目录访问硬件设备或网络设备
Usage:
mount [-lhV]
mount -a [options]
mount [options] [--source] <source> | [--target] <directory>
mount [options] <source> <directory>
mount <operation> <mountpoint> [<target>]
umount命令用于取消挂载
Usage:
umount [-hV]
umount -a [options]
umount [options] <source> | <directory>
ifconfig //查看设备网络信息
ifconfig 网卡名称 IP地址 //更换网卡IP地址
ifconfig 网卡名称 down //停止网卡
ifconfig 网卡名称 up //启动网卡