Linux基础知识回顾及BASH学习

时间:2023-12-15 21:33:32

2019-2020-030189224 《网络攻防技术与实践》第一周学习总结

Linux基础知识错题回顾

1.Linux中使用(B)命令新建空白文件。

A .mkdir

B .touch

C ..

D .mkfile

2.Linux中第三方软件应该放入(C)目录?

A ./urs

B ./etc

C ./opt

D ./boot

3.FHS(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准)定义了两层规范,第一层是(B)?

A ./etc 应该放置设置文件

B ./ 下面的各个目录应该要放什么文件数据

C .针对 /usr 及 /var 这两个目录的子目录来定义

D ./bin 与 /sbin 则应该放置可执行文件

E ./var/log 放置系统登录文件

F ./usr/share 放置共享数据

4.下面哪些Linux 命令可以ASCII码和16进制单字节方法输出Hello.java的内容?(BC)

A .od -b -tx1 Hello.java

B .od -tcx1 Hello.java

C .od -tc -tx1 Hello.java

D .od -tbx1 Hello.java

BASH学习

Bash(GNU Bourne-Again Shell)是一个为GNU计划编写的Unix shell,是许多Linux平台默认使用的shell。shell是一个命令解释器,是介于操作系统内核与用户之间的一个绝缘层。准确地说是一种解释性语言或脚本语言。它可以通过将系统调用、公共程序、工具和编译过的二进制程序”粘合“在一起来建立应用,这是大多数脚本语言的共同特征,所以有时候脚本语言又叫做“胶水语言”。事实上,所有的UNIX命令和工具再加上公共程序,对于shell脚本来说,都是可调用的。Shell脚本对于管理系统任务和其它的重复工作的例程来说,不需要编译型程序语言。

# 使用shell来执行
$ sh hello.sh
# 使用bash来执行
$ bash hello.sh
使用.来执行
$ . ./hello.sh
使用source来执行
$ source hello.sh
还可以赋予脚本所有者执行权限,允许该用户执行该脚本
$ chmod u+rx hello.sh
$ ./hello.sh

Linux基础知识回顾及BASH学习

Linux基础知识回顾及BASH学习

遇到问题及解决

  1. 遇到权限不够的提示?

sudo cat /dev/null > /var/log/wtmp 仍会提示权限不够,因为sudo只能让cat命令以sudo的权限执行,而对于>这个符号并没有sudo的权限,可以使用sudo sh -c "cat /dev/null > /var/log/wtmp " 让整个命令都具有sudo的权限执行

2.行首以 # 开头(除#!之外)的是注释。#!是用于指定当前脚本的解释器,在echo中转义的 # 是不能作为注释的:

#!/bin/bash
echo "The # here does not begin a comment."
echo 'The # here does not begin a comment.'
echo The \# here does not begin a comment.
echo The # 这里开始一个注释
echo $(( 2#101011 ))

Linux基础知识回顾及BASH学习

师生关系

  师生关系应该是“教练与学生”的关系,以“学生为主体,老师为主导”,我对这个观点非常认同。已经经历过中学教育和大学教育的我们已经具有了一定的学习能力,但是因为知识有限,所以对所学内容的方向性并没有很好的判断,在老师的帮助下学生就可以更好的找到方向。但是学习这个主体任务还是要由学生个体来完成,要多做多问,老师起到引导和定期监督的推动作用。通过上一学期的学习,我对这种学习方式更加认同,每节课上通过练习老师布置的目标,虽然有时没有很好完成但是每节课收获都很丰富。在自己动手练习时遇到很多问题,通过查阅资料和向老师同学提问学到了额外的知识。在这一学期里,我希望能够更加适应这种学习方法,提高自己的动手能力和学习能力。