Linux操作系统入门-程序员宅基地

技术标签: 运维  linux  服务器  操作系统实训  

目录

第1关:Linux初体验

任务描述

相关知识

Linux目录结构介绍

Linux用户介绍

Linux 常用命令介绍

pwd命令

cd命令

ls命令

编程要求

答案:

 第2关:Linux常用命令

任务描述

相关知识

Linux文件操作

创建文件

删除文件

Linux文件夹操作

创建文件夹

删除文件夹

Linux文件和文件夹拷贝

Linux文件和文件夹移动/重命名

编程要求

答案: 

 第3关:Linux 查询命令帮助语句

任务描述

相关知识

Linux man命令

Linux info命令

Linux whatis命令

编程要求

答案:

 


第1关:Linux初体验

任务描述

欢迎进行Linux世界,当你下载、安装了某个Linux发行版(笔者喜欢使用Ubuntu),体验了Linux桌面并安装了一些你喜爱和需要的软件之后,应该去了解下Linux真正的魅力所在:命令行。每一个Linux命令其实就是一个程序,借助这些命令,我们可以办到非常多的事情。

你的第一个任务就是切换当前工作目录为根目录/,列出根目录下所有的文件信息。 

相关知识
Linux目录结构介绍

Linux文件系统目录结构的了解是学习和掌握Linux系统的基础。Linux 文件系统是树形层次结

Linux用户介绍

Linux用户通常分为两类:

管理员用户(root);

普通用户(类似Windows上的普通用户)。

Linux登录系统后,默认当前所在目录为用户主目录,类似Windows登录系统后,默认的所在目录为桌面。

管理员(root)登录系统后默认目录为/root

普通用户登录系统后默认目录为/home/usernameusername为用户名。 例如:笔者用普通用户fzm登录系统后,那么当前所在目录为。/home/fzm

Linux 常用命令介绍
pwd命令

pwd(Print Working Directory ):显示当前所在目录。

例如:笔者用普通用户fzm登录系统后,那么当前所在目录为/home/fzm

cd命令

cd(Change Directory): 切换当前目录。

常用特殊目录表示:

cd 进入用户主目录;

cd ~ 进入用户主目录;

cd - 返回进入此目录之前所在的目录;

cd .. 返回上级目录(若当前目录为"/",则执行完后还在"/";".."为上级目录的意思);

cd ../.. 返回上两级目录;

cd !$ 把上个命令的参数作为cd参数使用。
ls命令

ls(list): 列出指定目录列表信息,如果没有参数默认列出当前目录下的所有文件和文件夹(隐藏文件和文件夹除外)。

常见ls命令选项:

-l:以长格式显示目录下的内容列表。输出的信息从左到右依次包括文件名,文件类型、权限模式、硬连接数、所有者、组、文件大小和文件的最后修改时间等;

-a:显示所有文件和文件夹(包括隐藏文件/文件夹)。
编程要求

根据右侧窗口命令行内的提示,在Begin - End区域内进行命令行语句补充,具体任务如下:

切换当前目录到根目录;

列出根目录下所有文件和文件夹(包括隐藏文件/文件夹)。

答案:
#!/bin/bash

#在以下部分写出完成任务的命令
#*********begin*********#
cd /    #进入根目录#
ls -a    #列出根目录下所有文件和文件夹(包括隐藏文件/文件夹)#
#********* end *********#

 第2关:Linux常用命令

任务描述

恭喜你已经通过了第一关的实训,现在你掌握了pwdcdls命令的基本使用方法。接下来你应该学会关于文件和文件夹的常用操作。

本关你的任务是创建一个文件和一个文件夹,并且将新创建的文件拷贝到新建的文件夹下并重新命名。

相关知识

为了掌握本关知识,你需要掌握:

Linux文件操作之创建文件,删除文件;

Linux文件夹操作之创建文件夹、删除文件夹、文件和文件夹拷贝、移动/重命名。

Linux文件操作

Linux系统中最常用的文件操作有创建、删除文件等。

创建文件

linux中创建文件的常用命令是touch,命令格式如下:

touch filename

有时可能需要创建一个空的文件的情况。在这种情况下,可以使用touch命令来轻松创建一个空文件。

touch testfile

如果想同时创建多个文件也可以使用touch命令完成,具体格式如下:

touch file1 file2 ...

只需将不同的文件名用空格分隔即可完成创建多个文件。

删除文件

