&&使用oschina的git服务器

1.创建了项目 https://git.oschina.net/abc99/wyq20169314

2.配置项目

(1)为项目添加公钥

项目管理-部署公钥管理-添加新的公钥

打开git客户端,生成公钥,生成命令如下



这样在d盘下就会有两个文件:

在d盘下创建一个文件夹为mypro,把oschina_key、oschina_key.pub放到里面

用记事本打开oschina_key.pub,把公钥添加到oschina中

5.测试使用

先git clone 项目地址,把项目下载下来

修改一下readme的内容

git进入到项目中,为项目添加新的文件,然后commit,再提交到远程服务器中

在项目页面中,刷新之后,就可以查看到我们刚刚更新的ReadMe内容

第一讲:Linux 就是一个操作系统,是系统调用和内核那两层

第二节 基本概念及操作

1.实验环境:实验楼自带XFCE-terminal

2.实验通过shell(终端模拟器)来与系统打交道

3.命令行操作

Tab补全

ctrl+c中断、

方向上键利用历史输入命令、

通配符(*、?)

使用man命令获取帮助,八个区段

4.banner 输出图形字符

$ sudo apt-get update (手动更新软件包索引)

    $ sudo apt-get install sysvbanner

    $ banner 20169314

  '-w'参数指定打印宽度,因为我们的环境在屏幕中显示比较小,必须要加上宽度限制。

  $ printerbanner -w 50 A

第三节、用户及文件权限管理

0.用户管理 权限机制

一、用户管理

1.查看用户

$ who am i表示当前伪终端用户的用户名,第二列的 pts/0 中 pts 表示伪终端

$ whoami查看当前登录用户的用户名

2.创建用户 root权限

$su <user> 切换到用户user,需要密码

$sudo <cmd> 运行cmd命令,需要用户属于sudo组,且需要密码

$su-<user>  环境变量改变

$su -l lilei 切换用户,需要密码

