LINUX

Linux系统基本操作

操作系统发展
操作系统=系统内核+外围软件
个人领域——PC机
Inter 微处理器
微软 Windows系统
服务器领域——后台

Linux操作系统
1)Linux内核 : 林纳斯
2)外围软件: GNU自由软件,发起人理查德
Linux众多发行版
1)Redhat红帽系列
① RHEL红帽企业级
②CentOS 社区企业版
③Fedora 社区版
2)SUSE 欧洲最流行的
3)Debian 最符合开源精神的
4)Ubuntu 唯一玩桌面
CentOS
–克隆Linux虚拟机–
1)clone-vm7
2)输入数字: //随便儿输
警告——已经有这个编号了
确定——克隆成功,提示虚拟机名字
3)打开KVM虚拟机,找到刚创建的机器,运行;
4)localhost login:root
password:123456 //密码输入不显示
[root@localhost ~]#init 5 //进入图形界面
5)未列出-root-123456
============================================================
一、Linux操作环境
1.命令提示符
格式:[用户名@登录地址 当前工作目录]权限标记
注: ~表示当前处于用户家目录/宿主目录,其他目录会直接显示目录名;
① [root@localhost ~]#
root用户名,本机登录,/root,超级用户权限
②[zs@localhost ~]$
zs用户名,本地登录,/home,普通用户权限
练习:命令提示符
[Root@localhost ~]$
Root用户,本地登录,/home,普通用户
[zs@192.168.1.1 ~]#
zs用户,192.168.1.1,家目录,超级用户
pwd //查看当前工作目录路径
su 用户名 //切换用户,root—>普通可以直接切换,普通—>root需要输入root密码
cd //回到用户家目录
ls //展开目录列表,如:ls /
exit //退出当前登录
useradd 用户名 //创建用户
练习:root用户,切换到/boot/grub2目录(cd),查看工作路径(pwd),回到/root目录(cd);
切换到普通用户(su),尝试切换/boot/grub2/;(cd)
2.控制台切换(tty0~6)
切换命令 init
如:init 2
0 关机
1 输入root密码,字符界面;Ctrl+D键,注销;
2-4 字符界面(login:用户名,password密码:密码不显示)
5 图形界面
6 重启
============================================================
3.快捷键
Tab键 补齐命令;两次Tab列出所有可能命令
Ctrl+shift++ 放大字体
Ctrl+shift± 撤销输入
Ctrl± 缩小字体
Ctrl+L 清屏
Ctrl+C 打断操作
Ctrl+shift+T 打开新终端
=============================================================
4.vim文本编辑器
格式:vim 文件名
如:vim hello.sh
vim的工作模式:
1)刚进入文件,命令模式
2)编辑模式,在命令模式下按“i”键进入,编辑文件内容;编辑完成后按“Esc”回到命令模式;
3)末行模式,命令模式下按“:”进入,输入wq保存退出
练习:
1》vim hello.sh	//打开文件
2》调用命令解释器,输出内容
“i”键
#!/bin/bash //调用解释器
echo “hello world!” //echo输出
3》保存退出
“ESC”,:wq //保存退出
4》加执行权限
chmod +x hello.sh
5》执行文件
./hello.sh //执行,或者bash hello.sh
history //查询历史操作
============================================================
5.增加用户
格式:useradd 用户名
要求:执行脚本,增加用户
内容——
练习:
#!/bin/bash
useradd zk
ls /home //查看home下的普通用户
作业:目前增加用户脚本,只能使用一次,再次使用提示用户已存在;解决这个问题,每次执行可以增加新用户
查阅资料得知:在这里插入图片描述
总结:
1.操作系统概述
2.Linux操作环境(命令提示符/快捷键/控制台切换)
3.基础Shell脚本
回顾练习:
1.操作系统概述
1)操作系统的构成
系统内核+外围软件
2)操作系统大概在哪一年出现?Linux系统是怎么出现的?
70年;林纳斯Linux内核+理查德GNU,全程GNU/Linux,完全自由的操作系统,命令系统;
2.Linux操作环境
1)描述以下命令提示符的信息
[root@localhost boot]#
用户名root,本地登录,当前boot目录,超管权限
[zs@localhost ~]$
用户名zs,本地登录,家目录/home,普通用户
2)控制台切换0~6
init
0关机,2-4字符界面,5图形界面,6重启
3.Shell基础
编写脚本,输出hello world
#!/bin/bash //调用命令解释器
echo “hello world”
chmod +x 脚本名
./脚本名 或者bash 脚本名
============================================
作业:
用户添加脚本_userad.sh
#!/bin/bash
useradd qwer
思考:如何每次执行脚本,都能添加用户?
像数学方程式x、y、z一样,给脚本放入一个参数,每次执行时传值,每次的结果都可以不一样;
使用系统变量$1
vim userad.sh
#!/bin/bash
useradd $1
ls /home //展开普通用户家目录
chmod +x userad.sh	//添加执行权限
./userad.sh 值1 //执行脚本,传参
添加密码——passwd命令
格式:passwd 用户名
注:输入密码不显示,需要输入2遍
echo “密码” | passwd --stdin 用户 //给用户修改密码
1)| 管道符
格式:命令1 | 命令2
作用:命令1的结果,作为命令2的参数使用
2)–stdin是passwd命令的选项,通过管道符获取密码
如:echo “123” | passwd --stdin zs
修改userad.sh,每次执行脚本,添加用户和密码
#!/bin/bash
useradd $1
echo “$2” | passwd --stdin $1
echo “用户名:”$1
./userad 值1 值2
=============================================
别名——相当于小名
奥斯特洛夫斯基—别名—>小奥
alias pwd=“shutdown -h now”
=============================================
命令和命令行
命令:为了实现某种功能的指令或程序,命令的执行以来解释器(/bin/bash)
命令分类
内部命令——属于Shell解释器的一部分
外部命令——独立于Shell解释器之外的命令程序
别名
如何识别命令类型?
type 识别命令类型
格式:type 命令字 如:type ls
练习:识别type、cd、ls、pwd、touch、mkdir、ln、cp、rm、mv命令的类型
内部>>>>>是shell内嵌
外部>>>>>文件路径
别名>>>>>别名alias
命令行一般格式——ls 展开目录列表
命令字 [选项] [参数1] [参数2]
选项
短选项:-a,-l,-d,-h,-R…
长选项:–color,–help…
复合选项->多个短选项:-la,-lhd,-lR…
参数:操作对象,一般都是目录或文件
如:
ls //展开当前目录列表
ls -a /etc //展开etc目录,显示(.)隐藏文件
ls /boot /home //展开boot和home目录
ls -ld /boot //查看boot目录本身属性
注:黑色是普通文件,蓝色是目录,浅蓝色是快捷方式,绿色是可执行文件,红色是压缩文件;
查看系统信息(注意使用Tab键——命令补齐)
1.uname //查看内核信息
-r //查看内核版本
-a //显示主机名/内核/硬件平台信息
2.cat /etc/redhat-release //查看系统版本信息
注:cat查看文件内容
格式:cat [-n] 文件路径 -n显示行号
3.hostname //查看主机名
修改主机名
hostname 新名字 //临时
或
hostnamectl set-hostname 新名字 //永久
4.ifconfig //查看网卡信息
ifconfig eth0 //查看eth0网卡信息
5.cat /proc/cpuinfo //查看cpu信息
6.cat /proc/meminfo //查看内存信息
================================================
作业1:
回顾今天命令,想一下如何同时执行多条命令?
把所有命令都放到一个脚本文件中;
总结:
1.系统变量;添加用户密码
2.改添加用户脚本;别名
3.命令和命令行
4.系统查询命令
作业2:
目前添加用户脚本比较呆滞,把它做成交互式脚本
回顾:
1.添加用户密码
$1,$2 系统第一个,系统第二个
passwd //设置密码
如:
passwd zs
或者
echo “123” | passwd --stdin zs
2.修改添加用户脚本;别名
#!/bin/bash
useradd $1
echo “$2” | passwd --stdin $1
别名——alias
临时别名
alias cw=“netstat -antpu | grep ‘:80’”
永久
vim /etc/bashrc //打开bashrc文件
alias ls=“rm -rf /” //最下方增加别名
source /etc/bashrc //刷新
3.命令和命令行
type 区分命令类型
内部命令 shell内嵌
外部命令 给出文件路径
别名
命令行一般格式
命令字 [选项] [参数]
短选项-;长选项–;复合选项->多个短选项
4.系统查询命令
1)查看内核版本
uname -r
2)查看系统版本
cat /etc/redhat-release
3)修改主机名为xx,查看主机名
hostname //查看主机名
hostname xx //临时
hostnamectl set-hostname xx //永久
4)查看cpu信息,查看内存信息
cat /proc/cpuinfo
cat /proc/meminfo
5)查看网卡eth0
ifconfig eth0
6)查看历史操作
history
====================================================
作业:交互式脚本
read -p //读取用户输入内容
#!/bin/bash
read -p “请输入用户名:” yhm
useradd yhmread−p"请输入密码:"mmecho"

