Unix发展史

内核

一个Linux操作系统,由三个重要的部分组成。内核、Shell、文件系统

  1. Kernel
    内核,管理硬件设备、内存、进程、交互空间、文件系统、系统程序等。
  2. Shell
    Shell是用户和kernel之间的接口,它也是一个命令解释器,当用户在linux界面发出一个指令时,命令先传到shell,然后在将这个指令翻译成计算机可以识别的二进制语言,然后传给计算机内核,告诉他要做什么事情。计算机内核将结果返还给shell,shell翻译成人所熟悉的语言,将结果展示出来

常见的几种Shell:

  • Bourne shell (sh)
    是一个快捷方式,已经被/bin/bash所取代
  • Korn shell (ksh)
    语法与Bourne shell相同,同时具备了C shell的易用特点
  • C shell (csh)
    使用的是“类C”语法,csh是具有C语言风格的一种shell
  • Bourne-again shell (bash)
    大多数Linux系统默认使用的Shell,是Bourne shell 的一个免费版本,它是最早的Unix Shell

文件系统

文件系统将硬件和软件都映射为文件,统一进行管理

目录 作用
/ 根目录,所有目录的父目录
/bin 包含普通用户和系统管理员可以共享的各种通用程序
/boot 包含系统引导程序GRUB及其配置文件、linux内核文件vmlinuz和磁盘内存映像文件initrd.img等重要引导文件
/dev 包含系统支持的所有设备文件
/etc 包含系统管理和维护方面的所有配置文件
/home 包含所有普通用户的家目录
/lost+found 用于存储fsck命令在检测与修复文件系统时删除的文件和目录
/media 包含移动存储介质的挂载点
/mnt 包含所有自定义的文件系统的挂载点,可以挂载任何文件系统
/opt 应用程序等附加软件的安装目录
/proc 虚拟文件目录,系统关闭时为空目录,系统运行时进程文件系统根目录,其中的部分文件系统分别对应当前正在运行的进程,可用于访问当前进程的地址空间
/root 超级用户root的家目录
/sbin 超级用户管理员的常用工具、如管理和维护、系统引导和恢复命令集合
/srv 分担了var目录的一些功能,保存了一些网络服务所需的数据文件
/sys 和proc一样是虚拟目录,系统各种设备配置信息的根目录
/tmp 临时文件目录,用于存储系统运行过程生成的临时文件
/usr 既可以作为根目录下的一个子目录,其中保存系统提供的各种共享数据(用户命令、库函数、头文件、文档等),又可以作为一个单独的文件系统,可以认为是对根目录的一个递归目录,使得文件系统具有更大的灵活性
/var 该目录和usr 类似,首先是根目录下的子目录,也可以作为单独的文件系统

常用命令

  1. 查看当前用户下的隐藏文件,并显示详细信息。
ls -al

  1. 创建一个新用户,并设置密码。
sudo useradd -mk /home/sun -s /bin/bash sun
sudo passwd sun
su -sun

  1. 创建a.txt文件,属主有读写执行权限,属组,有读写,其他账户无权限
    要求:使用两种方式。
touch b.txt
ls -l
chmod u+x,o-r b.txt
ls -l
chmod a-rwx b.txt
ls -l
chmod 760 b.txt
ls-l

  1. 创建a.txt,b.txt,c.txt,ab.txt,abc.txt
touch a.txt b.txt c.txt ab.txt abc.txt

  1. 创建目录 game1,game2,game3,gbme1
mkdir game1 game2 game3 gbme1

  1. 查找a结尾的文件或文件夹
ls *a/echo *a

  1. 查找第2字符是b,以.txt结尾的文件
 ls ?b*.txt

  1. 将a.txt 复制到game1文件夹中
cp a.txt game1

  1. 将b.txt移动到gbme1文件夹中
mv b.txt gbme1

  1. 查找以1结尾,倒数第4个字符是a的文件夹
echo *a??1

  1. ls ab.txt ls [ab] ls [ab].txt分别代表什么
    答:显示名字中有ab的.txt文件,显示名字中有a或b的文件夹或文件,显示名字是a或b的txt文件
  2. 将/etc/passwd中的内容重定向到abc.txt中
cat /etc/passwd > abc.txt

  1. 清空abc.txt的内容
cat /dev/null > abc.txt

  1. 删除刚刚创建的文件和文件夹
rm -r a.txt b.txt c.txt ab.txt abc.txt game1 game2 game3 gbme1

  1. 在Unix中?的作用
    答:表示任意的一个字符
  2. ;和|的异同
    答: ;表示在一行语句中连续执行多个命令,命令之间使用分号进行分割,|管道符,可以把第一个命令的结果,交给第二个命令作为参数进行操作
  3. 输入重定向:
    i)在home目录下创建一个文件,用姓名命名,内容随意输入
touch Sunzehong
echo 123456 > Sunzehong
ls

ii)使用输入重定向将上述文件作为源输出到屏幕

cat Sunzehong

  1. 输出重定向:
    i)查看目录mnt下所有文件的详细信息,并将这些输出信息发送到上面名字命名的文件中
 ls -l /mntls -l /mnt > Sunzehongcat Sunzehong

ii)查看文件/etc/passwd的内容,并将这些内容累加到上述文件的末尾