Linux中常用的删除文件的命令是rm,使用格式如下:

rm [命令选项] filename

常用命令选项:

 -f:强制删除文件或目录;
 -r或-R:递归处理,将指定目录下的所有文件与子目录一并处理;
 -i:删除已有文件或目录之前先询问用户。

例如,删除我们刚刚创建的文件testfile可以使用如下命令

rm -f testfile

Linux文件夹操作

Linux中关于文件夹的操作主要包括创建和删除等。

创建文件夹

Linux中创建文件夹命令是mkdir,命令格式如下:

mkdir [命令选项] dirname

常用命令选项: -p或--parents 若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录;

例如:我们新创建一个文件夹testdir可以使用如下命令。

mkdir testdir

因为新创建的文件夹是一个空的文件夹,所以使用ls -l显示的结果是空。

删除文件夹

Linux中删除文件夹的命令是rmdir或者rm -r,命令格式如下:

rmdir [命令选项] dirname

常用命令选项:-p或--parents:删除指定目录后,若该目录的上层目录已变成空目录,则将其一并删除;

例如:将刚刚新创建的文件夹testdir删除可以使用如下命令。

rmdir testdir

Linux文件和文件夹拷贝

Linux使用cp命令用来将一个或多个源文件或者目录复制到指定的目录中,命令格式如下:

cp [命令选项] 源文件 目的文件

常用命令选项:
 

-f:强行复制文件或目录,不论目标文件或目录是否已存在;
-i:覆盖既有文件之前先询问用户;
-p:保留源文件或目录的属性;
-R/r:递归处理,将指定目录下的所有文件与子目录一并处理。

例如:新建一个文件newfile和一个文件夹newdir,将newfile复制到newdir目录下。具体命令如下。

touch newfile
mkdir newdir
cp newfile newdir
Linux文件和文件夹移动/重命名

Linux使用mv命令用来对文件或目录重新命名,或者将文件从一个目录移到另一个目录中,命令格式如下:

mv [命令选项] 源文件 目标文件

常用命令选项:

-f:强行复制文件或目录,不论目标文件或目录是否已存在; 
-i:覆盖既有文件之前先询问用户;
-p:保留源文件或目录的属性;
-R/r:递归处理,将指定目录下的所有文件与子目录一并处理'。

例如:新建一个文件newfile和一个文件夹newdir,将newfile剪切到newdir目录下,并重新命名为newfileCpy。具体命令如下。

touch newfile
mkdir newdir
mv newfile newdir/newfileCpy
编程要求

根据右侧窗口命令行内的提示,在Begin - End区域内进行代码补充,具体任务如下:

在当前目录下新建一个新的文件(名称为newfile);

在当前目录下新建一个新的文件夹(名称为newdir);

newfile文件复制一份到newdir目录下并命名为newfileCpy

答案: 
#!/bin/bash

#在以下部分写出完成任务的命令
#*********begin*********#
touch newfile    #创建newfile文件#
mkdir newdir    #创建newdir文件夹#
cp newfile newdir/newfileCpy    #将newfile文件复制一份到newdir目录下并命名为newfileCpy#
#********* end *********#

 第3关:Linux 查询命令帮助语句

任务描述

恭喜你已经通过了第二关的实训,现在你掌握了Linux常用命令的基本使用方法,Linux中有上千个命令,背命令这条路是相当的坎坷;如果不背的话,那咱们就查命令呗。这时候就要祭奠出命令神器 maninfo

本关你的任务是学会离线在Linux系统上查询命令的使用方法。

相关知识
Linux man命令

linux中使用man命令来查询命令的帮助文件,命令格式如下:

man [章节] command

常用命令如下:

d, Ctrl+D: 向文件尾部翻半屏;
u, Ctrl+U: 向文件首部翻半屏; 
q: 退出; 
#:跳转至第#行; 
1G: 回到文件首部; 
G:翻至文件尾部。

命令的帮助文件通常存放在/usr/share/man目录下。

man包含9个章节,章节用数字表示,分别是:

1.用户命令 
2.系统调用 
3.C库调用
4.设备文件及特殊文件 
5.配置文件格式 
6.游戏
7.杂项 
8.管理类的命令
9.Linux 内核API

如果查询命令的时候不追加章节,则默认从第一个章节开始查询,以此类推,直到找到对应要查询的命令为止。

例如:使用man命令查询open命令的使用方法。

man open

