Linux基础(一)

第一部分:计算机

1,计算机硬件的五大单元:

(1)输入单元:包括键盘,鼠标,扫描仪,手写板等。

(2)中央处理器(CPU):含有算术逻辑,控制,记忆等单元。

(3)输出单元:显示器,打印机。

2,计算机的处理过程:

接收用户输入的指令与数据,经过中央处理器的数据与逻辑单元运算处理后,以产生或存储成有用的信息。

第二部分:环境变量的概念和功能

1,环境变量的概念:

Linux是多用户的操作系统。多用户意味着每个用户登录之后都有专门的运行环境,而这个环境是由一组变量定义的,所以称为环境变量。用户可以对自己的环境变量进行修改以达到对环境的要求。

2,环境变量的功能:

环境变量可以帮我们达到很多功能,包括主文件夹的变换,提示符显示,执行文件查找的路径等。环境变量是和Shell紧密相关的,它可以通过Shell命令来设置。环境变量又可以被所有当前用户运行的程序所使用。对于bash来说,可以通过变量名来访问相应的环境变量。

3,常见的环境变量:

在shell环境中,有多少环境变量呢?我们可以通过env和export这两个命令来查询。

例如,用env来查询所有的环境变量:

HOME:代表用户的主文件夹。用cd~或者cd命令就可以回到用户的主文件夹了。

SHELL:告知我们目前这个环境使用的shell是哪个程序。Liunx默认使用的是/bin/bash。

HISTSIZE:与历史命令有关,也就是说我们曾经执行过的命令会被系统记录下来,而记录的条数就是用这个变量来设置的。

MAIL:指当前用户的邮件存放目录,当我们使用mail这个命令在收信时系统会去读取的邮件信箱文件。

PATH:指定命令的搜索路径,也就是执行文件查找的路径,目录与目录之间用冒号分隔,由于文件的查找是依序由PATH的变量内的目录来查询的,所以目录的顺序也很重要。

LANG:和语言相关的环境变量,使用多种语言的用户可以修改此环境变量。

HOSTNAME:指主机的名称,许多应用程序如果要用到主机名的话,通常是从这个环境变量中来取得的。

PS1:命令基本提示符,对于root用户是#,对于普通用户是$。

PS2:附属提示符,默认是“>”。

RANDOM:“随机数”变量,目前大多数的distributions都会有随机数生成器,那就是/dev/random这个文件。我们可以通过这个随机数文件相关的变量($RANDOM)来随机取得随机数。在BASH环境下,RANDOM变量的内容介于0—32767之间。所以只要echo $RANDOM时,系统就会主动随机取出一个介于0—32767的数值。万一想要使用0—9之间的数值,利用declare声明数值类型就可以像下面一样:

Linux环境变量名,Linux 共享库环境变量,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。(该路径在默认路径之前查找)

移植程序时的经常碰到需要使用一些特定的动态库,而这些编译好的动态库放在我们自己建立的目录里,这时可以将这些目录设置到LD_LIBRARY_PATH中。

4,修改和查看环境变量的命令:

echo:显示某个环境变量值 echo $PATH

export:自定义变量转成环境变量。设置一个新的环境变量export HELLO="hello" (可以无引号)

env:显示所有环境变量

set:显示本地定义的shell变量(所有变量,包括环境变量和自定义变量)

unset:清除环境变量 unset HELLO

readonly:设置只读环境变量 readonly HELLO

5,其他变量:

$:它本身也是个变量,代表目前这个shell的线程代号。就是PID(Process ID)。用echo $$命令,出现的数字就是你的PID号码。

?:关于上个执行命令的回传码,在bash里,这个命令很重要,这个变量是上一个执行命令所回传的值。当我们执行某个命令时,这些命令都会回传一个执行后的代码。一般来说,如果执行成功,会回传一个0,执行过程发生错误时会回传“错误代码”。一般用非0值代替。

第三部分:Linux文件类型

1,普通文件(regular file)第一个字符为[ - ]

①纯文本档(ASCII):这是Linux系统中最多的一种文件类型,称为纯文本档。是因为内容为我们人类可以直接读到的数据,例如数字、字母等等。

②二进制文件(binary):你的Linux中的可执行文件(scripts, 文字型批处理文件不算)就是这种格式的。

