当前位置: 首页 > news >正文

linux学习总结

shell

1.在文本环境下,shell作为命令解释器,建立了用户和操作系统之间的接口。当用户键入一个命令时,shell将对该命令进行解释,并调用相应的程序。2.Linux下有多个shell,最常用的3个shell: bash   tcsh   zsh3.shell 脚本:shell除了具有解释键盘命令并将其发送到操作系统的功能外,shell命令可以安排在一个文件中供以后执行,这些文件在linux系统称为shell脚本。

4.进程间的通信

4.1 管道和过滤器管道:将一个程序的输出作为另一个程序的输入。过滤器:作为管道的一种特殊的形式,对输入数据流进行处理得到输出数据流。过滤器可以对程序的输出进行修改,过滤器的输出可以作为另一个程序的输入。

5.主分区、扩展分区、逻辑分区

5.1 一个磁盘至多可以有4个主分区,每个主分区还可以划分多个逻辑分区,把被划分的主分区称为扩展分区。
5.2 典型的分区是将磁盘划分为3个主分区和1个扩展分区,3个主分区的大小即你所希望的最终分区的大小,1个扩展分区占用剩余的磁盘空间。

6.磁盘分区

向导分区:直接将硬盘划分为两个分区:交换分区,此分区的 大小是512MB或2GB等和/(根)分区,此分区占用硬盘的剩余空间。
分区建议:必须有一个/根分区,建议再设置一个交换分区。可以创建额外的分区/挂载点组合,对任何没有创建专门的分区/挂载点的标准目录,会自动成为根目录/的子目录,并位于根/分区下。
swap:当linux没有足够的内存保存它正在处理的所有信息时,linux就会将程序和数据临时存放在交换分区上。
/boot:此分区存放内核和系统启动时所需的其他数据。建议将/boot分区的大小设置为100MB
/var:存放大量的系统日志、软件包信息、记账数据,最好将其作为一个独立的分区。
/home: 将用户的主目录存放在单独的磁盘或分区中

7.基本实用工具

ls: 列出文件名   ls  文件名
cat:显示文本文件内容  cat 文件名     
rm:删除文件(确保要删除的文件是自己想要删除的文件)
(推荐此写法)比较安全的文件删除方式:rm -i 文件名
less/more: 分屏显示文本文件    less/more   文件名(当要浏览的文件内容超过一屏时)
man:  显示系统手册   man  5  passwd   查看第5页
info: 显示实用工具的相关信息     如:info  coreutils
选项 --help: 显示帮助信息
hostname: 显示系统名

8.文件操作

cp:复制文件    cp  源文件   目标文件
当目标文件已经存在时,cp指令可能会覆盖文件,推荐写法:  cp -i 源文件  目标文件mv:重命名文件名   mv  原有的文件名   新的文件名lpr:打印文件            lpr 文件名grep:查找字符串     grep   '要查找的字符串'   目标文件名head:  显示文件的头部      head  -1  目标文件名tail:  显示文件的尾部      tail  -3 目标文件名   sort: 按顺序显示文件内容  sort  文件名uniq:删除文件中重复的行, 对那些连续的重复行只显示一行,但原内容没有变化diff: 比较两个文件,显示两个文件的不同之处   diff  -u  文件1  文件2file: 在不通过打开文件情况下,测试文件内容 

9.管道| 实现进程间的通信

管道将一个进程的标准输出重定向为另一个进程的标准输入。
进程显示的内容一般都要发送到标准输出,如果没有重定向,
此输出就会显示在屏幕上。 ls  |  wc  -w  显示某个文件目录下的文件个数

10. 4个有用的实用工具

echo:  显示文本,可以复制其后跟的任何内容,并显示在屏幕上。
echo   hello world
echo   this is a sentence
echo   star:  *   注:显示目录下的所有文件列表

11. date: 显示日期和时间

date
date  +"%A  %B  %d"

12.unix2dos:

将linux文件转为windows格式
unix2dos  文件名

13.压缩和归档文件

1.bzip2:压缩文件bzip2 -v 文件名
2.bunzip2解压文件bunzip2  文件名
3. bzcat  xxxxx.bz2  专门显示以.bz2为扩展名的压缩文件#####1.tar打包归档文件tar可以将多个文件或多个目录归档成一个tar文件
将src.txt   src_rename.txt文件进行归档,成为一个文件all.tar
用法:tar  -cvf  all.tar  src.txt  src_rename.txt
查看归档文件信息: ls  -l  all.tar
以表格的形式显示归档文件中的2个文件: tar  -tvf  all.tar
解压归档文件:tar  -xvf  all.tar

14.定位命令

1.定位实用工具which  whereis----------
只能报告在磁盘上搜索到的命令,不能搜索shell中的内置命令信息。例如:which  tar(显示实用工具的完整路径来定位该实用工具)    例如:whereis  tar(搜索与实用工具相关的文件)
2.判断一个命令是否是内置命令type   命令名
3.apropos:搜索关键字例如: apropos  who    等价于  man  -k  whowhatis  who: 仅搜索与关键字完全匹配的信息

15.获取用户信息和系统信息

who:列出系统上的用户   who    who  -u
finger:  列出系统上的用户   finger      finger  cdl
w: 列出系统上的用户    w

16.linux文件系统