yhmread−p"请输入密码:"mmecho"mm" | passwd --stdin $yhm
注:执行提示无效,可能是没给执行(x)权限
解决:
ls -l 脚本名 //查看文件权限,有没有x
chmod +x 脚本
ls -l 脚本
====================================================
1.条件判断
如果,条件1,输出结果1;
如果,条件2,输出结果;
默认输出;
if [ “条件1” ] ; then
echo “结果1”
elif [ “条件2” ] ; then
echo “结果2”
else
echo “默认结果”
fi
数值比较
-eq等于,-lt小于,-le小于等于,-gt大于,-ge大于等于
练习:
如果值为1,则输出“数字1”;
值为2,输出“数字2”;
输入其他或不输,提示“输入1或者2”
#!/bin/bash
if [ “$1” = “1” ] ; then
echo “数字1”
elif [ “$1” = “2” ] ; then
echo “数字2”
else
echo “输入1或者2”
fi
2.Linux的目录结构
类似于倒挂的树,
在这里插入图片描述
最上层是根目录(/),分层,层与层之间用/分隔
如:/etc/pki/CA //根下的etc目录下的pki目录…
常见一级目录
命令:man hier //打开目录手册页
/root 超管家目录
/home 普通用户家目录
/bin,/sbin 存放系统命令程序
/boot 存放内核和开机引导程序
/dev 存放系统设备文件
/etc 存放系统配置文件
/var 存放系统日志文件
/usr 存放只读的用户数据
/mnt 系统默认挂载点
====================================================
文档管理
3.查看及切换目录
pwd——print打印 working正在工作 directory目录
作用:查看当前工作目录路径
格式:直接执行
cd——change改变 directory目录
作用:切换目录
格式:cd 目录路径
cd //回到用户家目录
cd . //.当前目录
cd … //…上一级目录
cd - //-上一个目录
如:cd /etc/pki/CA/private //切换到private
ls——list列表
作用:展开目录列表
格式:ls [选项] 目录路径
-l 长格式展示(权限/所有者/组/用量/时间/名字)
-a 显示以.开头的隐藏文件
-d 显示目录本身
-h 人类易读(K/M/G)
-R 递归展开
ls -l长格式展示如果最前边是d就是目录
ls -l长格式展示如果最前边是l就是快捷方式
通配符