ls -l /ect.passwd >> Sunzehong
cat Sunzehong


  1. 在home目录下创建dhA,ehasD,fhhBC,BhB,ChasD,DhhB等文件查询当前目录下一小写d-j开头并且以大写A-D结尾的文件
touch dhA ehasD fhhDC BhB ChasD DhhbB
ls
ls [d-j]*[ABCD

  1. cat和more的异同
    cat显示文件中的所有内容,more和cat一样,也是查看内容的命令,但是more命令可以一点点的显示内容,而不是一次全显示出来

Unix的学习(一)相关推荐

  1. UNIX再学习 -- 进程间通信之管道

    一.进程间通信概念 首先,需要了解一下什么是进程间通信. 进程之间的相互通信的技术,称为进程间通信(InterProcess Communication,IPC). 下图列出 4 种实现所支持的不同形 ...

  2. UNIX再学习 -- 记录锁

    APUE第 3 章,参看:UNIX再学习 -- 文件I/O  fcntl 函数它的记录锁功能我们当时没讲.接下来就详细说明下. 一.读写冲突 1.如果两个或两个以上的进程同时向一个文件的某个特定的区域 ...

  3. UNIX再学习 -- 守护进程(转)

    参看:守护进程 一.什么是守护进程 守护进程(Daemon Process),也就是通常说的 Daemon 进程(精灵进程),是 Linux 中的后台服务进程.它是一个生存期较长的进程,通常独立于控制 ...

  4. UNIX再学习 -- 线程

    终于要讲到线程部分,线程和进程让人够头痛的内容. 一.线程概念 老样子,我们还是按我们讲进程时的方式说起,参看:UNIX再学习 -- 进程环境 首先需要了解下,什么是线程. Linux 下的线程,可能 ...

  5. UNIX再学习 -- 进程关系

    APUE 第 10 章信号讲完,回过头来看一下第 9 章的进程关系.终端登录和网络登录部分,我们只讲 Linux 系统的. 一.终端登录 我记得我们讲 root 登录设置时有提到,参看:C语言再学习 ...

  6. UNIX再学习 -- 函数abort

    abort 函数之前有讲过的,参看:C语言再学习 -- 关键字return和exit ()函数 然后我们在讲 8 中进程终止时,也说过.参看:UNIX再学习 -- exit 和 wait 系列函数 下 ...

  7. UNIX再学习 -- 信号

    终于讲到信号部分,很多比较重要的应用程序都需处理信号.第 9 章需要先了解信号机制再看,所以先跳过不讲.现在开始详解信号. 一.信号概念 信号是提供异步事件处理机制的软件中断. 这些异步事件可能来自硬 ...

  8. UNIX再学习 -- 用户 ID 和组 ID

    用户 ID和组 ID 的内容已经在好几章中出现过了.之前都没有讲到,现在放到一起总结. 一.用户 ID 和 组 ID 回顾 1.我们在APUE 第 4.6.8 章,都有涉及到. 其中我们用到的地方: ...

  9. UNIX再学习 -- 函数 system

    一.system 函数 #include <stdlib.h> int system(const char *command); 1.参数解析 command:shell 命令行字符串 2 ...

  10. UNIX再学习 -- exec 函数族

    我们在讲,文件I/O的时候,简单提到过 exec 函数,讲到 vfork 的时候,也有用到.下面我们来详细介绍下它. 参看:UNIX再学习 -- 文件I/O  参看:UNIX再学习 -- 函数 for ...

最新文章

  1. knockout学习笔记目录
  2. 482. License Key Formatting
  3. UVA11375火柴(递推+大数)
  4. GIT 牛刀小试 (第一发)
  5. 【Java】五种常见排序之-----------冒泡排序
  6. hdfs的副本数为啥增加了_HDFS详解之块大小和副本数
  7. linux rpm找不到命令_Linux实战013:yum工具丢失问题解决(yum安装)
  8. linux c++应用程序内存高或者占用CPU高的解决方案_20161213
  9. 禅道程序员的10条原则--转载--为了不忘
  10. 你为什么用微信,不用 QQ ?
  11. edius隐藏快捷键_Eduis快捷键,大家参考一下!【EDIUS】史上最全的EDIUS快捷键资料分享!...
  12. mentohust linux,(Mark) (树莓派) 树莓派编译libpcab和mentohust 进行锐捷认证(Linux)(mentohust)...
  13. C. Mortal Kombat Tower(DP 走台阶问题)
  14. IOS(iphone,ipad,itouch)开发 之 屏幕旋转
  15. Lua中获取指定月份总天数
  16. 《人生效率手册》读后感
  17. 大数据能否解决城市所面临的环境问题
  18. ICCV2021已开放注册,附投稿时间节点、官方论文模版!
  19. TensorFlow:Graph计算图的概念
  20. 使用Jedis连接Redis失败的几个注意点

热门文章

  1. opencv学习记录——(5)图像像素的操作
  2. deepstream6.1-YOLOv5部署
  3. 从功能到年薪30W+的测试开发工程师,分享我这10年的职业规划路线
  4. SOLIDWORKS螺纹显示处理方法
  5. Shell 字符串转数组的三种方式
  6. Scene…… couldn‘t be loaded because it has not been added to the build settings or the AssetBundle...
  7. 身份证扫描识别OCR技术的应用场景
  8. 数据预处理-离群值检测与处理
  9. 用pandas绘制箱体图(boxplot)
  10. myeclipse 2015 stable2.0破解安装教程