1.以句点.开头的文件名叫做隐藏文件名: ls  -a可以显示所有文件
2.当前目录/工作目录:在某个目录下进行操作的目录,pwd可以显示当前的工作目录路径,工作目录随时变化
3.主目录: pwd   可以显示/home/cdl,主目录不会变化。4.路径名4.1 绝对路径名:均以/开头,/是根目录的文件名,从根目录开始,经过所有中间目录到达一个文件,通过这个路径,就能建立这个文件的绝对路径。如/home/cdl/linux_tutorials/src4.2 路径名中的代字符~shell将代字符后跟/,放置在路径名的开始,表示主目录的路径名。代字符可以快速引用以任何用户的主目录开头的路径。4.3 相对路径名:从工作目录到文件的路径名,该路径名是相对于工作目录的。不以/或者~开始的路径名都是相对路径名。5.目录命令5.1 mkdir:创建目录mkdir  文件目录1mkdir  -p  文件目录1  文件目录2  在文件目录1下创建文件目录25.2 目录项 . 和 ...代表工作目录的路径名,..代表工作目录的父目录路径名ls  ..   			cp  src.txt  ..
6.目录操作6.1 rmdir:删除空的目录 rmdir ~/linux_tutorials/srcrm  -r  文件名  递归的删除目录下的所有文件(谨慎使用)6.2 使用路径名touch  hicd ~/linux_tutorials/cp  hi  ~/linux_tutorials/src/hi_new   将hi文件复制到src目录下,并重命名为hi_new	6.3  mv/cp:移动和复制文件mv:可以移动文件和重命名文件的名字mv  ~/linux_tutorials/src/hi_new  ~/linux_tutorials/6.4 访问权限访问文件的用户有3种类型:文件所有者owner、文件所有者所在组的成员用户group、其他用户otherls  -l:显示访问权限,如: ls  -l  src.txt-rwxrw-r-x+  3  cdl  dana    2048  Aug 12  14:19  src.txt(各项解释如下)- :文件类型(-代表普通文件,d代表目录文件,l表示链接文件)rwxrw-r-x: 这9个字符为文件的(文件所有者、组成员用户、其他用户)访问权限(r代表可读,w代表可写,x:代表可执行,如果出现-则代表文件所有者在那个位置没有相对应的权限)3:指向该文件的链接数量cdl: 文件所有者的名字dana: 对文件具有组访问权限的组的名称2048:文件的大小Aug 12  14:19 :文件创建或最后一次修改时间src.txt: 文件名称chmod: 改变访问权限给所有的用户都增加读写权限 : chmod a+rw  src.txt给其他用户都删除读写权限 : chmod o-rw  src.txtps: a代表所有用户,u代表文件所有者,g代表组用户,o代表其他用户owner = rwx = 4+2+1 = 7  group = rwx = 4+2+1 = 7  others= --- = 0+0+0 = 0改变访问权限   chmod  777  src.txt对shell脚本文件赋予可执行权限的前提是要有读权限目录的访问权限查看src目录的访问权限:  ls  -ld    ~/llinux_tutorials/src6.5 链接链接表示执行文件的指针,当使用vim、touch、cp或其他方式创建文件时,对应目录下便会产生一个指向该文件的指针。此指针将文件名和磁盘的某个位置建立关联,文件指针指向存放此文件的磁盘位置。linux中的硬链接与软链接在linux系统中有种文件是链接文件,可以为解决文件的共享使用。链接的方式可以分为两种,一种是硬链接(Hard Link),另一种是软链接或者也称为符号链接(Symbolic Link)。硬链接: 硬链接是指通过索引节点来进行链接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都会给它分配一个编号,这个编号被称为索引节点编号号(Inode Index)或者Inode,它是文件或者目录在一个文件系统中的唯一标识,文件的实际数据放置在数据区域(data block),它存储着文件重要参数信息,也就是元数据 (metadata),比如创建时间、修改时间、文件大小、属主、归属的用户组、读写权限、数据所在block号等 。在Linux系统中,多个文件名指向同一索引节点(Inode)是正常且允许的。一般这种链接就称为硬链接。硬链接的作用之一是允许一个文件拥有多个有效路径名,这样用户就可以建立硬链接到重要的文件,以防止“误删”源数据(很多硬件,如netapp存储中的快照功能就应用了这个原理,增加一个快照就多了一个硬链接》。不过硬链接只能在同一文件系统中的文件之间进行链接,不能对目录进行创建。之所以文件建立了硬链接就会防止数据误删,是因为文件系统的原理是,只要文件的索引节点还有一个以上的链接(仅删除了该文件的指向),只删除其中一个链接并不影响索引节点本身和其他的链接(数据的实体并未删除),只有当最后一个链接被删除后,此时如果有新数据要存储到磁盘上,被删除的文件的数据块及目录的链接才会被释放,空间被新数据暂用覆盖。软链接: 软链接(也叫符号链接),类似于windows系统中的快捷方式,与硬链接不同,软链接就是一个普通文件,只是数据块内容有点特殊,文件用户数据块中存放的内容是另一文件的路径名的指向,通过这个方式可以快速定位到软连接所指向的源文件实体。软链接可对文件或目录创建。软链接作用:便于文件的管理,比如把一个复杂路径下的文件链接到一个简单路径下方便用户访问。节省空间解决空间不足问题,某个文件文件系统空间已经用完了,但是现在必须在该文件系统下创建一个新的目录并存储大量的文件,那么可以把另一个剩余空间较多的文件系统中的目录链接到该文件系统中。删除软链接并不影响被指向的文件,但若被指向的原文件被删除,则相关软连接就变成了死链接。软连接和硬链接的特点:软链接:1.软链接是存放另一个文件的路径的形式存在。2.软链接可以 跨文件系统 ,硬链接不可以。3.软链接可以对一个不存在的文件名进行链接,硬链接必须要有源文件。4.软链接可以对目录进行链接。硬链接:1. 硬链接,以文件副本的形式存在。但不占用实际空间。2. 不允许给目录创建硬链接。3. 硬链接只有在同一个文件系统中才能创建。4. 删除其中一个硬链接文件并不影响其他有相同 inode 号的文件。创建硬链接ln:cd  linux_tutorials/srctouch  fileAln   fileA  fileA_hard_link       在默认不带参数情况下,ln命令创建的是硬链接。ls  -l创建软链接:ln  -s  fileA  fileA_soft_link   创建软链接用s参数 符号ls  -l硬链接有着相同 inode 号仅文件名不同的文件,用ls  -li命令查看8835 -rw-rw-r-- 2 cdl cdl     0 10月 31 16:41 fileA8835 -rw-rw-r-- 2 cdl cdl     0 10月 31 16:41 fileA_hard_link8836 lrwxrwxrwx 1 cdl cdl     5 10月 31 16:47 fileA_soft_link -> fileA上面源文件和硬链接文件inode号相同 (第一列就是inode号),指向同一个索引节点。软链接是一个链接文件,文件模式那块前面有个l字母,表示是个链接文件。硬链接不能指向目录,但是软链接可以cd ~/linux_tutorials/ln  src  fileA      不允许将硬链接指向目录srcln  -s  src fileA  允许将软链接指向目录src删除源文件后,两种情况对比echo  'this is a file'  >  fileA     向文件中写入数据cat  fileA    查看文件内容cat fileA_soft_link  fileA_hard_link    查看软链接和硬链接文件内容一致rm  -f  fileA  删除源文件ls   -li8831 -rw-rw-r-- 1 cdl cdl    22 10月 29 15:49 src_rename.txt8830 -rw-rw-r-- 1 cdl cdl 10240 10月 30 14:54 src.txt8829 -rw-rw-r-- 1 cdl cdl 20480 10月 30 14:56 all.tar8833 -rwxrwxr-x 1 cdl cdl     0 10月 30 16:19 hi8836 lrwxrwxrwx 1 cdl cdl     5 10月 31 16:47 fileA_soft_link -> fileA8835 -rw-rw-r-- 1 cdl cdl    15 10月 31 16:55 fileA_hard_link硬链接文件存在 内容和源文件内容一样,虽然删除源文件,但仍然有硬链接指向源文件inode节点,所以不会被释放删除,这里只是删除fileA到inode节点的链接。cat fileA_soft_link   软链接文件已经不存在了,目录还会显示这个文件,就是软链接文件已经失效。删除软链接rm -f fileA_soft_link   直接删除这个软链接文件即可
http://www.lryc.cn/news/166286.html

相关文章:

  • 【API 管理】什么是 API 管理,为什么它很重要?
  • 基于人体呼出气体的电子鼻系统的设计与实现
  • OPC发展历程
  • 第69步 时间序列建模实战:ARIMA建模(R)
  • 【多线程】CountDownLatch
  • 使用 docker buildx 构建跨平台镜像 (QEMU/buildx/build)
  • 算法|Day49 动态规划17
  • Linux nohup命令
  • SQL Server 跨库/服务器查询
  • word转PDF文件变小,图片模糊
  • 被删除并且被回收站清空的文件如何找回
  • 每日两题 131分割回文串 784字母大小写全排列(子集模版)
  • Java面试八股文宝典:初识数据结构-数组的应用扩展之HashMap
  • ES6 特性
  • 重拾html5
  • 递归学习——记忆化搜索
  • ChatGPT帮助一名儿童确诊病因,之前17位医生无法确诊
  • Laf 云开发平台及其实现原理
  • 浅谈STL|STL函数对象篇
  • 自建私人图床方案:使用Cpolar+树洞外链轻松部署超轻量级图床,实现高效图片存储
  • 从零基础到精通Flutter开发:一步步打造跨平台应用
  • SpringBoot整合WebSocket【代码】
  • 微服务 第一章 Java线程池技术应用
  • 行业追踪,2023-09-14
  • 传输层协议--UDP
  • 微信会员卡开发流程
  • 《算法竞赛·快冲300题》每日一题:“点灯游戏”
  • 常见高级语言的输入与输出训练(一)
  • 恭喜!龙蜥获得 2023 大学生操作系统设计赛二等奖及特殊贡献奖
  • 中项系统集成项目管理2023上半年真题及解析