LINUX-基础1
- :linux的各类主流版本以及区别
- Debian:
Ubuntu:server和desktop 版本。与centos更新快,内核也新,每两年发布LTS(长期支持),基于debian和gnome桌面环境。每个版本都以动物名称命名。ubuntu 16.04 ubuntu 18.04 ubuntu 20.04
Deepin
mint- RHEL:rehat enterprise linux,每18月发布一次版本
centos:社区企业os。与红帽的源代码一样 6,7,8三个版本,centos7.7 centos6.10 centos 8.1 (后续要收费)
中标麒麟:中标软件
Fedora:每6个月发行新版本- Alpine:轻型linux版本,只有5M左右
- ArchLinux:轻量简简洁,遵循K.I.S.S原则-->keep it simple and stupid ,Manjaro
- Gentoo:极致的性能,只能通过源代码编译
- LFS:linux from scratch 自制linux,只是一个说明书
- Android:kernel+busybox(工具集)+java虚拟机
- Slackware:SUSE Linux enterprise Server(SLES),opensuse 桌面
- :哲学思想---unix演化50年--linux
- 一切都是一个文件(包括硬件)简化开发管理CLI:windows是一切都是图形窗口。
- 小型,单一用途的程序。共:需300多的命令
- 连接程序,共同完成复杂的任务----shell编程
- 避免令人困惑的用户界面--省内存--稳定 : 如何查看内存:free free -h, 图形界面有不稳定的情况。
- 配置数据存储在文本中,windows配置文件放在注册表--二进制
- :创建一个Centos7.6的iso,以下是主要的分区,创建account&psw,以及桌面简洁
Swap: 虚拟内存,拿硬盘空间当内存,这里设置了 4G




- :* history命令
当执行命令后,系统默认会在内存记录执行过的命令
当用户正常退出时,会将内存的命令历史存放对应历史文件中,默认是 ~/.bash_history
登录shell时,会读取命令历史文件中记录下的命令加载到内存中
登录进shell后新执行的命令只会记录在内存的缓存区中;这些命令会用户正常退出时“追加”至命令历史
文件中
利用命令历史。可以用它来重复执行命令,提高输入效率
[02:01:06 lime@centos8[ ~]$PATH=$PATH:$HOME/bin
[02:03:43 lime@centos8[ ~]$export PATH
[02:03:50 lime@centos8[ ~]$export HISTCONTROL=ignoreboth
[02:04:06 lime@centos8[ ~]$export HISTTIMEFORMAT="%F %T"
[02:04:06 lime@centos8[ ~]sudo vi .bash_profile
[02:04:29 lime@centos8[ ~]$history
1 2021-02-04 02:00:26hostname -I
2 2021-02-04 02:00:26hostname
3 2021-02-04 02:00:26sudo -i
4 2021-02-04 02:00:26whoami
5 2021-02-04 02:00:26who
6 2021-02-04 02:00:26who am i
7 2021-02-04 02:00:26who am i
8 2021-02-04 02:00:26who
- :基本命令的使用以及注释 :echo,screen,date,ifconfig,export
- echo命令 可以将后面跟的字符进行输出
功能:显示字符,echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加
上换行号。
E (默认)不支持 \ 解释功能
-n 不自动换行
-e 启用 \ 字符的解释功能
启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\e escape,相当于\033
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\ 插入\字符
\0nnn 插入nnn(八进制)所代表的ASCII字符
\xHH插入HH(十六进制)所代表的ASCII数字(man 7 ascii)
$echo
echo [-neE][字符串]
[lime@ubuntu1804 ~]$echo -e '\033[43;31;1;5limeliu\e[0m'
[lime@ubuntu1804 ~]$echo $PATH
*screen 命令:可以实现工作中远程同步看到协作的窗口。
$screen
A同学:[lime@ubuntu1804 ~]$screen -S lime
B同学:SSH lime@10.0.0.203 上去后
[lime@ubuntu1804 ~]$screen -x // 即可实现
- date 显示和设置系统时间
Linux的两种时钟
系统时钟:由Linux内核通过CPU的工作频率进行的
硬件时钟:主板
$date
[lime@ubuntu1804 ~]$date 020401172020.30 //月日小时分年.秒
clock,hwclock: 显示硬件时钟
-s, --hctosys //以硬件时钟为准,校正系统时钟
-w, --systohc //以系统时钟为准,校正硬件时钟
[lime@ubuntu1804 ~]$clock -w
- Ifconfig 可以查看网络地址相关信息,以及网卡对应的名称 如ens33 10.0.0.205
[lime@ubuntu1804 ~]$ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.0.205 netmask 255.255.255.0 broadcast 10.0.0.255
inet6 fe80::8ef:9b4:be4f:f547 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:a8:77:12 txqueuelen 1000 (Ethernet)
RX packets 941 bytes 1261695 (1.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 344 bytes 26314 (25.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:6e:c8:f5 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
- export 命令
给history添加变量的时候:以 export 变量名="值" 形式存放在 /etc/profile 或 ~/.bash_profile
[lime@centos8[ ~]$export
[02:01:06 lime@centos8[ ~]$PATH=$PATH:$HOME/bin
[02:03:43 lime@centos8[ ~]$export PATH
[02:03:50 lime@centos8[ ~]$export HISTCONTROL=ignoreboth
[02:04:06 lime@centos8[ ~]$export HISTTIMEFORMAT="%F %T"
Tips:
挂载 mount point , /dev/sda1 mount /XXXX
[lime@ubuntu1804 ~]$ps aux //=任务管理器
[lime@ubuntu1804 ~]$ cat /etc/shells //查看目前支持的shell
[lime@ubuntu1804 ~]$echo $SHELL //目前所使用的shell是什么版本
[lime@ubuntu1804 ~]$hostnamectl set-hostname *** //直接修改到硬盘的hostname(只支持centos7以上和ubuntu‘’
[lime@ubuntu1804 ~]$echo $PS1 //查看目前的名[lime@centos8 ~]$
[lime@ubuntu1804 ~]$PS1="\[\e[1;36m\][\u@\h \W]\\$\[\e[0m\]" //修改[lime@centos8 ~]$修改测试环境、生产环境的颜色
[lime@ubuntu1804 ~]$HASH //缓存外部命令
[lime@ubuntu1804 ~]$alias **="例子:cd /etc/reso.v.conf " //给命令取别名 nano .bashrc,**别名优先级别>内部命令>外部命令
[lime@ubuntu1804 ~]$unalias ** //取消别名,ubalias -a 取消所有别名
\别名 //可以取消别名使用,用原本的替代
[lime@ubuntu1804 ~]$type echo //type 查看是否是内部命令--路径
[lime@ubuntu1804 ~]$enable //查看内部命令
[lime@ubuntu1804 ~]$. =source //执行文件命令,修改文件后想要生效
[lime@ubuntu1804 ~]$lsblk //查看目前划盘情况
[lime@ubuntu1804 ~]$uptime //查看目前开机时间
[lime@ubuntu1804 ~]$id -u lime //查看用户的id
[lime@ubuntu1804 ~]$bc //计算机 obase=2 120 ->二进制

浙公网安备 33010602011771号