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将输入/输出抽象化为串流,数据有来源及目的地,衔 ...
随机推荐
- Linux命令--目录处理
ls命令 Linux ls命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录). 语法 ls [-alrtAFR] [name...] 参数 : -a 显示所有文件及目录 (ls内定 ...
- 015.2Condiction接口
Condiction对象能够让线程等待,也能够唤醒相应的线程,通过下面方法,具体看代码:await();signal();signalAll(); 使用步骤:1)创建锁2)通过锁拿到Condictio ...
- JavaScript设计模式导学
如何成为一名合格的工程师? 作为一名合格的工程师,不仅需要懂代码,还要懂设计,一名合格工程师的必备条件: 前端开发有一定的设计能力,一般三年开发经验的同学,面试必须考设计能力 成为项目技术负责人,设计 ...
- [USACO08JAN]Telephone Lines
嘟嘟嘟 题意概括一下,就是在无向图上求一条1到n的路径,使路径上第k + 1大的边权尽量小. 考虑dp,令dp[i][j] 表示走到节点 i,路线上有 j 条电话线免费时,路径上最贵的电缆花费最小是多 ...
- 软件分享:将应用一键打包成dmg文件
简介 苹果软件开发完成后,都要打包成dmg文件.通常的做法也许是到系统自带的磁盘工具里制作dmg文件,但这样做比较繁琐,尤其是要打包多个应用时,每次只能制作一个dmg文件很麻烦.分享一个很好用很方便的 ...
- 通讯协议(三)Protocol Buffers协议
Protocol Buffers是Google开发一种数据描述语言,能够将结构化数据序列化,可用于数据存储.通信协议等方面. 不了解Protocol Buffers的同学可以把它理解为更快.更简单.更 ...
- PAT——1052. 卖个萌
萌萌哒表情符号通常由“手”.“眼”.“口”三个主要部分组成.简单起见,我们假设一个表情符号是按下列格式输出的: [左手]([左眼][口][右眼])[右手] 现给出可选用的符号集合,请你按用户的要求输出 ...
- 一篇很好的解释了.Net Core, .Net Framework, .Net standard library, Xamarin 之间关系的文章 (转载)
Introducing .NET Standard In my last post, I talked about how we want to make porting to .NET Core e ...
- STM32启动代码分析
STM32启动文件简单分析(STM32F10x.s适用范围)定时器, 型号, 名字在<<STM32不完全手册里面>>,我们所有的例程都采用了一个叫STM32F10x.s的启动文 ...
- linux文件系统写过程简析
linux写入磁盘过程经历VFS -> 页缓存(page cache) -> 具体的文件系统(ext2/3/4.XFS.ReiserFS等) -> Block IO ->设备 ...