step1 . day2:Linux系统基础知识

和Windows一样,Linux计算机必要的文件系统和学习C语言使用到的编辑器知识初步掌握。

 

1.操作系统和内核的分类

内核:Linux、Unix、NT,Linux内核主要负责5项工作①文件管理②设备管理③网络管理④内存管理⑤进程管理

操作系统:Windows系列,MacOS,Ubuntu系列、Redhat系列、centOS及deepin等,是在内核基础上集成各个基础应用的软件

 

2.Linux系统文件管理系统

Linux系统没有Windows系统C\D\E等盘符的概念,秉承着一切解释文件的形式,遵从FHS(Filesystem Hierarchy Standard)标准建立了倒置树状文件系统

各个目录下存放的内核及功能

/ 根目录

/bin 可基本用户命令二进制文件

/boot 和系统启动相关的文件

/dev 设备文件(通过此文件访问设备驱动)

/etc 系统配置文件

/home 用户家目录

/lib 可执行程序需要连接的库文件

/sbin 系统二机制文件

/mnt/hgfs/share 共享目录

 

3.shell终端命令(terminal,那个黑色的框框,快捷键Ctrl + alt +T,在终端界面再打开一个终端Ctrl + shift + n)

linux @ ubuntu  : ~  $:Linux表示用户名  @间隔符 Ubuntu表示主机名 :间隔符 ~表示家目录  $表示普通用户(#表示超用户)

 

4.Linux系统下常用命令1

①whoami  查看用户名

②hostname  查看主机名

③su root  进入超级用户,输入密码时候不显示,成功进入的标识是root@ubuntu:/# 

④sudo passwd root :重置超级用户密码

⑤exit   退出超级用户或者terminal终端

 

5.常用命令2

① ls    查看当前目录文件列表

   ls -a   显示隐藏文件(以 . 或  ..开头文件) 

  ls  -l 显示文件属性信息(ll)(wrx(421权重)表示文件权限读写执行,八进制表示0777,dsp-lcd文件类型(b块设备文件,d目录,s套接字文件,p管道文件 ,-一般文件,l链接文件,c 字符设备文件))

  ls -i 显示文件iNode号

  ls -R 文件递归显示,即显示文件中的文件层级

  ls -lh 讲文件属性的大小转换为对应数量级

②cd 切换目录 相对路径和绝度路径区分

 cd  cd~  返回家目录

 cd  ../  返回上层目录  cd ../ ../  返回上上层目录  cd -  返回上次操作目录

 cd /mnt/  绝对路径打开mnt文件  可以用tab键补齐或者查找

 pwd 显示当前工作文件绝对路径

 clear  清屏  Ctrl+l(实际上是上翻一页)

③touch  a.c   创建文件(如果文件存在,则修改文件时间戳)

④mkdir  a 创建目录(-m 为分配权限,-p为递归创建)

⑤rm  a.c  删除文件或目录(目录内有文件需要-r,可以多个删除,也可用*通配符多个删除)

⑥chmod  0777 hello     修改hello文件权限(共享文件中的文件权限全是777,即wrx)

⑦cp  复制(-r -a  为复制递归文件)

⑧mv 剪切或者重命名    mv 1.c 2.c 将1.c重命名为2.c   mv hello/ test/  剪切文件到test/

⑨echo  111     打印到终端   echo 11 > hello,c   重定向打印到文件(>>为追加打印)

⑩cat  test.c  显示test.c文件中的内容

 

6.常用命令3

vi或vim常用没命令

vi test.c  创建并打开test.c文件,存在则直接打开

vi有三种模式,各模式下命令如下:

命令行模式(开始进入模式,按Esc可进入)
拷贝      yy 拷贝一行       3yy 拷贝3行
剪切      dd 剪切一行      3dd 剪切三行
粘贴       p 粘贴
撤销       u 撤销
对齐     gg=G   或者 鼠标左键选中按下键盘的等号键
查找
/要查找的字符串
/^字符串 搜索字符串,显示子高亮第一次出现的字符串
/字符串$ 搜索字符串,显示子高亮以这个结尾的字符串
n 下一个
N 上一个
:nohl 取消查找的高亮插入模式:命令行模式下按i(当前位置插入) I(行首插入) a(当前位置插入) A(行位插入) o(行下插入) O(行上插入)


底行模式:
:q (quit)  未修改的文件退出
:q! (quit no save)  强制退出
:w (save)    保存
:wq或x (save quit)   保存并退出
:wq! (force save quit)  强制保存退出
:wqa                保存退出所有的文件
:n        跳转行
:set nonu取消行号
:set nu 显示行号


设置鼠标
:set mouse= 可以拷贝
:set mouse=a 取消拷贝
按住shift,鼠标选中,松开shift ,右键 12.04
按住shift,鼠标选中,不松开shift ,右键 14.04 16.04
粘贴时必须在插入模式下,右键past粘贴

:60,65y   拷贝  
:60,65d  剪切  

:%s/hello/abc/g  替换所有(不加/g为替换所有行第一个):

:%s/旧字符串/新的字符串/g
:3,4s/hello/abc/g 替换每行的所有的,3-4行

打开多个文件
:vsp 1.c 垂直打开1.c
:sp 1.c 水平打开1.c

在终端使用 gcc  a.c命令编译hello.c文件,不指定生产文件名默认生产a.out,在终端./a,out查看程序运行结果

 

至此,在Linux环境下学习C语言用到的命令基本够了,下面可以在Linux下开始编辑和运行第一个C程序了,感觉这段刚刚上手非常痛苦,比Windows难用多了,但是用熟悉了之后还是很舒服的

posted @ 2019-06-28 19:32  灰机12321  阅读(228)  评论(0编辑  收藏  举报