③数据格式文件(data):有些程序在运作的过程当中会读取某些特定格式的档案,那些特定格式的档案可以被称为数据文件 (datafile)。一般用cat看到的都是乱码。

2,目录(directory):第一个字符为[ d ]

3,连接文件(link)第一个字符为[ l ]

4,设备和设备文件:

①块设备文件,即一些存储文件,如硬盘、软盘等,第一个字符为[ b ]

②字符设备文件,即一些串行端口的接口文件,如键盘、鼠标等,第一个字符为[ c ]

5,套接字(sockets)第一个字符为[ s ]

还被称为数据接口文件,这种类型的文件通常被用在网络上的数据连接。我们可以启动一个程序来监听客户端的请求,而客户端就可以通过数据接口文件来进行数据通信。

6,管道(FIFO,pipe)第一个字符为[ p ]

FIFO也是一种特殊的文件类型,他主要的目的解决多个程序同时访问一个文件所造成的错误问题,first-in-first-out。

主:在Linux里,一切皆文件!

第四部分:Linux文件权限管理:

1,文件访问者的分类:

文件所有者(user):Liunx是一个多用户,多系统的系统,user就是为考虑保护隐私权和每个人喜欢的工作环境而存在的。当你不希望别的用户看见你文件的内容时,就把该文件设置成只有文件所有者才能查看和修改这个文件的内容。

用户组(group):用户组最有用的功能之一就是在团队开发资源的时候,所有用户有共享的资源,又有各自独立的资源。Linux中所有组名都记录在/etc/group中。

其他人(others):只有通过系统中某个用户组或者文件所有者的允许才能进入访问。

2,文件访问权限的种类:

(1)基本权限:

读(r/4):Read对文件来说,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。

写(w/2):Write对文件来说,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限。

执行(x/1):execute对文件来说,具有执行文件的权限;对目录来说,具有进入目录的权限。

“—”:表示不具有该项权限。

(2)特殊权限:

suid (s/4)只能应用在可执行文件上,允许任意用户在执行文件时以文件拥有者的身份执行。

sgid (s/2)只能应用在可执行文件上,使任意用户在执行可执行文件时,将以拥有组成员的身份执行。

粘着位 (t/1)只能应用在目录文件上,将使用户在目录中执行删除时,只能删除自己拥有的对象。

3,登录Linux系统可以用两种身份:

普通用户(自己):从普通用户切换到root用户用命令su,再输入个人密码就切换成功了。

超级用户(root):root可是万能的天神,他可以到达任何想去的地方,使用一定要小心。root的相关信息都记录在/etc/passwd这个文件夹里。个人密码记录在/etc/shadow文件夹里。

第五部分:Linux扩展名:

严格来说,在Linux中没有文件扩展名,一个文件能否被执行只与‘x‘有关,当权限中有x时,代表这个文件可以被执行,但不一定能执行成功。

我们利用Linux扩展名来来了解这个文件。

.sh : 脚本或者批处理文件(scripts)

.Z .tar .tar.gz .zip .tgz :经过打包的压缩文件。

.html .php :网页相关文件。

时间: 2025-01-05 11:10:58

Linux基础(一)的相关文章

Linux基础命令(之一)详解

Linux基础命令(之一)详解 学习linux的朋友都知道,系统大多数操作都是命令行的操作方式,当然如今也有图形化界面的操作方式,但是多数情况下仍然使用命令的操作模式,所以命令的作用与用法是成为学好.学会Linux系统的必备前提,也是重点之一,所以今天来聊一聊一些基础命令的用法与其作用. 1.系统关机或重启命令(小白也必须要会的) shutdown (win 系统也有) 常用参数:shutdown -h (halt) 直接关机(关闭电源) shutdown -h  now[+10]    现在关

linux基础命令——tree

Linux基础命令--tree 编辑文章 -d :只显示目录,不显示其目录下的子文件 -L level:显示第几级 图片描述 显示以rc开头的 备份: 创建多级目录: -v:可以看过程

