黑马程序员C++系统班学习笔记(一)——Linux操作系统一

2023-05-16

黑马程序员C++系统班链接:https://www.bilibili.com/video/av37403127?from=search&seid=5509409937472093685

本笔记旨在记录学习过程中的收获,内容均来自于黑马程序员C++系统班课程。

一、 Linux目录结构介绍(我所使用的为Ubuntu 16.04)

1、绝对路径与相对路径

绝对路径:“ / ”

相对路径:指目标目录相对于当前目录的位置     “ . ” 表示当前目录   、 “ .. ”表示上一级目录

2、目录结构

/ :根目录

/bin :可执行二进制文件的目录(放工具)常用命令有  ls 、tar、mv、cat

/boot :内核文件

/dev :设备文件

/etc :配置文件

/home :家目录

/lib :库函数(放库文件)

/usr/include :头文件

二、文件权限说明

1、文件类型(五种)    命令行输入: ls -l(以树状图形式查看)
      例如:-rw-r--r--  1 cubot cubot     8980 6月  10  2018 examples.desktop
                 drwxrwxr-x 13 cubot cubot     4096 1月   2 20:49 LIN

(1)第一个字母代表文件的类型     

           -:普通文件

          d :文件夹

           l :链接文件

          c : 硬件字符设备

          b :硬件块设备

          s : 管道文件

(2)后九个字母分别代表三组权限:

         文件所有者、用户者、其他用户拥有的权限

2、文件权限管理

 -r  :只读

-w :只写

-x : 执行

三、Linux命令格式

(1)command [-options][parameter]

          说明:command:命令名,相应功能的英文单词或单词的缩写

           [-options]:选项,可用来对命令进行控制,也可以省略,[]代表可选

           parameter:传给命令的参数,可以是零个一个或多个

(2)查看帮助文档:--help 或者 man

(3)自动补全功能:TAB键

(4)历史命令:当系统执行过一些命令后,可按上下键翻看以前的命令,history将执行过的命令列举出来。

四、常用命令

(1)查看文件信息:ls

ls -a :显示指定目录下所有子目录与文件,包括隐藏文件

cubot@cubot-NUC:/usr/include$ ls -a
.                   jerror.h            pwd.h
..                  jmorecfg.h          python2.7
aio.h               jpegint.h           python3.5
aliases.h           jpeglib.h           python3.5m
alloca.h            KHR                 rdma
argp.h              lame                re_comp.h
argz.h              langinfo.h          regex.h

ls -l  :以列表方式显示文件的详细信息

cubot@cubot-NUC:/usr/include$ ls -l
total 3076
-rw-r--r--   1 root root   7441 1月  15  2018 aio.h
-rw-r--r--   1 root root   2031 1月  15  2018 aliases.h
-rw-r--r--   1 root root   1203 1月  15  2018 alloca.h
-rw-r--r--   1 root root  25303 1月  15  2018 argp.h
-rw-r--r--   1 root root   7117 1月  15  2018 argz.h
-rw-r--r--   1 root root   1730 1月  15  2018 ar.h
drwxr-xr-x   2 root root   4096 6月  10  2018 arpa
drwxr-xr-x   2 root root   4096 12月 22 13:31 asm-generic

ls -h :配合 -l 以人性化的方式显示文件大小

cubot@cubot-NUC:/usr/include$ ls -l -h
total 3.1M
-rw-r--r--   1 root root 7.3K 1月  15  2018 aio.h
-rw-r--r--   1 root root 2.0K 1月  15  2018 aliases.h
-rw-r--r--   1 root root 1.2K 1月  15  2018 alloca.h
-rw-r--r--   1 root root  25K 1月  15  2018 argp.h
-rw-r--r--   1 root root 7.0K 1月  15  2018 argz.h
-rw-r--r--   1 root root 1.7K 1月  15  2018 ar.h
drwxr-xr-x   2 root root 4.0K 6月  10  2018 arpa
drwxr-xr-x   2 root root 4.0K 12月 22 13:31 asm-generic
 

注:反斜杠:将转移字符转化为普通字符 

(2)输出重定向命令:>

Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中。

cubot@cubot-NUC:~/LIN$ ls >text.txt(如果text.txt不存在,则创建,存在则覆盖其内容)
cubot@cubot-NUC:~/LIN$ ls

cubot@cubot-NUC:~/LIN$ gedit text.txt
保存在指定的text.txt中

10-22
10-22.zip
32.png
PNP
qipange
runClion.sh
text.txt

cubot@cubot-NUC:~/LIN$ ls >>text.txt
保存上一次的内容,再重新保存到指定文件中

10-22
10-22.zip
32.png
PNP
qipange
runClion.sh
text.txt
10-22
10-22.zip
32.png
PNP
qipange
runClion.sh
text.txt

(3) 分屏显示:more

查看内容时,在信息过长无法在一屏上显示时,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助。

