Linux操作基础学习(一 ~ 四)
<前言>、建立终端及虚拟机的控制使用
在Linux操作系统下,建立终端类似与windows操作系统中的运行cmd指令后,将一切可视化操作简化到指令代码当中。
1、如何建立终端:
操作1)、以此点击 Application——>Utilities——>Terminal
操作2)、鼠标右键 Open Terminal
操作3)、gnome-terminal
2、虚拟机的控制及基本操作
1)相关指令
rht-vmctl start server ##开启server
rht-vmctl view server ##显示server
##(开启后只是后台自动运行,必须通过view来显示虚拟机,若虚拟机未开启将无法显示)##
rht-vmctl powroff server ##关闭server
rht-vmctl reset server ##重置server(当虚拟机出现故障时,可通过重置来恢复其最初状态)
当输入重置命令时系统会出现:Are you sure you want to reset desktop? (y/n) ##询问是否重置y表示yes
##上图即为虚拟机成功开启后状态##
##通过reset指令后,虚拟机处于自动开启状态,此时只需要执行view指令后即可使用##
##在之后的学习操作过程中,为了避免误操作出现的系统问题,所以我们可以在虚拟机上进行试验##
##超级用户登陆->not listed username:root passwd:redhat ##
##在超级用户下,我们可以获得最高的权限,更方便于完成很多操作##
一、Linux基本操作指令
1、执行命令
1)命令格式:命令——> 参数——> 目标
2)切换用户: su - student ##切换普通用户
su - root ##切换超级用户
##超级用户切换普通用户不需要输入密码,而普通用户切换向超级用户需要密码##
3)撤销命令:Ctrl + C
4)命令帮助:命令 --help(查看命令帮助) whatis 命令 (查看命令功能)
2、系统的基础使用方法
重启:reboot / init 6 / shutdown -r now
关机:poweroff / init 0 / shutdown -h now
锁屏:ctrl + alt +L(在rhel7.0) / win键 + L(在rhel7.2)
3、简单的系统命令
1)日期:data
watch -n 1 date ##让date命令每秒执行一次,ctrl +c 推出监控模式
##在监控环境下可通过 Ctrl + C 取消监控###
date 11181115 ##把系统时间设定为11月18日11:15 格式:月月天天小时分钟
date 111811152016.55 ##2016表示年(可以不加).55 表示秒(可以不加)
-d +xday -xday ##查看x天前或者后的时间
+%.... ##设定date的输出格式
2)密码服务:passwd
##(watch -n 1 passwd -S student ##监控passwd密码信息)##
-S student ##用户密码信息
-l student ##锁定帐号
-u student ##解锁
-n 1 student ##设定密码最短有效期
-x 30 student ##设定密码最长有效期
-w 3 student ##警告期
-i 2 student ##设定用户非活跃天数
-d student ##清除用户密码监控passwd密码信息
3)文件服务
file 文件名 ##查看文件类型
cat 文件名 ##显示文件全部内容
less 文件名 ##分页浏览,按“q”退出
head 文件名 ##显示一个文件的前几行
head -n x 文件名 ##前x行
tail 文件名 ##显示文件后几行
tail -n x 文件名 #后x行
wc -l ##统计文件行数
wc -w ##统计文件字数
wc -c ##统计文件字节数
wc -m ##统计文件字符数
##在系统中tab键可以自动补齐存在的命令,文件名称和某些命令的参数
##a+TAB x2 显示系统中所有a开头的命令
history ##统计文件字符数
history -c ##清楚当前环境中的历史命令
!数字 ##执行第几行命令
!字母 ##执行最近一条以这个字母开头的命令
4)快捷键服务
左右 ##一个字符一个字符移动
ctrl + 左/右 ##一个字一个字移动
ctrl + a ##光标移动到行首
ctrl + e ##光标移动到行尾
ctrl + u ##光标所在位置删除到行首
ctrl + k ##光标所在位置删除到行尾
ctrl + r + 关键字 ##调出最近一条含有关键字的命令
ctrl + c ##撤销以输入的命令
ctrl + d ##关闭当前环境
ctrl + L ##清空屏幕
ctrl + shift + c ##复制
ctrl + shift + v ##粘贴
ctrl + shift + t ##在现有shell中重新打开一个table
ctrl + shift + n ##在shell中打
ctrl + alt + l ## 锁屏
ctrl + alt +上/下 ##切换工作界面
ctrl + alt + f1/f7 ##进入图形界面
ctrl + alt + f2/f6 ##进入虚拟控制台
4、文件的寻址
绝对路径:文件在系统的真实位置,文件名字以“/”开头
相对路径:文件相对与当前所在位置的一个名字的简写,这个名字不会以/开头,而且名字会自动添加pwd显示的值
5、文件管理
1)touch 文件名 ##创建文件
2)mkdir 目录名 ##创建目录(-p ##上级命令不存在则自动建立)
3)rm -f ##强行删除不提示 -r ##删除目录
6、Vim文本方式编辑
vim filename ##进入到命令模式除目录或文件(当文件名不存在时会自动创建)
i ##插入模式 esc ##退出插入模式 wq ##保存推出 q! ##强制推出vim
在vim异常退出时,系统中会在所编辑的文件目录中生成.file.swp,vim再次编辑此文件时会出现相应提示(按 "o"open 按 "e"edit 按 "r"recover 按 "d"delete .swap file 按 "q"quit)
在vim的命令模式下可以配置vim的工作方式
:set nu ##行号添加 :set nonu ##取消行号
:set mouse=a ##添加鼠标选择 :set cursorline ##行线显示
vim /etc/vimrc ###此文件为vim的配置文件
/关键字 ##关键字搜索 n向下匹配 N向上匹配
字符复制:yl(复制一个字母) yXl(复制X个字母) yw(复制一个单词 ) yXw(复制X个单词)
yy(复制一行) yXy(复制X行) p(复制完成后按“P”粘贴)
##将复制中的y改为d即为删除指令,c即为剪切指令
vim可视化模式:ctrl + v ##进入可视化模式
批量修改字符: :%s/原有字符/替换后字符 ##只替换每一行中出现的第一个原有字符
:%s/原有字符/替换后字符/g ##替换所有
vim分屏功能:ctrl+w s(上下分屏) ctrl+w v(左右分屏) ctrl+w c(关闭光标所在屏幕)
ctrl+w 上下左右(光标移动到指定屏幕) :sp file2(同时编辑当前文件和file2)
##插入模式下 i(光标所在位置插入)I(光标所在行行首)a(光标所在字符的下一个位置)A(光标所在行行尾)o(光标所在下一行)O(光标所在上一行)s(删除光标所在字符插入)S(删除光标所在行插入)##
##vimtutor (vim手册) :q (退出vimtutor)
7、切换工作模式
cd 目录名称 ##切换工作目录到指定目录
cd - ##切换工作目录到之前所在目录 cd ~ ##切换到自己的家目录
cd ~username ##切换到指定用户家目录 cd .. ##进入到当前上一级目录
8、列出目录或文件信息
ls ##如果后面没有目标那么默认目标为当前目录
ls direcory|filename ##列出文件或目录内容
ls -d direcotry ##列出目录本身
ls -l filename|dorectory ##列出文件或目录里面内容的属性
ls -ld directory ##列出目录本身属性
ls -a ##显示目录中的所有内容,包括以"."开头的隐藏文件
ls -R ##第归显示目录中的内容
9、文件的复制及转移
复制: cp file file1 file2 ... directory ###把file file1 file2 复制到 directory中
cp file test ###建立test文件模板为file
cp -r directory direcotry1 ###复制目录
转移: mv file file1 direcotry ##移动file file1到directory中
mv 存在文件 不存在文件 ##重命名文件
mv 竹子/123 . ##把“竹子”中的“123“移动到当前目录 .代表当前目录
10、正则表达式
* ###匹配0到任意字符
? ###匹配单个字符
[[:alpha:]] ###匹配单个字母
[[:lower:]] ###匹配单个小写字母
[[:upper:]] ###匹配单个大写字母
[[:digit:]] ###匹配单个数字
[[:alnum:]] ###匹配单个数字或字母
[[:punct:]] ###匹配单个符号
[[:space:]] ###匹配单个空格
{}表示不存在的或者存在的
{1..9} ###1-9
{a..f} ###a-f
{1,3,5} ###135
{a,c,e} ###a c e
{1..3}{a..c} ###1a 2a 3a 2a 2b 2c 3a 3b 3c
[]表示存在的
[A-C] ###aA bB cC
[a-c] ###aA或者bB或者c
[1-3] ###1或者2或者3
[145] ###1或者4或者5
[^abc]|[!abc] ###除了a并且除了b并且除了c
~ ###当前用户家目录
~username ###指定的用户家目录
~+ ###当前目录
~- ###当前目录之前所在目录
. ###当前目录
.. ###当前目录的上一级
例:我们利用find命令查询“竹子”目录下所有带数字的文件
例:在桌面创建“竹X(x=1-5)“个文件
11、手册
man 指令名 ##某指令的帮助
man的级别
1 系统命令 2 系统接口 3 函数库 4 特殊文件,比如设备文件 5 文件
6 游戏 7 系统的软件包 8 系统管理命令 9 内核
##例:man 5 passwd ##查看/etc/passwd文件的帮助(1可省略)##
man的快捷方式: 上/下(向上/下一行) pgUp/pgDn(相上/下一个屏幕)
d/u (向上/下半个屏幕)G/gg (跳转man最下/上)
/关键字 (搜索关键字) q (退出)
12、管理输入输出
##在linux系统中,正确输出的编号为1,错误输出编号为2##
## | 管道,管道的作用是将前一条命令的输出变成管道后命令的输入##
##注意: >, 2> ,&> 都会覆盖源文件内容##
##系统中错误的输出是无法通过管道的,可用 2>&1 可以把错误的输出编号由2变成1##
##tee 复制输出到指定位置##
例:将/etc/passwd中的正确内容输出至桌面Right文件中,错误内容输出至左面Wrong文件中
利用指令:find /etc -name passwd 2>&1 >Right |tee Wrong