Linux实验 (5) 熟悉Linux文件、磁盘和软件包管理
1.自学vimtutor中文版,见附件,熟悉Vim环境,完成如下题目。
1)如何在三种工作模式之间进行切换。
指令模式(Command Mode) 下输入 a、i、o进入文本输入模式(Input Mode)
文本输入模式(Input Mode) 下按ESC进入指令模式(Command Mode)
指令模式(Command Mode)下输入:进入末行模式(Last line Mode)
末行模式(Last line Mode)下指令错误则返回指令模式(Command Mode)
2)在vim的一般模式下,如何将光标定位至一行的开头字符和结尾字符的位置?
0 行首 $ 行尾
3)从vim的一般模式转换为编辑模式时,如何直接将光标定位至当前字符后开始插入字符?
i
4)如何查看vim正在编辑的文件名?
file
5)使用vim如何将文件第6行内容剪切至第10行?
Vim中的剪切复制粘贴分别为delete,yank,put;
1.x表示把光标下的字符剪切下来,并把它放在无名寄存器中;
2.p命令将无名寄存器中的内容粘贴到光标后面;
3.dd表示剪切当前行;剪切后,依然可用p来进行粘贴;
4.yy表示复制当前行;
5.Home跳到行首;
6.End跳到行尾;
光标定在第6行—输入yy—copy
光标定在第9行-----输入p
6)vim中如何进行括号的匹配(根据左括号找到对应的右括号,或者相反)?
%
7)vim中如何将一个文件另存为另一个文件?
一般模式:w 新文件名
8)将文件/etc/passwd复制到/tmp/passwd,然后进行如下操作:
以vim打开/tmp/passwd文件。
vim /tmp/passwd设置行号。
set nu!将光标定位至第10行第10个字符。
10G,10|将光标定位至第1行。
1G将光标定位至最后一行。
G不使用左右上下箭头键,如何进行光标的上下左右移动?
上------k
下------j
左------h
右------l在文件中搜索字符串root。
/root删除第6行。
6G,dd撤销删除第6行。
u将第1-5行复制到文件末尾。
shift :set number
shift :1,5 copy (最后一行行号)撤销如上5行的复制。
u删除第6行的前5个字符。
:6s/^.{5}将字符串ftp替换为abc。
:1,$s/ftp/abc/将文件不保存退出。
:q!重新以vim打开/tmp/passwd文件,将光标定位至第3行。
3G在第3行的下一行(第4行)开始编辑,插入内容“abcdefg”。
3G,o切换至一般模式,将上题中的字符a替换为z。
?/a/z/将文件保存退出。
:wq
2.理解Bash使用,完成如下题目
1)在命令输入时使用tab键,理解tab键的作用和用法。
方便输出字符
2)使用两种方法(其中一种方法必须使用管道命令)将文件/etc/passwd中包含“ftp”的一行输出。
cat /etc/passwd | grep ftp
grep -r ftp /etc/passwd
3)分别查看环境变量PATH和HOME的值。将当前目录加入PATH环境变量。
echo $ PATH
echo $ HOME
export PATH=$ PWD:$ PATH
4)设置命令“cd /usr/share/doc”的别名为“cddoc”,并执行命令别名。
alias cddoc=‘cd /usr/share/doc’
cddoc
5)取消上题中的命令别名“cddoc”。
unalias cddoc
6)新建文件/tmp/testfile,使用echo命令将“123”写入该文件中。
touch /tmp/testfile
echo ‘123’ >> /tmp/testfile
7)将命令ps -axu的执行结果重定向到文件/tmp/pslog文件中。
ps -axu >> /tmp/pslog
8)使用和熟悉快捷键Ctrl+C、Ctrl+D、Ctrl+A、Ctrl+E、Ctrl+L、Ctrl+U、Ctrl+K、Ctrl+Y、Ctrl+R。
Ctrl+C 强行终止当前的错误结果,并恢复到你可控的状态
Ctrl+D 键盘输入结束或退出终端
Ctrl+A 将光标移至输入行头,相当于Home键
Ctrl+E 将光标移至输入行末,相当于End键
Ctrl+L 清屏,相当于clear
Ctrl+U 删除此处至开始所有内容
Ctrl+K 删除此处至末尾所有内容
Ctrl+Y 粘贴由Ctrl+U,Ctrl+D,Ctrl+W删除的单词
Ctrl+R 反向搜索执行过的命令
9)显示最近执行过的10条命令。重新执行倒数第5条命令。
1、history | tail -10
2、!-5
10)查看系统当前设置了哪些命令别名。
alias
11)使用!命令将最近执行过的以l开头的命令再执行一次。
!l
3.使用引用环境变量(使用$)的方法完成如下功能:
1)删除/tmp目录下所有者为当前登录用户的所有文件。
find /tmp -user $LOGNAME | xargs rm -rf
2)切换目录至当前用户的个人主目录。
cd $HOME
3)查看当前工作目录。
echo $PWD
4.理解Bash中特殊字符的用法
1)输出字符串 abc’de
echo abc\’de
2)利用变量赋值方式,将字符串DOS file c:>$student*显示出来。
vim script2
(
#!bin/bash
student=freya
a="DOS file c:>\ $student \*"
echo $a
)
bash<script2
3)利用变量赋值方式,将字符串echo “directory is $HOME” 显示出来,其中HOME为环境变量,要求将其显值示出来。
vim script3
(
#!bin/bash
HOME=$HOME
echo "echo directory is $HOME"
5.执行并理解如下命令,写出执行结果
str2=’echo “directory is $HOME”’
echo $str2
echo “directory is $HOME”
str3=`date`
echo today is $str3
echo today is `date`
today is 2018年 12月 01日 星期一 14:07:11 CST
today is 2018年 12月 01日 星期一 14:07:11 CST
echo “filename is \“$HOME\”\$*”
“filename is “/root”$*”
echo “filename is \abc \$HOME”
filename is \abc\ /root
var1=“zhang san”
echo $var1
echo ${var1}
zhang san
zhang san
var1=linux
var2=“linux fedora”
var3=20
var4=“$var2 $var3”
var5=“$var2$var3”
var6=$var2$var3
var7=${var2}${var3}
查看如上各个变量的值。
linux
linux fedora
20
linux fedora 20
linux fedora20
linux fedora20
linux fedora20
var1=zhangsan
echo $var1
var2=lisi
echo $var2
bash
echo $var1 $var2
exit
echo $var1 $var2
zhangsan
lisi
var1=zhangsan
echo $var1
var2=lisi
export var2
echo $var2
bash(子进程)
echo $var1 $var2
export –n var2//zhangsan
//lisi
//zhangsan lisibash(孙子进程)
echo $var1 $var2
exit(返回子进程)
echo $var1 $var2
exit(返回父进程)
echo $var1 $var2//zhangsan lisi
//lisi
//lisi
//zhangsan lisi
6.如何使用通配符匹配如下字符串?
1).afile、.bfile、.cfile、.abcfile
.[abc]*file
2)fa、fb、fc、fd、fe、ff、fg…fz
f[a~z]
3)f1、f2、f3…f100
f[1~100]
4)以chapter开头后面紧跟着0个或多个0-9的数字,如匹配chapter、chapter0、chapter2、chapter36、chapter100等。
chapter[0~9]*
5)匹配/var目录下,以l开头的子目录下的所有的文件。
/var/l*
7.按如下步骤执行,理解位置参数$0、$1、$2。
echo 123 > /tmp/f1
echo abc > /tmp/f2
vim ex1(编辑文件ex1内容如下)
#!/bin/bash
cat $0 $1 $2
chmod 777 ex1
./ex1 f1 f2
查看并理解执行结果。
#!/bin/bash
cat $0 $1 $2
123
abc
$0----文件本身
$1,$2—随后传进的参数
8.Linux下环境文件有哪些?各有何作用?请总结并形成文档。
linux变量文件有:
/etc/environment
/etc/profile
~/.profile
/etc/bash.bashrc
~/.bashrc
~/.bash_profile(一般是用户在自己目录下新建的)
~/.bash_logout.
系统级:
1./etc/environment:是系统在登录时读取的第一个文件,该文件设置的是整个系统的环境,只要启动系统就会读取该文件,用于为所有进程设置环境变量。
2./etc/profile:此文件是系统登录时执行的第二个文件。 为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。
3. /etc/bashrc:是针对所有用户的bash初始化文件,每次新开一个终端,都会执行/etc/bashrc。
用户级(这些文件处于home目录下):
1.~/.profile:对应当前登录用户的profile文件,用于定制当前用户的个人工作环境(变量是永久性)
2.~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取。
3.~/.bash_profile or ~./bash_login: ~/.bash_profile是交互式login 方式进入 bash 运行的.
4.~/.pam_environment:用户级的环境变量设置文件.
5.~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件。
10.理解如下特殊变量的含义。
$# 位置参数的数量
$? 命令执行后返回的状态
$$ 当前进程的进程号
$! 后台运行的最后一个进程号
$- 当前设置
$@ 所有参数的列表
Linux实验 (5) 熟悉Linux文件、磁盘和软件包管理相关推荐
- 熟悉和理解linux编程环境,熟悉Linux环境和编程0.doc
实验报告 班级 学号 姓名 实验日期 2005-03-20 实验一 熟悉在Linux环境下的操作及编程 一. 实验目的 熟悉Linux环境,掌握Linux常用的基本命令,为以后的Linux编程打下基础 ...
- linux实验报告一,Linux实验报告6参考答案.doc
Linux实验报告6参考答案.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3. ...
- LINUX学习基础篇(十五)软件包管理
LINUX学习基础篇(十五)软件包管理 软件包管理 软件包分类 源码包 二进制包 选择 依赖性 rpm包安装 rpm包命名规则 rpm包安装和卸载 服务命令 rpm查询命令 验证 数字证书 rpm中文 ...
- 操作系统——实验壹——熟悉Linux基础命令及进程管理
一. 实验目的 加深对进程概念的理解,明确进程和程序的区别. 进一步认识并发执行的实质. 分析进程争用资源的现象,学习解决进程互斥的方法. 二. 实验内容 运行程序,查看自己运行的结果,并进行分析. ...
- linux实验二目录与文件查看相关命令,Linux文件和目录管理相关命令(二)
今天小编将继续为大家带来Linux文件和目录管理相关命令的文章,想要做Linux运维工程师的小伙伴,来看一看,希望能对你有帮助哦~ 一 查看文件内容 上面提到的一些命令例如ls只是用来显示文件的属性与 ...
- 嵌入式linux实验截图,嵌入式linux实验二.pdf
嵌入式原理与应用实验 实验二 Linux 系统的常用命令 学号 1215108019 姓名 李克帆 班级 电子 2 华侨大学电子工程系 实验二 Linux 系统的常用命令 一.实验目的 掌握 Linu ...
- linux实验手册汇总,Linux实验手册汇总(226页)-原创力文档
精品文档 Linux 实验手册 补充实验步骤很详细 Linux 重于练习和动手 一 Linux 安装 注意磁盘分区 二: 用户简单操作: 1. 添加用户 u1 和 u2,并分别设置口令 #userad ...
- linux磁盘权限 /srv,Linux学习笔记之解压压缩,磁盘分区,软件包管理,权限
关机命令 (不能直接点虚拟机右上角的x) init 0 重启命令 init 6 管道符号 | ---- 把前一个命令的输出结果传递给后一个命令处理 ----哪些命令支持放在管道符后面 (mor ...
- linux实验报告makefile,linux实验二交叉编译和Makefile实验报告.doc
linux实验二交叉编译和Makefile实验报告 实验二 交叉编译和Makefile 实验目的 了解和掌握交叉编译模式和方法: 了解和掌握makefile文件的编写 学会使用交叉编译工具和make工 ...
最新文章
- Struts2 单个文件上传/多文件上传
- ThinkPHP多应用/多模块配置
- 使用VC6.0创建和运行C程序的方法
- 1.16 项目实例:Java图书信息查询
- python数据类型详解(全面)
- EAGER的获取是代码的味道
- python 进程和线程
- UML类图与类间六种关系表示
- 淘宝美工实用素材|轻松交作业过稿
- 2016大学里的流年回忆
- VMware Workstation 16.2 Pro for Windows SLIC 2.6 Unlocker
- 留言系统php课程设计,PHP课程设计网络留言板
- Ubuntu搭建透明网桥
- 量子计算机工作原理如何解释,量子计算机工作原理
- Java中的Dao是什么意思?
- The server quit without updating PID file解决方法
- Golang - [Iris] 日志写入与日志分割
- 2021年中国内燃机曲轴行业现状及竞争格局分析,高壁垒塑造曲轴行业高集中度,新能源汽车带动行业发展「图」
- 单片机课cheng设计求大lao们指jiao
- SpringBoot+Vue+Element-UI实现家庭理财记账管理系统
热门文章
- php搜索ttfb用时太长,waiting TTFB时间过长怎么办
- 我的Android进阶之旅------Android系统设置默认来电铃声、闹钟铃声、通知铃声
- 微信公众号如何接入第三方在线客服
- CTSC2018 青蕈领主
- JQ--阻止点击事件冒泡
- 简而不凡的“工厂模式”
- 分享到微信列表、朋友圈、微信小程序,分享到qq、qq空间、分享qq小程序,分享到微博
- windows store 下载软件出现错误代码: 0x80D03805
- ssm+mysql护理质量考核系统微信小程序-计算机毕业设计源码03644
- N卡滤镜打开方法介绍