如果想查询系统库函数的open函数的使用方法,则使用如下命令:

man 2 open

使用man搜索命令

/KEYWORD:

KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索,不区分字符大小写;
 

n: 下一个 
N:上一个

?KEYWORD:

KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索,不区分字符大小写;

n: 跟搜索命令同方向,下一个 
N:跟搜索命令反方向,上一个 
Linux info命令

linux中使用info命令来查询命令的帮助文件。info页面比man page编写得要更好、更容易理解,也更友好,但man page使用起来确实要更容易得多。一个man page只有一页,而info页面几乎总是将它们的内容组织成多个区段(称为节点),每个区段也可能包含子区段(称为子节点)。

命令格式如下:

info [命令参数] command

常用命令参数选项:

-d:添加包含info格式帮助文档的目录;
-f:指定要读取的info格式的帮助文档;
-n:指定首先访问的info帮助文件的节点;
-o:输出被选择的节点内容到指定文件。

常见命令如下:

?键:它就会显示info的常用快捷键;
N键:显示(相对于本节点的)下一节点的文档内容;
P键:显示(相对于本节点的)前一节点的文档内容;
U键:进入当前命令所在的主题;
M键:敲M键后输入命令的名称就可以查看该命令的帮助文档了;
G键:敲G键后输入主题名称,进入该主题;
L键:回到上一个访问的页面;
SPACE键:向前滚动一页;
BACKUP或DEL键:向后滚动一页;
Q:退出info。

例如:我们使用info来查询info的帮助手册。

info info

Linux whatis命令

whatis用来显示命令的简短描述。

命令格式如下:

whatis command

例如:我们使用whatis来查询ls的使用方法。

编程要求

根据右侧窗口命令行内的提示,在Begin - End区域内进行代码补充,具体任务如下:

使用man查询C库中的fopen函数使用方法。

答案:
#!/bin/bash

#在以下部分写出完成任务的命令
#*********begin*********#
man 3 fopen    #使用man查询C库中的fopen函数使用方法#
#********* end *********#
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qwertf123/article/details/137378359

智能推荐

Pytroch同一个优化器优化多个模型的参数并且保存优化后的参数_pytorch加载多个模型-程序员宅基地

文章浏览阅读4.5k次,点赞7次,收藏26次。在进行深度学习过程中会遇到几个模型进行串联,这几个模型需要使用同一个优化器,但每个模型的学习率或者动量等其他参数不一样这种情况。一种解决方法是新建一个模型将这几个模型进行串联,另一种解决方法便是往优化器里面传入这几个模型的参数。..._pytorch加载多个模型

计算机软考中级合格标准,中级软考多少分及格-程序员宅基地

文章浏览阅读1.4k次。原标题:中级软考多少分及格盛泰鼎盛 对于第一次报名软考的朋友,可能对于考试合格分数线不太了解,软考分为初、中、高三个级别,那么软考中级多少分及格呢?软考中级合格标准根据往年的软考合格分数线来看,各级别的合格标准基本上统一的。2019年上半年计算机技术与软件专业技术资格(水平)考试各级别各专业各科目合格标准均为45分(总分75分)。而2016下半年计算机技术与软件专业技术资格(水平)考试除了信息系统..._计算机程序设计员中级考试内容及合格标准

爬虫相关-程序员宅基地

文章浏览阅读50次。2019独角兽企业重金招聘Python工程师标准>>> ..._爬虫考虑安全法律因素

ASP.NET Identity 的“多重”身份验证-程序员宅基地

文章浏览阅读263次。本章主要内容有:  ● 实现基于微软账户的第三方身份验证  ● 实现双因子身份验证  ● 验证码机制实现基于微软账户的第三方身份验证  在微软提供的ASP.NET MVC模板代码中,默认添加了微软、Google、twitter以及Facebook的账户登录代码(虽然被注释了),另外针对国内的一些社交账户提供了相应的组件,所有组件都可以通过Nuget包管理器安装:    从..._identity 二次登录

2018年秋季学期课表-程序员宅基地

文章浏览阅读241次。李理论基础I、II课程编码:011D9101Z﹡ 课时:80 学分:4.00 课程属性:其它 主讲教师:聂思安 教学目的要求李群和李代数(Lie group and Lie algebra)是在1874年由挪威数学家SophusLie为研究微分方程的对称性而引进的。后经过E. Cartan 和H. Weyl等人的努力,李的理论已成了微分几何的重要研究工具并发展成完整的代数理论。上世纪..._层的上同调