Linux基础之磁盘管理

 Linux基础之磁盘管理         关于Linux中磁盘管理我们应该从以下四个方面入手,去了解和学习磁盘管理的知识. 第一点 磁盘的结构--硬盘         硬盘的参数 结构:磁盘的盘片,磁头,马达(机械键盘) 类型:固态硬盘(SSB)和机械硬盘 接口:早期的IDE接口,现在的SATA,SCSI,SAS 还有容量,转速,传输速度,缓存等. 硬盘存储术语 head: 磁头 track: 磁道 cylinder: 柱面 secotr: 扇区  512bytes(字节) 第二点 磁盘的分区

Linux 基础入门----推荐课程

Linux 基础入门课程:https://www.shiyanlou.com/courses/1 很好的一门Linux基础课,精炼.简洁!推荐! 课程内容: 第1节 Linux 系统简介 https://www.shiyanlou.com/courses/1/labs/1/document 第2节 基本概念及操作 https://www.shiyanlou.com/courses/1/labs/2/document 第3节 用户及文件权限管理 https://www.shiyanlou.com/

1、linux基础知识

第一天linux基础知识 1:linux操作系统组成 linux内核+GNU工具=完整的类UNIX系统 GNU工具(GNU软件是通过GNU项目发布的软件,它是一种根据GNU软件包的README手册以及自由软件指南开发的软件,大多数GNU软件是免费分发的,但不是所有的都这样,然而,所有的GNU软件必须是自由软件.) 2:linux发行版  slackware debian  reehad  Gentoo等 3:linux哲学思想 一切皆文件(硬件也已文件的形式展现在操作系统中) 小型,单一用途程序

Linux基础知识题解答(五)

题目来自老男孩BLOG:http://oldboy.blog.51cto.com/2561410/1709569,比较适合新手,空余的时候做一下,可以巩固Linux基础知识,有不对的地方欢迎指正. (1)155729 -rw-r--r--.  1 root root   35 Oct 28 2011  oldboy 请解析上面的每一列内容 文件inode号,文件访问权限,硬链接数,文件所属用户,文件所属组,文件最后修改时间,文件名 (2)描述下硬链接和软连接的区别 1.硬链接原文件/链接文件共用

第九天:Linux基础命令(二)与 C编译过程

一:Linux基础命令:   1.find 命令 查找文件 如 find / -name hello    查找根目录下已hello命名的文件.   2.grep命令 字符串匹配 如 grep "lucy" * -R 递归查找文件中含有“lucy”字符串的文件   3.du命令 查看文件所占容量   4 . >   重定向 如 ls > savels     重定向ls的标准输出从屏幕到savels文件 5 . >>    附加 如 ls >> sa

Linux基础文本查看命令之 cat,tac,more,less,head,tail

在使用linux的过程中多多少少都会涉及到文本的操作,因此掌握一些文本操作的工具命令能大大的提高我们的工作效率. cat命令 cat命令的用途是链接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者是从标准输入读取内容并显示,它常与重定向符号配合使用. 1)命令格式 cat    [选项]    [FILENAME] 2)命令功能 将文件或标准输入组合输出到标准输出. 3)命令参数 -E:在每行结束处显示 $ -n:对输出的所有行编号 -s:不输出多行空行 4)常

Linux基础概念-----环境变量

Shell 环境变量 Shell也是应用程序,工作与用户模式 变量类型 整形 浮点型 字符型 布尔型 bash变量类型 本地变量:仅对当前Shell有效 局部变量:仅对局部代码段有效(函数) 环境变量:expor VAR_NAME=Value,对当前Shell及子Shell有效 位置变量:$1;$2 .... 特殊变量:$?;$!;$$ .... 查看环境变量 printenv export 查看所有变量 set bash的引号 双引号:弱引用,可以实现变量替换: 单引号:强引用,不替换,而显示

Linux基础概念-----Linux I/O重定向 ,管道

标准输入:键盘 标准输出:显示器 错误输出:显示器 FD:文件描述符:让程序可以文件交互,并且便于内核识别文件,打开的每一个文件都有一个描述符 程序在和文件交互式,通过文件描述符来进行交互,而非文件名,文件名是方便用户分别文件. Linux一切皆文件,所以标准输入,标准输出都有各自的文件描述符 标准输入描述符:0 标准输出描述符:1 标准错误输出描述符:2 将其默认数据流改为其他设备:IO重定向 输出重定向 > 覆盖重定向 >> 追加重定向 /dev/null  黑洞 只针对当前Shel