cubot@cubot-NUC:/usr/include$ more stdio.h 
/* Define ISO C stdio on top of C++ iostreams.
   Copyright (C) 1991-2016 Free Software Foundation, Inc.
   This file is part of the GNU C Library.

   The GNU C Library is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Lesser General Public License for more details.
cubot@cubot-NUC:/usr/include$ q
The program 'q' can be found in the following packages:
 * python-q-text-as-data
 * python3-q-text-as-data
Try: sudo apt install <selected package>

 (4)管道:l

管道:一个命令的输出可以通过管道做为另一个命令的输入。

cubot@cubot-NUC:/usr/include$ ls | grep std
libyasm-stdint.h
stdc-predef.h
stdint.h
stdio_ext.h

管道我们可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里 ”|“的左右分为两端,左端塞东西(写),右端取东西(读)。  

cubot@cubot-NUC:/bin$ ls -alh | more
total 13M
drwxr-xr-x  2 root root  4.0K 11月 29 11:34 .
drwxr-xr-x 24 root root  4.0K 12月 22 13:31 ..
-rwxr-xr-x  1 root root 1014K 5月  16  2017 bash
--More--

(5)清屏:clear

clear作用为清除终端上的显示,也可以使用快捷键:ctrl+l

 

(6)切换工作目录:cd

在使用Linux的时候,经常需要更换工作目录,cd命令可以帮助用户切换工作目录,Linux所有的目录和文件名大小写敏感。

cd后面可跟绝对路径,也可跟相对路径。如果省略目录,则默认切换到当前用户的主目录。

cd    :切换到当前用户的主目录(/home/用户目录),用户登录的时候,默认的目录就是用户的主目录。

cubot@cubot-NUC:~$ cd /home/

cd ~ :切换到当前用户的主目录(/home/用户目录)

cubot@cubot-NUC:/home$ cd ~

cubot@cubot-NUC:/$

cd .  :切换到当前目录

cubot@cubot-NUC:~$ cd /home/
cubot@cubot-NUC:/home$ cd .

cubot@cubot-NUC:/home$

cd ..  :切换到上级目录

cubot@cubot-NUC:/home$ cd ..

cubot@cubot-NUC:/$

cd -   :可进入上一个进入的目录
cubot@cubot-NUC:/$ cd -
/home
cubot@cubot-NUC:/home$ 

(7)显示当前路径:pwd 

使用pwd命令可以显示当前的工作目录,该命令很简单,直接输入pwd即可。

cubot@cubot-NUC:/home$ cd /usr/include/
cubot@cubot-NUC:/usr/include$ pwd

/usr/include

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

黑马程序员C++系统班学习笔记(一)——Linux操作系统一 的相关文章

  • RFID智能门禁系统设计

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 基于单片机的节能照明仿真设计(#0049)

    功能描述 1 采用51 52单片机作为主控芯片 xff1b 2 采用光敏电阻 43 ADC0832检测光强 xff1b 3 具有声音检测和红外人体检测功能 xff1b 4 通过按键进行自动 手动模式切换 xff1b 5 手动模式 xff0c
  • 基于单片机的导盲仪系统设计(#0477)

    功能描述 1 采用51 52单片机 通用 作为主控制器 xff1b 2 采用HC SR04超声波模块测距 xff0c 测量范围0 02m 5 5m以上 xff1b 3 采用四位数码管切换显示 xff1a 障碍物距离 设置报警距离 xff0c
  • 基于单片机的可燃气烟雾系统设计(#0488)

    功能描述 本系统可用于可燃气体监测 烟雾火灾监测 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602显示 xff1a 气体浓度的实时值及报警值 xff1b 3 采用MQ2 43 ADC0809检测气体浓度 xff1b
  • 析构函数的执行顺序

    析构函数的执行顺序 回答包括类定义的先后顺序 xff0c 局部和全部 xff0c 以及静态 xff0c 同时说明继承的关系 对于继承类的析构函数执行顺序为 xff0c 先派生类 xff0c 后基类 对于一个执行单元 xff08 cpp文件
  • 基于单片机的可燃气烟雾系统设计(#0489)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用数码管显示 xff1a 气体浓度等级 温度值 xff1b 3 采用MQ2 43 ADC0832检测气体浓度 xff1b 4 采用DS18B20检测温度 xff1b
  • 基于单片机的氢气监测系统设计(#0490)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602显示 xff1a 氢气浓度的实时值及报警值 xff1b 3 采用MQ8 43 ADC0809检测氢气浓度 xff1b 4 氢气浓度超标时 xff0c 蜂鸣报
  • 基于单片机的心率监测系统设计(#0495)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602液晶显示 xff1a 当前心率 报警上限 报警下限 xff1b 3 采用ST188红外对管检测心率 xff0c 当单片机检测到大约第5次信号时 xff0c
  • Verilog - 利用加法器实现乘法器 [代码]

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • LCD1602液晶 - 开发技术详解

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • LCD1602温度显示程序设计流程

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 语音处理WT588D-20SS芯片 - 原理详解

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 基于单片机的智能温度监测系统设计(电路图+程序)

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 基于单片机的电子秤系统设计(电路+流程)

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • MPU6050 - 陀螺仪 - 技术总结

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • JavaParser使用指南

    抱歉这个博客是很久以前写的 xff0c 现在我已经不用javaparser了 xff0c 这个包也一直在更新所以这篇博客参考意义不大 大家可以根据官网的例子去试试 JavaParser使用指南 前言入门 StartJavaParser Cl
  • 共享式与交换式以太网

    大家好呀 xff0c 我是请假君 xff0c 今天又来和大家一起学习数通了 xff0c 今天要分享的知识是共享式与交换式以太网 一 共享式以太网 xff1a Hub 与同轴电缆都是典型的共享式以太网所使用的设备 xff0c 工作在OSI模型
  • 51单片机入门 - 自己动手搭建实验板

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • TCP 协议

    传输层协议作用 1 分段及封装应用层送来的数据 2 提供端到端的传输服务 3 在发送主机与接收主机之间构建逻辑通信 4 包括两个协议 xff1a 1 xff09 TCP 2 xff09 UDP 怎样提供的逻辑通信 xff1a 两台主机进程间
  • 海康门禁 远程控制

    1 登录海康官网下载sdk包 https www hikvision com cn download 61 html 2 登录海康sdk包 库文件中的ClientDemo exe 然后添加设备 只用填写ip xff0c 用户名 xff0c

随机推荐