Linux文件管理及命令

it2024-04-03  50

Linux 系统下的文件类型与文件权限

文件类型 Linux 下所有的东西(包括内存、网卡、外部设备等等)都可以看做文件,Linux 将文件 分为以下五种类型: a. 普通文件 ‘-’ b. 目录文件 ‘d’ c. 管道文件 ‘p’ d. 链接文件 ‘l’ e. 设备文件(块设备 ’b’ 、字符设备 ‘c’ 、套接字设备 ‘s’ ) .mp4 .avi .txt linux只有通过命令才能查看出一个文件的类型:ls -l 、ll :能查出隐藏文件

文件权限 用户能够对其进行怎样的操作 a. r 读权限 值: 4 b. w 写权限 值: 2 c. x 执行权限 值: 1 d. - 无权限 值: 0 如何查看文件的权限:ls -l 、ll :能查出隐藏文件 a. u : 表示文件属主的访问权限 文件是谁建立的属主就是谁 b. g : 表示文件同组用户的访问权限 用户进行分组 c. o : 表示其他用户的访问权限 和创建文件的用户不是同一个组 一切皆文件。 修改文件权限 1.文字设定法 chmod + u 表属主 g 同组人 o 其他人 a 所有人 + 增加权限 -去掉权限 文件路径/文件名 chmod u+w main.c 2.数字设定法 test u :rw g: rx o :没有权限

文件操作 查看文件 ls 查看当前目录下的文件 -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 -r 将文件以相反次序显示(原定依英文字母次序) -t 将文件依建立时间之先后次序列出 -A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录) -F 在列出的文件名称后加一符号;例如可执行档则加 “ * ”, 目录则加 “/” -R 若目录下有文件,则以下之文件亦皆依序列出 创建文件 touch + 文件路径/文件名 创建普通文件 文件路径:可以是相对路径也可以是绝对路径 mkdir + 目录路径/目录名 创建目录文件 删除文件 1.删除普通文件 rm + 文件路径/文件名 删除普通文件 2.删除目录文件 删除空目录 rmdir + 目录路径/目录名 rm -r +目录路径/ 目录名 -r 是rm的参数 删除非空目录 rm -r +目录路径/ 目录名 注意:rm -rf * 禁用 rm -rf / * 文件复制与重命名 1.复制粘贴使用cp 语法: cp [options] source… directory • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。 • -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。 • -f:覆盖已经存在的目标文件而不给出提示。 • -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。 • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。 • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。 • -l:不复制文件,只是生成链接文件。 2.移动文件或者重命名使用mv 语法:mv [options] source… directory • -i: 若指定目录已有同名文件,则先询问是否覆盖旧文件; • -f: 在 mv 操作要覆盖某已有的目标文件时不给任何指示; 编辑文件 通过vi演示只读只写: 压缩、打包 我们使用tar进行打包或者解包。使用gizp进行文件压缩。 打包 将文件打包或者解包 1.c 创建包文件 2.f 指定目标为文件而不是设备 3.v 显示详细过程 4.t 显示包中的内容而不释放 5.x 释放包中的内容 6.z GNU 版本新加的,使得 tar 有压缩和解压的功能

Linux 文件操作命令

