linux 初学体验 20155317 王新玮
学习基于VirtualBox虚拟机安装Ubuntu图文教程在自己笔记本上安装Linux操作系统
通过询问同学和上网搜查百度,完成了虚拟机的安装,开始了linux的学习。
通过实践学习别出心裁的Linux命令学习法,掌握Linux命令的学习方法
在实验楼中进行学习
第一步 hello shiyanlou
在这一章的学习中,我出现了一些细节上的小错误,例如在第三行和第六行因为没有注意到空格的存在。也注意到了某些联系:在第九行中显示的错误让我想到了以前用clockblock编译产生的错误的信息是相类似的。
第二节 快捷键的使用与字符命令
快捷键的使用
- 使用
Tab
键来进行命令补全 - 使用
Ctrl+c
键来强行终止当前程序(并不会使终端退出) - 其他命令:
Ctrl+d |
键盘输入结束或退出终端 |
Ctrl+s |
暂停当前程序,暂停后按下任意键恢复运行 |
Ctrl+z |
将当前程序放到后台运行,恢复到前台为命令fg |
Ctrl+a |
将光标移至输入行头,相当于Home 键 |
Ctrl+e |
将光标移至输入行末,相当于End 键 |
Ctrl+k |
删除从光标所在位置到行末 |
Alt+Backspace |
向前删除一个单词 |
Shift+PgUp |
将终端显示向上滚动 |
Shift+PgDn |
将终端显示向下滚动 |
字符命令
- $ touch love_{1..10}_linux.txt 用来创建文件,其中用_{1..10}_可以创建多个文件名字从1到10.
- 常用通配符涵义:
字符 | 含义 |
---|---|
* |
匹配 0 或多个字符 |
? |
匹配任意一个字符 |
[list] |
匹配 list 中的任意单一字符 |
[!list] |
匹配 除list 中的任意单一字符以外的字符 |
[c1-c2] |
匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z] |
{string1,string2,...} |
匹配 sring1 或 string2 (或更多)其一字符串 |
{c1..c2} |
匹配 c1-c2 中全部字符 如{1..10} |
3.man 获得某个命令的说明和使用方式的详细介绍:例如man man
第三节:用户及文件权限管理
1.Linux 中创建、删除用户,及用户组等操作。 2.Linux 中的文件权限设置。
主要是通过打开终端,输入Linux命令来进行对用户和文件的有效操作。
主要使用到的命令有:
- 查看用户
$ who am i
或$ who mom likes
- 创建用户
$ sudo adduser
- 用户组 1.groups命令
$ groups
2.查看/etc/group文件$ cat /etc/group | sort
- 删除用户
$ sudo deluser
- 查看文件权限
$ ls -l
发现注意事项:
- $ su <user>命令 切换到用户user,执行时需要输入目标用户的密码
- $ sudo <cmd>命令 以特权级别运行cmd命令,需要当前用户属于sudo组,且需要输入当前用户密码
- $ su - <user>命令 切换用户,同时环境变量也会跟着改变成目标用户的环境变
第四节: Linux 目录结构及文件基本操作
这一部分的所掌握的命令有:
- 切换目录
$ cd
- 进入上一级目录
$ cd ..
- 进入“home”目录
$ cd ~
或$ cd /home/<你的用户名>
- 获取当前路径
$ pwd
- 新建文件
$ touch
- 新建目录
$ mkdir
(若使用-p
参数,则同时创建一个之前不存在的父目录$ mkdir -p
) - 复制文件
$ cp <复制文件名> <复制到该文件文件名>
- 删除文件或目录
$ rm
(加入-f
参数则强制删除该文件或目录$ rm -f
) - 移动文件
$ mkdir <目标文件夹>
$ mv <移动文件> <目标文件夹>
- 重命名文件
$ mv <旧文件名> <新文件名>
- 查看文件
$ cat
(加入-n
显示行号) - 查看文件类型
$ file
- 编辑文件
$ vimtutor
第五节 环境变量与文件查找
理解变量的定义和作用。变量就是计算机中用于记录一个值(不一定是数值,也可以是字符或字符串)的符号,而这些符号将用于不同的运算处理中。
本节主要命令:
- 创建变量
$ declare <变量名>
(使用=
给变量赋值) - 读取变量的值
$ echo $<变量名>
(注意读取变量名时变量名前要加 $符号($符号用于表示引用一个变量的值),变量名只能是英文字母,数字或者下划线,且不能以数字作为开头。) - 环境变量相关命令
命令 | 说明 |
---|---|
set |
显示当前 Shell 所有环境变量,包括其内建环境变量(与 Shell 外观等相关),用户自定义变量及导出的环境变量 |
env |
显示与当前用户相关的环境变量,还可以让命令在指定环境中运行 |
export |
显示从 Shell 中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量 |
4.变量修改
变量设置方式 | 说明 |
---|---|
${变量名#匹配字串} |
从头向后开始匹配,删除符合匹配字串的最短数据 |
${变量名##匹配字串} |
从头向后开始匹配,删除符合匹配字串的最长数据 |
${变量名%匹配字串} |
从尾向前开始匹配,删除符合匹配字串的最短数据 |
${变量名%%匹配字串} |
从尾向前开始匹配,删除符合匹配字串的最长数据 |
${变量名/旧的字串/新的字串} |
将符合旧字串的第一个字串替换为新的字串 |
${变量名//旧的字串/新的字串} |
将符合旧字串的全部字串替换为新的字串 |
变量删除 $ unset
6.让环境变量立即生效 $ source
7.搜索变量
命令 | 优点 |
---|---|
whereis |
简单快速 |
which |
小而精 |
find |
精而细 |
locate |
快而全 |
8.与时间相关的命令参数
参数 | 说明 |
---|---|
-atime | 最后访问时间 |
-ctime | 创建时间 |
-mtime | 最后修改时间 |
第六节 文件打包与压缩
介绍了几种在Linux系统中常见常用的压缩包文件格式。
格式有如下:
|.zip| zip程序打包压缩的文件|
|.rar| rar程序压缩的文件|
|.7z| 7zip程序压缩的文件|
|.tar| tar程序打包,未压缩的文件|
|.gz| gzip程序(GNU zip)压缩的文件|
|.xz| xz程序压缩的文件|
|.bz2| bzip2程序压缩的文件|
|.tar.gz| tar打包,gzip程序压缩的文件|
|.tar.xz| tar打包,xz程序压缩的文件|
|tar.bz2| tar打包,bzip2程序压缩的文件|
|*.tar.7z| tar打包,7z程序压缩的文件|
常用压缩和解压命令:
- zip压缩命令
$ zip -r -q -o *.zip <路径>
- zip解压命令 1.将*.zip解压到当前目录:
$ unzip *.zip
2.使用安静模式,将文件解压到指定目录:$ unzip -q *.zip -d ziptest
- 从指定文件或目录创建压缩包或添加文件到压缩包:
$ rm *.zip
$ rar a *.rar .
- 从指定压缩包文件中删除某个文件:
$ rar d *.rar .zshrc
- 查看不解压文件:
$ rar l *.rar
- 使用unrar解压rar文件
1.全路径解压:$ unrar x *.rar
2.去掉路径解压:
$ mkdir tmp
$ unrar e *.rar tmp/
- 创建一个 tar 包:
$ tar -cf *.tar ~
第7节 文件系统操作与磁盘管理
这一节旨在教会我们简单文件系统操作和磁盘管理。在之前的课程学习过程中也稍有涉及。在懂得Linux系统语言的原理后学起来相较之前轻松了一些。
主要命令有:
- 查看磁盘容量:
$ df
(可通过增加-h
参数使其看起来更加易懂) - 查看目录容量:
$ du
- 从标准输入读入用户输入到标准输出或者一个文件:
1.输出到文件$ dd of=test bs=10 count=1
或 $ dd if=/dev/stdin of=test bs=10 count=1
2.输出到标准输出$ dd if=/dev/stdin of=/dev/stdout bs=10 count=1
- 从/dev/zero设备创建一个容量为 256M 的空文件:
$ dd if=/dev/zero of=virtual.img bs=1M count=256
$ du -h virtual.img
第8节 Linux下的帮助命令
首先弄懂内建命令和外部命令的概念。学会使用help , man , info命令并对其加以区分。
涉及到的命令有:
- helo命令
help ls
- man命令
man ls
- info命令
info ls
linux 初学体验 20155317 王新玮的更多相关文章
- 20155317王新玮《网络对抗》Exp2 后门原理与实践
20155317王新玮<网络对抗>Exp2 后门原理与实践 一.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划 ...
- 2018-3-7 20155317 王新玮 Exp1 PC平台逆向破解(5)M
2018-3-7 20155317 王新玮 Exp1 PC平台逆向破解(5)M 任务要求:手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. NOP.JNE.JE.JMP.CM ...
- 20155317 王新玮 2016-2017-2 《Java程序设计》第9周学习总结
20155317 王新玮 2016-2017-2 <Java程序设计>第9周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以 ...
- 20155317 王新玮 2006-2007-2 《Java程序设计》第4周学习总结
20155317 王新玮 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 继承共同行为 多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那 ...
- C语言与java 20155317 王新玮第二次
20155317 王新玮第二次写作感想 你有什么技能比大多数人(超过90%以上)更好? 刚刚看到这个题目,我的首先想到的是会一些中医,懂得中医的理论框架知识,懂得大部分的中医脉象,能够解决日常生活 ...
- 20155317王新玮《网络对抗技术》实验9 web安全基础实践
20155317王新玮<网络对抗技术>实验9 web安全基础实践 一.实验准备 1.0 实验目标和内容 Web前端HTML.能正常安装.启停Apache.理解HTML,理解表单,理解GET ...
- 20155317王新玮《网络对抗技术》实验8 WEB基础实践
20155317王新玮<网络对抗技术>实验8 WEB基础实践 一.实验准备 1.0 实验目标和内容 Web前端HTML.能正常安装.启停Apache.理解HTML,理解表单,理解GET与P ...
- 20155317 王新玮《网络对抗技术》实验5 MSF基础应用
20155317 王新玮<网络对抗技术>实验5 MSF基础应用 1. MS08_067安全漏洞 原理:攻击者利用受害者主机默认开放的SMB服务端口445,发送特殊RPC请求,通过MSRPC ...
- 20155317 王新玮 2016-2017-2 《Java程序设计》第6周学习总结
20155317 王新玮 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 10.1.1串流设计的概念 Java将输入/输出抽象化为串流,数据有来源及目的地,衔 ...
随机推荐
- Python2.7 - IMOOC - 3
第三章 Python变量和数据类型 3-4.变量 变量名必须是大小写英文.数字和下划线(_)的组合,且不能用数字开头. 同一个变量可以反复赋值,而且可以是不同类型的变量,例如: a = 123 # a ...
- 关于由ajax返回的数据在for循环中只能取到最后一个数的问题
关于由ajax返回的数据在for循环中只能取到最后一个数的问题 以上是来自后台的数据格式.从数据中可以看出,里面包含两个商品,每个商品价格分别为:1.98,13.60.这里我要计算两个商品的总价格,但 ...
- 真实世界中的 Swift 性能优化
那么有什么因素会导致代码运行缓慢呢?当您在编写代码并选择架构的时候,深刻认识到这些架构所带来的影响是非常重要的.我将首先谈一谈:如何理解内联.动态调度与静态调度之间的权衡,以及相关结构是如何分配内存的 ...
- 《metasploit渗透测试魔鬼训练营》学习笔记第九章--meterpreter
七.强大的meterpreter 7.1再探metasploit的攻击载荷模块 7.1.1典型的攻击载荷模块 metasploit涵盖了各大主流操作系统和平台,其中绝大部分是远程漏洞 ...
- Convolution1D与Convolution2D区别
以下是Convolution1D的例子: # apply a convolution 1d of length 3 to a sequence with 10 timesteps, # with 64 ...
- Dubbo实践(五)扩展Spring Schema
先回顾Dubbo实践(一)中定义的dubbo-provider.xml: <?xml version="1.0" encoding="UTF-8"?> ...
- Struts2学习总结——文件上传与下载
Struts2文件上传与下载 1.1.1新建一个Maven项目(demo02) 在此添加Web构面以及 struts2 构面 1.2.1配置Maven依赖(pom.xml 文件) <?xml v ...
- linux SVN添加新用户
首先找到用户文件:authz.conf; 用vi 编辑authz.conf文件在develps 后面添加你要添加的用户名:如图: 上图:cheny就是我后面添加上去的用户名 按Esc :wq保存au ...
- Java并发编程(六)原子性与易变性
原子性 原子是最小单元.不可再分的意思.原子性是指某个操作在获取CPU时间时,要么就给它足够时间,让这个操作执行完,要么就不执行这个操作,执行时不能出现上下文切换(把CPU时间从一个线程分配到另一个线 ...
- C++练习 | 掷骰子走到第n步的方法数(DFS)
玩家根据骰子的点数决定步数,骰子点数为1的时候走一步,以此类推.求玩家走到第n步总共有多少种投骰子的方法.输入为一个整数n,输出为投骰子的方法数. #include <iostream> ...