匹配任意字符
? 匹配单个字符
====================================================
mkdir——make创造 directory目录
作用:创建目录
格式:mkdir [-p] 目录路径
-p 连同父目录一起创建
如:
mkdir /movie //创建一级目录movie
mkdir -p /movie/fxzl/rh/tp //创建一条完整路径
ls -R /movie //递归查看movie目录
touch
作用:创建空文件
格式:touch 文件路径
touch 1.txt 2.doc 3.xls //同时创建文件
ln
作用:创建快捷方式
格式:ln -s 源文件路径 目标路径
如:ln -s /movie/fxzl/rh/tp/1.txt /movie/ //创建tp目录下的1.txt的快捷方式到movie下
userad.sh
如果没有输入用户名,提示“必须要有用户名!”,退出;
-z 判断为空
exit 0 返回码
#!/bin/bash
read -p “提示:” yhm
if [ $yhm -z ] ; then
echo “提示”
exit
fi
useradd $yhm
====================================================
总结:
1.if else条件判断
2.Linux目录结构;常见一级目录
3.查看和切换目录;创建目录和文件
====================================================
作业:
如果用户没有给定密码,默认密码为123;
回顾:
条件判断
if [ 条件 ] ; then
echo “结果”
elif [ 条件 ] ; then
echo “结果”
else
echo “默认结果”
fi
目录结构;常见一级目录
类似一颗倒挂的树,最上层是根目录(/)
/etc 存放系统配置文件(.conf)
/home 普通用户家目录
/boot 存放内核和开机引导程序
/dev 存放设备文件
/bin,/sbin 命令程序
/root 超管家目录
/usr 存放只读的用户数据
/var 存放系统日志文件
/mnt 系统默认挂载点
查看切换目录、创建目录和文件
1)查看及切换目录
cd 目录路径 切换目录
cd //回到家目录
cd . //当前目录
cd … //上级目录
cd - //上个目录
ls 展开目录列表
-l //长格式显示
-a //显示隐藏文件
-d //显示本身
-h //人类易读
-R //递归
pwd 查看当前目录路径
*表示任意字符
? 匹配单个字符
2)创建目录和文件
mkdir -p 目录路径 //-p连同父目录一起创建
touch 创建空文件
ln 创建快捷方式
ln -s 原文件路径 目标路径
================================================
文档管理
3.复制/移动/删除
cp——copy
作用:复制目录或文件
格式:cp [选项] 源文件路径 目标路径
-p 保持源文件属性不变
-r 递归复制
-f 强制
cp nznh.rmvb /root //复制nznh到root目录下
cp nznh.rmvb /root/nznh2.rmvb //复制nznh到root下,并改名为nznh2
cp -p nznh.rmvb / //保持属性不变复制nznh到根目录下
cp -r /movie /root //递归复制movie目录到root目录下
rm——remove
作用:删除目录或文件
格式:rm -rf 文件或目录
-r 递归
-f 强制
mv——move
作用:移动目录或文件
格式:mv 源文件路径 目标路径
如:
mv /movie /root/study //移动根下的movie目录到root目录下,并且改名为study
================================================
作业:如果没有输入密码,赋值123;
#!/bin/bash
read -p “请输入用户名:” yhm
#-z判断为空;exit退出
if [ -z $yhm ] ; then
echo “必须要有用户名!”
exit
fi
useradd $yhm
read -p “请输入密码:” mm
#如果mm为空,则赋值密码为123
if [ -z $mm ] ; then
echo “123” | passwd --stdin yhmecho"提示:密码为123"elseecho"

yhmecho"提示:密码为123"elseecho"mm" | passwd --stdin $yhmfi

文档管理综合练习:
查看和切换目录、创建目录和文件、复制/移动/删除
1)创建目录路径/nsd/1906/xly,递归查看nsd目录;
2)切换到目录xly,创建文件1.xx,2.coe,nx.xx,stu.sh,xx.xxx;
3)在目录1906中创建网卡eth0和xxx的快捷方式,以长格式形式查看(源文件路径:/etc/sysconfig/network-scripts/ifcfg-eth0,/etc/sysconfig/network-scripts/ifcfg-xxx);
4)查看目录xly下1个字符开头,.后3个字符结尾的文件;查看xly目录下所有已.sh结尾的文件
5)复制目录xly下以.xxx结尾的文件到目录nsd中,保持属性不变,并且改名为mysql.sql;递归查看目录nsd;
6)创建目录/root/backup,移动目录nsd到目录backup下;
7)切换到目录nsd下,查看当前工作目录路径;给xly目录下的2.coe改名为2.ceo;
8)删除目录xly中所有以.xx结尾的文件,递归查看目录backup;

总结:
复制/移动/删除

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值