文件查看命令 cat 查看文件内容 合并文件 往文件中写入数据, Ctrl+d 是结束输入 more 当一个文件的内容超过一个屏幕能显示的行数,使用 more 可以分屏显示文件内容。 使用方式: more filename less 文本内容查看器,查看文件内容,但是文件内容不会显示到界面上 head 显示文件前 n 行的内容 tail 显示文件后 n 行的内容 数据统计 wc 统计文件中单词个数(-w)、字符个数(-c)、行数(-l)文件编辑命令 vim命令 sudo apt-get install vim-gtk sudo:以管理员权限运行(ubuntu特有,其他平台常常要先su到管理员权限,然后再安装) apt-get:使用apt-get包管理器 install:apt-get的命令,查找软件安装 vim-gtk:安装使用GTK图形的vim编辑器 三种模式介绍 vim一共有三种模式,分别是命令模式、插入模式、末行模式。我们可以在不同的模式下做不同的操作。 命令模式切换到插入模式: 1.a //进入到当前光标后开始编辑 2.A //进入到当前光标所在行的行末开始编辑 3.i //进入当前光标位置开始编辑 4.I //进入当前光标所在行的行头开始编辑 5.o //进入当前光标下一行开始编辑 6.O //进入当前光标上一行开始编辑 命令模式切换到末行模式 1.: //对文本的设置或保存工作 2./ //对文本进行全文向下搜索字符串 string 3.? //对文本进行全文向上搜索字符串 string vi/vim 常用命令 1.n dd //删除光标开始向下的 n 行 2.n yy //拷贝光标开始向下的 n 行 3.p //粘贴 4.u //撤销上一次操作 5.ctrl + r // 恢复上一次撤销操作 6.r //替换一个字符 7.shift + 6 //光标移动到当前行的行头 8.shift + 4 //光标移动到当前行的行尾 9.shift + g //光标移动到整个文本的最后一行 G 10.gg //光标移动到整个文本的第一行 11.n shift + g //光标移动到第 n 行 12.d n shift + g //删除光标到 n 行的内容 13.y n shift + g //拷贝光标到 n 行的内容 末行模式下的操作 1.:w //保存文本 2.:q //退出编辑 3.:wq //保存并退出 4.:q! //强制退出 5.:w newfile //另存为 6.:set nu //显示行号 7.:set nonu //取消行号 8.: set hlsearch //设置高亮搜索 9.: set nohlsearch //取消高亮搜索 10.: n,m s/oldstring/newstring //替换整个文本每行的第一个 oldstring 11.:n, m s/oldstring/newstirng/g //替换整个文本所有的 oldstring 12./string //向下搜索 string 13.?string //向上搜索 stringvim小技巧 定位命令 删除命令 复制粘贴命令 替换和取消命令 最后+g 替换的时候不询问 +c 替换的时候询问 保存或退出命令 恢复上一次撤销操作:ctrl + r 导入另外一个文件的内容:esc :r 文件名 vim中的快捷键 vim配置文件 在用户家目录输入:vim .vimrc 输入一些编辑模式的命令:比如设置行号,设置快捷键基础命令 find 在那个路径下查找文件 -以哪种方式查找文件 test 在目录树中搜索指定的文件,也可以指定开始的搜索位置 -mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件 -amin n : 在过去 n 分钟内被读取过 -anewer file : 比文件 file 更晚被读取过的文件 -atime n : 在过去n天内被读取过的文件 -cmin n : 在过去 n 分钟内被修改过 -cnewer file :比文件 file 更新的文件 -ctime n : 在过去n天内被修改过的文件 -empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name -ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写 -name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写 -size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。 -type c : 文件类型是 c 的文件。 d: 目录 c: 字型装置文件 b: 区块装置文件 p: 具名贮列 f: 一般文件 l: 符号连结 s: socket grep 在文件中过滤出包含指定字符串的行 -a 或 --text : 不要忽略二进制的数据。 -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。 -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。 -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。 -c 或 --count : 计算符合样式的列数。 -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。 -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。 -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。 -E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。 -f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。 -F 或 --fixed-regexp : 将样式视为固定字符串的列表。 -G 或 --basic-regexp : 将样式视为普通的表示法来使用。 -h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。 -H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。 -i 或 --ignore-case : 忽略字符大小写的差别。 -l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。 -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。 -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。 -o 或 --only-matching : 只显示匹配PATTERN 部分。 -q 或 --quiet或–silent : 不显示任何信息。 -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。 -s 或 --no-messages : 不显示错误信息。 -v 或 --revert-match : 显示不包含匹配文本的所有行。 -V 或 --version : 显示版本信息。 -w 或 --word-regexp : 只显示全字符合的列。 -x --line-regexp : 只显示全列符合的列。 -y : 此参数的效果和指定"-i"参数相同。 管道 A进程将执行的结果输出到管道中,B进程再将其从管道中读出来。 将前一个命令的输出结果作为后一个命令的输入。进程间通讯的一种方式。

计算机组成与进程

