Linux的一些基本概述以及系统使用
GNU:项目名称(意指开发在类UNIX系统上的软件)。POSIX:可移植(Portable)操作系统接口,便于程序在不同操作系统上运行。
Linux是符合POSIX标准的操作系统:
- 完全兼容POSIX 1.0标准;
- 是多用户、多任务操作系统;
- 支持多种文件系统(EXT2、EXT3、NFS、NTFS、VFAT);
- 支持多种网络功能(TFTP、BOOTP等服务)。
- 设备独立性:指对于所有设备,只需要安装对应驱动程序,就可以把设备当作文件一样来处理。使得程序独立于设备——1、使得设备分配灵活,2、IO重定向易于实现。
Linux的版本:
- 核心版本:major.minor.patchLevel,例如2.2.11表示核心版本2.2的第11次修订——次版本号为奇数时,是测试版;次版本号为偶数时,是稳定版。。
- 发行版本:例如RedHat、Debian之类的。
系统使用:
Linux命令和shell命令行:
shell命令行:shell与程序库(如C库)、其他平台处于同一级别,与系统的层次关系是:用户—>shell/库/平台—>系统调用API—>操作系统—>硬件设备。所以shell是用户与系统交互的界面。
shell的左边的那个东西:[用户@主机号 当前路径]X ——> X为#(root用户)、$(普通用户),例如[root@localhost Desktop]#+命令。
一般命令格式:命令+[-选项]+参数1... ——> 命令一定是小写的,选项可以有多个。
常用命令:
who:列出所有当前正在使用系统的用户、该用户正在使用的终端名称、该用户注册到系统的时间。
echo:将echo命令后面的参数,标准输出。date:显示当前系统本地时间。pwd:显示当前路径。
ls:例如,ls -l first.c,输出结果:-rw-r--r--. 1 root root 1427 Dec 14 00:10 first.c ——> 划线部分解释:1、文件类型(第一个字符)+文件权限。2、用户名和组名。3、文件大小(以字节为单位)。具体的文件类型如下:
- -:普通文件
- d:目录
- b:块文件,如磁盘驱动器
- c:字符设备,如终端文件
- l:链接文件
- p:管道文件
- s:套接字
显示文件内容:
cat 文件名:完整显示小文件内容。more -f 文件名:查看大文件。
head -行数 文件:查看文件前面的,指定行数内容。相反的,tail -行数 文件:查看文件尾几行。
删除文件/目录:rm -fir 文件名,-fir为三个选项,文件名可以用通配符。重命名文件:mv -i 旧文件名 新文件名。
复制文件:cp -ir 源文件 目标文件名。创建文件:touch -acmt 文件名,如果文件不存在,则新建文件;若存在,则更新时间标签。
创建目录:mkdir -p 目录名。删除目录:rmdir 目录名,所以删除目录有两种方法。
统计文件内容的字数:wc -lwc 文件名。三个选项依次显示是:-l统计行数、-w统计字数、-c统计字符数(也就统计了文件大小,一字符一字节嘛),若无选项,则三项都统计。
测试程序的执行时间:time 可执行程序——先执行程序,并给出执行结果,然后就是显示各种运行时间(real、user、sys)。
更改文件执行权限:chmod mode 文件名——关于权限mode=[ugoa][+-=][rwx],其中u为文件所有者,g为同组的所有用户,o为其他用户,a表示前三者皆有;而+代表增加权限,=代表唯一设定权限;如果权限要用八进制,那么r=4,w=2,x=1,例如r-x : 4+1=5。
更改文件所有者:chown user用户名[:group组名] 文件名。更换用户:su 用户名。显示用户所在组:groups 用户名,如果不指明用户,则列出当前用户所在组。
压缩文件:tar czvf 名字.tar.gz 源文件目录。解压文件:tar zxvf 文件名.tar.gz -C 目标目录。归档模块ar。
(只能由root用户执行)——更改用户密码:passwd 用户名。增加用户:useradd 新用户名。删除用户:userdel 用户名。
在文件中查找内容:grep pattern 文件名。可正则。
显示进程状态:ps [PID]。发送信号给进程:kill [-s signal] PID。
VI的基本使用:
VI的模式:
VI的常用命令:差不多了,够用了。。。