iOS多线程-03-NSOperation与NSOperationQueue-程序员宅基地

文章浏览阅读33次。简介通过NSOperation与NSOperationQueue的组合也能实现多线程通常将任务封装成NSOperation对象,并将对象添加到NSOperationQueue中实现NSOperationNSOperation是一个抽象类,不能用来直接封装操作,通常使用它的子类来封装操作若不将NSOperation对象添加到NSOperationQueue中,操作只会在当前线程执...

随便推点

数据驱动的产品研发:如何利用数据驱动提高产品安全性-程序员宅基地

文章浏览阅读867次,点赞11次,收藏20次。1.背景介绍在当今的数字时代,数据已经成为企业和组织中最宝贵的资产之一。随着数据的增长和复杂性,数据驱动的决策变得越来越重要。数据驱动的产品研发是一种新兴的方法,它利用数据来优化产品的设计、开发和运营。这种方法可以帮助企业更有效地利用数据,提高产品的安全性和质量。在这篇文章中,我们将探讨数据驱动的产品研发的核心概念、算法原理、实例和未来发展趋势。我们将涉及到以下几个方面:背景介绍核...

基础类的DSP/BIOS API调用_clk_gethtime 返回值-程序员宅基地

文章浏览阅读1.3k次。转载自:http://blog.sina.com.cn/s/blog_48b82df90100bpfj.html基础类的DSP/BIOS API调用一、时钟管理CLK(1)Uns ncounts = CLK_countspms(void) 返回每毫秒的定时器高分辨率时钟的计数值(2)LgUns currtime = CLK_gethtime(void) _clk_gethtime 返回值

Appium环境搭建及“fn must be a function”问题解决-程序员宅基地

文章浏览阅读38次。由于appium在线安装比较困难,大多数应该是由于FQ造成的吧,索性直接下载appium安装包:http://pan.baidu.com/s/1bpfrvjDnodejs下载也很缓慢,现提供nodejs4.4.4下载地址:http://pan.baidu.com/s/1bIsS02环境搭建步骤可以参考:http://www.cnblogs.com/tobecrazy/p/4562199.h..._启动appium fn must be a function

基于单片机的语音存储与回放系统设计-程序员宅基地

文章浏览阅读1.3k次,点赞28次,收藏27次。在人类的历史长河中,语言的作用尤为重要,人们一直在思考一个问题,那就是如何把语言完全不差的记录下来。通过单片机控制语音芯片完成的语音存储与回访系统的电路比较大,而且回涉及到很多的模块电路,比如会涉及到单片机的最小系统、时钟电路、液晶显示模块等等,所以在焊接时要十分注意,涉及到多种模块的这种电路,哪怕只要存在一处的焊接错误,就会导致整个系统的检测无法完成,因为电路中交叉的线路非常多,所以在焊接过程中避免焊接错误和短路现象,如果电路连接错误,将给检测带来极大的不便,并且该电路具有更多的交叉线。_基于单片机的语音存储与回放系统设计

转载《一个射频工程师的职场日记》_射频工程师中年危机-程序员宅基地

文章浏览阅读3.7k次,点赞10次,收藏37次。本文转载自电子发烧友论坛http://bbs.elecfans.com/jishu_1674416_1_1.html转载此文章为了让更多刚毕业或者快要毕业的电子专业的同学,对于自己的未来工作学习能有些帮助,相信很多人快毕业的时候估计和我一样都不太清楚自己未来应该做些什么,读完这篇文章让我获益匪浅。以前大学毕业找工作的时候,就很希望有以前的同专业的师兄姐们写点面经什么的。但等到自己毕业了,从来就没有想过要把自己的求职经历和别人分享一下,给后来人做个参考。人人为我,我为人人。前人栽树后人乘凉。现在正准备跳_射频工程师中年危机

IntelliJ IDEA2020安装教程-程序员宅基地

文章浏览阅读6.8k次,点赞16次,收藏99次。IntelliJ IDEA2020安装教程[软件名称]:IntelliJ IDEA2020[软件语言]:中文 /英文[软件大小]:643.31MB[安装环境]:Win10/Win8/Win7[64位下载链接]:下载地址[提取码]:y3bu软件简介IDEA 全称 IntelliJ IDEA,是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn等)、JUnit、CVS整合、_intellij idea2020安装

推荐文章

热门文章

相关标签