计算机的基本组成 计算机组成五大部件 (1) 运算器 :也叫算数逻辑单元,完成对数据的各种常规运算,如加减乘除,也包括逻辑运 算,移位,比较等。 (2) 控制器 :它是整个计算机系统的控制中心,它指挥计算机各部分协调地工作,保证计算 机按照预先规定的目标和步骤有条不紊地进行操作及处理。 (3) 存储器 :存储程序和各种数据。 (4) 输入设备 :把人所熟悉的信息如,图片,声音,文字,转换为计算机能够识别的信息存 储起来。 (5) 输出设备 : 把计算机机能识别的信息转换为人能识别的信息,进行呈现。 一台计算机可以抽象成下图: CPU 中包含控制器和运算器, 内存就是存储器。I/O 设 备就是输入设备和输出设备,如:键盘、显示器、鼠标、硬盘、网卡 系统总线 (1)数据总线:用来在各个功能部件中间传输数据,是双向传输总线 (2) 地址总线 :用来指出数据总线上的源数据或目的数据在主存单元的地址或 io 设备的地 址。 (3) 控制总线 :由于各个连接在数据总线和地址总线的部件都是共享这两类总线的,那么在某一时刻由谁来使用,就是控制总线负责完成的。 指令 (1) 指令 : 是指示计算机执行某种操作的命令。一条指令通常由两部分构成:地址码 和操 作码。 (2) 程序 : 由一条一条的指令构成。 (3) 指令周期 :cpu 每取出并执行一条指令所需的全部时间称为指令周期。 (4) 指令系统 :计算机能够执行的全部指令的集合称为该计算机的指令系统。 (5) RISC :精简指令系统计算机。 (6) CISC :复杂指令系统计算机。 (7) 程序与指令:高级语言 汇编助记符 机器指令进程 进程:是资源分配的最小单位 线程:是CPU调度的最小单位 抽象比喻:进程是火车,线程是车厢 PID PID(Process Identification)操作系统里指进程识别号,也就是进程标识符。操作系统里每打开一个程序都会创建一个进程ID,即PID。 PID(进程控制符)英文全称为Process Identifier,它也属于电工电子类技术术语。 PID是各进程的代号,每个进程有唯一的PID编号。它是进程运行时系统随机分配的,并不代表专门的进程。在运行时PID是不会改变标识符的,但是你终止程序后再运行PID标识符就会被系统回收,就可能会被继续分配给新运行的程序。 PID含义 只要运行一程序,系统会自动分配一个标识。 是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。 只要没有成功运行其他程序,这个PID会继续分配给当前要运行的程序。 如果成功运行一个程序,然后再运行别的程序时,系统会自动分配另一个PID。 是暂时唯一:进程中止后,这个号码就会被回收,并可能被分配给另一个新进程。 和用户进行交互的命令解释器。 PCB 进程控制块,进程的属性信息。 在操作系统中会使用链表将PCB连接在一起, 链表中有多少个节点,这个操作系统就有多少个进程,操作系统通过管理PCB来管理运行起来的 进程 进程描述信息:进程标识符用于唯一的标识一个进程(pid,ppid)。 进程控制信息: • 进程当前状态 • 进程优先级 • 程序开始地址 • 各种计时信息 • 通信信息 资源信息: • 占用内存大小及管理用数据结构指针 • 交换区相关信息 • I/O设备号、缓冲、设备相关的数结构 • 文件系统相关指针 现场保护信息(cpu进行进程切换时): • 寄存器 • PC • 程序状态字PSW • 栈指针 进程状态:就绪 、运行、阻塞 a. ready:表示线程已经被创建,正在等待系统调度分配CPU使用权。 b. running:表示线程获得了CPU使用权,正在进行运算 c. waiting:表示线程等待(或者说挂起),让出CPU资源给其他线程使用 为什么除去new和terminated状态? 是因为这两种状态实际上并不存在于线程运行中,所以也没什么实际讨论的意义。对于Java中的线程状态无论是Timed Waiting ,Waiting还是Blocked,对应的都是操作系统线程的waiting(等待)状态。而Runnable状态,则对应了操作系统中的ready和running状态。
最新回复(0)