ctrl+d或exit 退出终端
![](http://images2015.cnblogs.com/blog/1115783/201703/1115783-20170304095139095-309704150.png)
![](http://images2015.cnblogs.com/blog/1115783/201703/1115783-20170304095225548-1839392510.png)

3.查看用户组

(1)group命令

(2)查看 /etc/group文件

cat /etc/group|sort(cat用于读取指定文件的内容并打印到终端输出,|sort表示将读取的文本进行一个字典排序再输出)

cat /etc/group |grep -E "shiyanlou"(过滤掉不想看到的结果)

4.用sudo命令将wyq添加到sudo用户组,让其有权限

$ su shiyanlou

$ groups wyq

$ sudo usermod -G sudo wyq(获得权限,usermod 命令可以为用户添加用户组,需要密码)

$ groups wyq(返回用户,查看是否获得权限)

5.删除用户

    $ sudo deluser wyq --remove-home

二、文件权限

1.查看文件权限

$ ls -l



打开并查看内部文件r+x

创建其他文件w

用命令查看文件大小:ls -lh

2.修改权限rwx!

作业:

第四节、Linux 目录结构及文件基本操作

一、Linux 目录结构

FHS (文件系统层次结构标准)定义了两层规范

第一层是, / 下面的各个目录应该要放什么文件数据,例如 /etc 应该要放置设置文件,/bin 与 /sbin 则应该要放置可执行文件等。

第二层则是针对 /usr 及 /var 这两个目录的子目录来定义。例如 /var/log 放置系统登录文件、/usr/share 放置共享数据等

进入上一级目录 $ cd ..

进入home目录 $ cd ~或者$ /home/<用户名>

pwd 获取当前路径

绝对路径,简单地说就是以根"/"目录为起点的完整路径路径

相对路径,也就是相对于你当前的目录的路径,相对路径是以当前目录 . 为起点,以你所要到的目录为终点

二、Linux 文件的基本操作

    $ touch 文件名 (创建新文件)

    $ mkdir 目录名 (创建新目录)

    $ mkdir -p a/b/c  (同时创建多级目录)

    $ cp 文件名 a/b/c(复制文件 到文件夹或目录中)

    $ mkdir d
$ cp -r d b(复制目录d到目录b处) $ rm 文件名(删除文件或文件夹)
$ rm -f 文件名(强制删除)
$ rm -r 目录名(删除目录) $ mkdir 目录e
$ mv 文件a 目录e(移动 剪贴 文件a到目录e) $ mv 旧名 新名(重命名) 查看文件
$ cat -n 文件名(快速查看文件,-n显示行号)
$ nl 文件名(添加行号并打印)
使用more和less分页查看,默认显示一页内容
使用head和tail显示文件,显示头几行和尾几行
使用file命令可以查看文件的类型
用vim编辑区编辑文件内容

第五讲 环境变量与文件查找

一、如何建议一个变量

1.使用declare命令创建一个变量名为 tmp 的变量,用=号赋值运算符为变量 tmp 赋值为 shiyanlou,并读取变量的值:

    $ declare tmp

    $ tmp=shiyanlou

    $ echo &tmp

2.三种环境变量相关的命令,set,env,export

3.命令的查找路径与顺序

4.添加自定义路径到“PATH”环境变量

5.修改和删除已有变量

二、搜索文件

  1. $ whereis who(简单快速)

  2. $ locate /etc/sh

    $ locate /usr/share/*.jpg(快速,全面)

3.which(从path指定环境中搜索)

4.find(详细)

第六讲 文件打包与解压缩

用 zip压缩,用unzip解压缩

用rar压缩、unrar解压缩,要先安装rar、unrar工具

tar分别有对应的解压命令

第七讲 文件系统与磁盘管理

一、简单文件系统操作

1.查看磁盘和目录的容量

    使用 df 命令查看磁盘的容量

   $ df

    使用 du 命令查看目录的容量

    $ du
$ du -h

2.简单的系统操作(这个不太会,我先进行后面的内容)

3.作业

第八讲 Linux下的帮助命令

一、内建命令与外部命令

内建命令实际上是 shell 程序的一部分,其中包含的是一些比较简单的 Linux 系统命令,这些命令是写在bash源码的builtins里面的,并由 shell 程序识别并在 shell 程序内部完成运行,通常在 Linux 系统加载运行时 shell 就被加载并驻留在系统内存中。而且解析内部命令 shell 不需要创建子进程,因此其执行速度比外部命令快。比如:history、cd、exit 等等。

外部命令是 Linux 系统中的实用程序部分,因为实用程序的功能通常都比较强大,所以其包含的程序量也会很大,在系统加载时并不随系统一起被加载到内存中,而是在需要时才将其调用内存。虽然其不包含在 shell 中,但是其命令执行过程是由 shell 程序控制的。外部命令是在 Bash 之外额外安装的,通常放在/bin,/usr/bin,/sbin,/usr/sbin等等。比如:ls、vi等。

 type 命令来区分命令是内建的还是外部的。

$ type ls
$ type exit

二、 帮助命令

1.help命令

进入 bash 中,其内置有help命令,help命令只能用于查询内建命令。

![](http://images2015.cnblogs.com/blog/1115783/201703/1115783-20170304161214048-2068902430.png)

--help用来查询外部命令

$ ls --help

2.man 命令
得到的内容比用 help 更多更详细,而且 man 没有内建与外部命令的区分
3.info命令
是 GNU 的超文本帮助系统,能够更完整的显示出 GNU 信息。

第十讲 Linux任务计划crontab

crontab 命令常见于 Unix 和类 Unix 的操作系统之中(Linux 就属于类 Unix 操作系统),用于设置周期性被执行的指令。该命令从输入设备读取指令,并将其存放于 crontab 文件中,以供之后读取和执行。通常,crontab 储存的指令被守护进程激活,crond 为其守护进程,crond 常常在后台运行,每一分钟会检查一次是否有预定的作业需要执行。通过 crontab 命令,可以在固定的间隔时间执行指定的系统指令或 shell script 脚本。时间间隔的单位可以是分钟、小时、日、月、周的任意组合。

第十一讲 命令执行顺序控制与管道

一、命令执行顺序的控制

1.顺序执行

$ sudo apt-get update

$ sudo apt-get install some-tool

$ some-tool

以上三条可以一次性输完,可以自己运行

$ sudo apt-get update;sudo apt-get install some-tool;some-tool

2.有选择的执行命令

我们需要能够有选择性的来执行命令,比如上一条命令执行成功才继续下一条,或者不成功又该做出其它什么处理,比如我们使用 which 来查找是否安装某个命令,如果找到就执行该命令,否则什么也不做。

$ which cowsay>/dev/null && cowsay -f head-in onch~

如果没有安装cowsay也不会发生什么不好的后果

&&就是用来实现选择性执行的,它表示如果前面的命令执行结果(不是表示终端输出的内容,而是表示命令执行状态的结果)返回0则执行后面的,否则不执行.

shell中的&&和||除了用于表示逻辑与和或之外,还可以实现这里的命令执行顺序的简单控制。||在这里就是与&&相反的控制效果,当上一条命令执行结果为≠0($?≠0)时则执行它后面的命令

3.管道

管道是什么,管道是一种通信机制,通常用于进程间的通信(也可通过socket进行网络通信),它表现出来的形式就是将前面每一个进程的输出(stdout)直接作为下一个进程的输入(stdin)。

管道又分为匿名管道和具名管道

在使用一些过滤程序时经常会用到的就是匿名管道,在命令行中由|分隔符表示,|在前面的内容中我们已经多次使用到了。具名管道简单的说就是有名字的管道,通常只会在源程序中用到具名管道。

1.用ls命令查看/etc目录里有哪些文件和目录

$ ls -al /etc

$ ls -al /etc |less

通过管道将前一个命令(ls)的输出作为下一个命令(less)的输入,然后就可以一行一行地看.

2.cut 命令,打印每一行的某一字段

$ cut /etc/password -c 5

3.grep 命令,在文本中或 stdin 中查找匹配字符串

一般形式:grep [命令选项]... 用于匹配的表达式 [文件]...

  1. wc 命令,简单小巧的计数工具

$ wc /etc/passwd

5.sort 排序命令

将输入按照一定方式排序,然后再输出,它支持的排序有按字典排序,数字排序,按月份排序,随机排序,反转排序,指定特定字段进行排序等等。

$ cat /etc/passwd |sort

  1. uniq 去重命令

uniq命令可以用于过滤或者输出重复行

作业:

用ASCII命令显示图片

$ sudo apt-get update

$ sudo apt-get install aview

$ sudo apt-get install imagemagick

$ wget http://labfile.oss.aliyuncs.com/courses/1/Linus.png

$ acsiiview Linus.png

以上为网络攻防第一周博客。通过这周学习,了解了很多之前没有接触过的知识,希望在之后的学习更进一步。

实验楼Linux基础入门第一周的更多相关文章

  1. Linux 基础入门 第一周9.14~9.20

    第一节 Linux系统简介 Linux——操作系统 1.使多个用户从不同的终端同时操作主机(分时操作系统): 2.MINIX是一个功能有限的类似于UNIX的操作系统(UNIX 实现了 TCP/IP 协 ...

  2. Linux 基础入门 第二周9.21~9.27

    一.学习内容 本周主要学习内容主要贴合: 在进行<深入理解计算机系统>这门课的实验中没有遇到什么大问题,学习内容与上周实验<linux基础入门>有相似之处.本实验中的内容比较贴 ...

  3. Linux基础入门 第一章:Linux环境搭建——Redhat 6.4图文安装教程

    1.创建新的虚拟机 2.选择自定义 3.选择Workstation 10.0 4.选择稍后安装操作系统 5.选择Red Hat 6 64位 6.对虚拟机命名和选择安装位置 7.选择处理器配置 8.选择 ...

  4. 实验楼 Linux 基础入门(新版)挑战:寻找文件

    传送门:https://www.shiyanlou.com/courses/running 挑战:寻找文件 实验环境: 用户名:shiyanlou 密码:76036575 寻找文件 介绍 有一个非常重 ...

  5. 第一周作业-Linux基础入门

    写在前面 实验楼中linux基础入门的内容很多,几乎涵盖了所有的常用命令.命令的记忆不是一朝一夕的,更不能死记硬背,在实践中多操作,熟悉后自然就记住了.我没有将对每个命令操作结果都截图记录下来(事实上 ...

  6. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  7. Linux 基础入门(新版)”实验报告一~十二

    实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...

  8. Linux基础入门教程

    Linux基础入门教程 --------- Linux学习路径 Linux学习者,常常不知道自己改怎么学习linux:Linux初级,也就是入门linux前提是需要有一些计算机硬件相关的知识或是有一下 ...

  9. Linux基础入门 - 3

    第四节 Linux 目录结构及文件基本操作 4-1.Linux目录结构 Linux 的目录与 Windows 的目录的实现机制是完全不同的.一种不同是体现在目录与存储介质(磁盘,内存,DVD 等)的关 ...

随机推荐

  1. POJ 3070 矩阵mob

    . 矩阵高速幂想法与快速幂相同 #include<iostream> #include<cstdio> #include<cstring> #define MOD ...

  2. assembly打包插件引发的自定义spring标签找不到声明的错误

    异常信息:通配符的匹配很全面, 但无法找到元素 的声明. 报的异常信息是关于我们使用的一个自定义的spring标签,这个异常通常的原因可能是读取不到自定义标签的映射. 到META-INF目录下找一下是 ...

  3. 测试CPU核心个数

    //测试CPU核心个数 #if !defined (_WIN32) && !defined (_WIN64) #define LINUX #include <unistd.h&g ...

  4. 英语发音规则---ea字母组合发音规律

    英语发音规则---ea字母组合发音规律 一.总结 一句话总结:字母组合ea的发音规律,在学习字母组合在单词中的发音规律以前,一定要熟练撑握什么是开音节,什么是闭音节,否则你就不撑握这些发音规律. ea ...

  5. C++(八)— 死锁原因及解决方法

    1.死锁原因 死锁问题被认为是线程/进程间切换消耗系统性能的一种极端情况.在死锁时,线程/进程间相互等待资源,而又不释放自身的资源,导致无穷无尽的等待,其结果是任务永远无法执行完成. 打个比方,假设有 ...

  6. BAT系列(一)— CNN

    1.CNN最成功的应用是在CV 那为什么NLP和Speech的很多问题也可以用CNN解出来?为什么AlphaGo里也用了CNN?这几个不相关的问题的相似性在哪里?CNN通过什么手段抓住了这个共性? 以 ...

  7. Hibernate映射--基本类映射和对象关系映射(转)

    原文地址:http://blog.csdn.net/lovesummerforever/article/details/20901011   尊重原创,请访问原网址 回想一些我们在没有学习ssh的时候 ...

  8. C# Winform 基于Task的异步与延时执行

    一.Task的机制   Task位于命名空间System.Threading.Tasks中,是.NET 4.0加入的新模块,其实现机制大致类似于线程池ThreadPool,不过对于ThreadPool ...

  9. 重拾安卓_01_安卓开发环境搭建(android studio)

    一.下载安装SDK 参考:搭建Android开发环境——Eclipse  的安装SDK部分 二.安装android studio 参考: Android Studio 入门级教程(一) 三.andro ...

  10. Oracle学习笔记_03_单行函数

    1.SQL函数: 单行函数.多行函数 单行函数:       操作数据对象       接受参数返回一个结果       只对一行进行变换       每行返回一个结果       可以转换数据类型  ...