1. 分时的多用户、多任务的操作系统
  2. 多数的网络协议的支持(unix和tcp/ip协议是同时发展起来的),方便的远程管理(可以通过图形、命令行)
  3. 强大的内存管理和文件管理系统
  4. 大量的可用软件和免费软件(游戏与办公方面较少,Linux主要用于服务器与嵌入式领域),例如使用windows server上,构建一个平台,防火墙,邮件服务器等都是收费的。
  5. 优良的稳定性和安全性(很少在Linux上安装杀毒软件)
  6. 良好的可移植性和灵活性(几乎支持所有CPU平台)
  7. 可供选择的厂商多

  • 硬件:CPU平台
  • 内核层:Linux系统的心脏,所有的任务都由内核执行完成,内核与用户之间的交互有两种方式,一种是命令行的方式,一种是图形界面的方式。(Linux内核处理任何事物,都要有一个数字标记,例如文件的数字标识,叫做i节点,内核通过调用这些数字标识来进行对象的处理)
  • Shell层:通过命令行完成交互。
  • 应用层(图形界面):像微软的Windows一样,但是名字叫做X Window
    X Window系统特点(X
    Window是一种协议,制定了一些像tcp/ip一样的规定):

    • 独立于操作系统,灵活性非常强,例如可以安装多个X Window,登录时可以选择
    • 网络特性
    • 源代码免费

UNIX图形环境:CDE(Common Desktop Environment,通用桌面环境)

  1. 除了/之外,所有的字符都合法(/是目录层的分隔、表示符,只有一个/表明是root)。
  2. 有些字符最好不用,如空格符、制表符、退格符和字符@#¥&-等。
  3. 避免使用.作为普通文件名的第一个字符。在Linux中,默认.开头的文件为隐藏文件,不是普通文件。
  4. 大小写敏感(Linux源于UNIX,UNIX用C语言把内核绝大多数代码进行重写的,雅思培训C语言中是区别大小写的),但是在Windows中是不严格区分的。
  5. 终止命令:ctrl+c

命令格式: 命令 -选项 参数
例如: ls -la /etc
说明:

  1. 当有多个选项时,可以写在一起(选项:使用命令的时候有不同的操作方法,不同的设置)。
  2. 两个特殊的目录.和..,分别代表当前目录和当前目录的父目录。例如:可以回到上一级目录,cd与..间有一个空格。

命令路径
root可以执行的命令,所在路径:
/sbin
/usr/sbin

(bin是binary缩写,sbin是super binary的缩写,usr是user的缩写)
all users可以执行的命令所在路径:

/bin
/usr/bin

因此可以通过命令所在目录来查看其使用权限。

在Linux系统中,所有的东西都是文件,命令自然也是一个文件,是一个二进制文件(bin-binary)

命令所在路径:/bin/ls
英文原意是list,功能是显示目录文件
语法: ls 选项[-ald] [文件或目录]

常用选项

例如
查看根目录下的目录:
查看根目录下的所有文件:
查看文件的详细信息:,我们取出其中的一个进行分析

可以看到文件以d开头,通过文件的开头(即第一个字符)我们可以获取文件类型(以下是三种常见文件类型):

后面的9个字符,三个看成一组rwx r-x r-x:r-read 读、w-write 写、x-execute
执行,每三个字符作为一部分,代表一类用户,即:

  • rwx 代表所有者u(user)
  • r-x
    代表所属组g(group),比如我们希望其他几个用户对此文件也有权限,托福培训可以将这些用户放在一个组中,并对此组进行授权,在这里所属组具有读和执行的权限,没有写权限,因此用-代替
  • r-x 代表其他人o(others)

因此第一列字符告诉了我们文件类型和文件权限

第二列表示文件夹内文件和文件夹的总数量(包括文件夹本身),硬链接数
第三列表示文件或文件夹的拥有者
第四列表示文件或文件夹的所属的组

第五列表示文件或文件夹的大小,往往都是标记目录本身的大小,或者目录及其子目录的大小,数据块(block)是Linux中最小存储数据的单位,512字节,理论上数据块是可以调整大小的

第六列开始表示文件创建的时间或者最后被修改的时间
第九列(即最后一列)表示文件名

复合使用:查看test目录的详细信息

命令所在路径:shell内置命令
执行权限:所有用户
语法: cd [目录]
功能描述:切换目录
例子:

命令所在路径:/bin/pwd
英文原意:print working directory

命令所在路径:/bin/touch
语法: touch [文件名]
例子,在/test目录下创建文科testfile:

英文原意: make directory
命令所在路径:/bin/mkdir

例子,在/test目录下创建目录samlee,并再创建文件testfile:

英文原意:copy
命令所在路径:/bin/cp
语法:cp -R [源文件或目录][目的目录] or cp -R 复制目录

注:复制文件不需要使用任何选项,复制目录需要选项
常用选项:

例子:
(1)复制目录,将etc目录复制到test目录下

(2)将/test1目录下的file1复制到/test3目录,并将文件名改为file2:

(3)

英文原意:move
命令所在路径:/bin/mv

例子:
将当前目录下文件file1更名为file3:

将test目录下的inittab文件移动到tmp目录下,并更名为file.test:

英文原意:remove
语法:rm -r [文件或目录]
注:删除文件不需要加选项,删除目录需要加选项
常用选项:

例子:

注 :上述如果不使用强制删除-fr,会每次都会询问是否删除,十分麻烦

命令所在路径:/bin/cat
该命令用于查看文本文件的内容,后接要查看的文件名,personality作文通常可用管道与more和less一起使用(more:more
[文件名],分页显示文件内容),从而可以一页页地查看数据。对于more的浏览状态,有些常用选项:

语法:head/tail -num [文件名]
例子:

其中tail还有一个特殊的选项-f(用于动态显示,例如新上线一个服务,我们需要观察其日志,通过-f就可以时时显示它的动态信息,只要文件有变化,就显示文件的最新内容,默认显示10行):

英文原意:link
命令所在路径:/bin/ln
语法:ln -s[源文件][目标文件] ; ln -s 创建软链接

(1)创建软链接

通过ls命令观察软链接信息可以发现,所有的软链接文件的权限都是lrwxrwxrwx,软链接文件很小,实际就是一个符号链接,它具有什么权限不重要,因为最后真正访问的都是源文件,它的时间是创建这个软链接文件的时间,软链接类似于windows中的快捷方式,执行的时候都会链接到源文件

(2)创建硬链接

通过ls查看两个文件的详细信息发现,两个文件除了存放位置不同之外,其余信息完全相同,硬链接文件的大小与源文件一样大,类似于copy,但是不同之处是,硬链接是同步更新的(同步更新的原因是硬链接与源文件具有相同的inode,即i节点),其中的一个文件变化,另一个文件也会跟着进行变化;还有一点与cp命令的不同之处就是,假如:

/issue.hard的时间信息是执行当前操作的时间,与/etc/issue的时间是不同的,并且硬链接数也是不同的。硬链接不可以跨文件系统,即不可以把/test目录下的一个文件在/a目录下生成一个硬链接

以上就是Linux中常用的文件处理命令:ls、cd、pwd、touch、mkdir、cp、mv、rm、cat、head/tail、ln。后续将在学习的过程中继续总结相关命令。

Linux常用命令(一)之文件处理命令的更多相关文章

  1. Linux常用命令(第二版) --文件搜索命令

    文件搜索命令 1.which /usr/bin/which #显示系统命令所在目录,绝对目录,不能查找文件 格式:which [系统命令] e.g. which ls 附-whereis:也可以查找到 ...

  2. Linux常用命令学习2---(文件搜索命令locate find、命令搜索命令whereis which、字符串搜索命令grep、帮助命令man)

     1.文件搜索命令:locate [文件名]    在后台数据库中按文件名搜索,搜索速度比find快,耗费资源更少    例子:locate test.txt,就会显示文件名包含 test.txt的所 ...

  3. linux每日命令(30):Linux 用户及用户组相关文件、命令详解

    一. 用户.用户组概念及其文件结构详解 Linux用户只有两个等级:root及非root.Linux中还有一部分用户,如:apache.mysql.nobody.ftp等,这些也都是非root用户,即 ...

  4. PHP调用Linux的命令行执行文件压缩命令&&创建文件夹修改权限

    一开始,我和普通青年一样,想到用PHP内置的 ZipArchive纠结的是环境上没安装zip扩展,想采用用PHP调用Linux的命令行 ,执行压缩命令,感兴趣的朋友可以了解下,希望本文对你有所帮助 前 ...

  5. Linux查找并删除重复文件的命令行fdupes工具,dupeGuru图形工具

    查了几十个网页,找到这个接近满意的解决方案http://unix.stackexchange.com/questions/146197/fdupes-delete-files-aft... 不过正则里 ...

  6. 【linux学习笔记四】文件搜索命令

    一 文件搜索 locate //在后台数据库中按文件名搜索 搜索速度更快 locate 文件名 //locate命令所搜索的后台数据库 /var/lib/mlocate //更新数据库 updated ...

  7. Linux之间用SSH传输文件 一行命令实现

    把本机的文件传到目标: cd /home/ && tar czv test | ssh root@HostIP -p 22 'tar xz' 解释: 如你所见,这行命令其实由多个命令组 ...

  8. shell脚本命令 运行python文件&python命令行运行python代码

    单独的python文件运行的时候 报错: 在shell脚本中,运行shell脚本命令:在Python命令行中,运行Python代码.然而,“python hello.py”是一个脚本命令,不是pyth ...

  9. linux笔记:linux常用命令-目录和文件处理命令

    命令格式: 命令 [-选项] [参数] 例: ls -la /etc 注意:个别命令的使用不遵循此格式. 目录处理命令:ls(列目录) 更多选项: -h 以kb等利于人阅读的方式取代字节显示文件大小 ...

  10. 第3章 常用linux命令 3.5 文件压缩命令

    实验六 文件及目录的压缩解压缩相关命令的使用 [实验目的] 1.掌握linux压缩文件实质 2.掌握linux中压缩及解压缩指令的用法 [实验环境] 1. 标准配置PC一台 2. linux操作系统: ...

随机推荐

  1. [考试总结]noip模拟17

    爆零了! 菜爆了 弱展了 垃爆了 没有什么可以掩饰你的菜了 这次考试为我带来了第一个 \(\color{red}{ \huge{0}}\) 分,十分欣慰.... 最近的暴力都打不对,你还想什么正解?? ...

  2. odoo14开发之脚本自动生成代码

    通过解析excel,自动生成odoo代码实现 一.首先做一个字段配置的excel模板 第二步.读取excel里面的模板,并写入到txt文件里 逻辑代码: # -*- coding: utf-8 -*- ...

  3. intouch/ifix嵌入视频控件2(报警视频联动初步思路)

    在项目中有朋友遇到类似的需求,ifix中嵌入视频,并实现报警与视频的联动功能.诸如,重要设备启动时,摄像头自动弹窗,并持续一段时间自动弹窗关掉:设备故障时,摄像头自动截图,录像一段时间存储:设备停止时 ...

  4. 论文笔记:(TOG2019)DGCNN : Dynamic Graph CNN for Learning on Point Clouds

    目录 摘要 一.引言 二.相关工作 三.我们的方法 3.1 边缘卷积Edge Convolution 3.2动态图更新 3.3 性质 3.4 与现有方法比较 四.评估 4.1 分类 4.2 模型复杂度 ...

  5. 痞子衡嵌入式:嵌入式Cortex-M中断向量表原理及其重定向方法

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是Cortex-M中断向量表原理及其重定向方法. 接着前文 <嵌入式Cortex-M裸机环境下临界区保护的三种实现> 继续聊, ...

  6. 安卓安装https证书

    前置条件 1 手机要设置密码 然后安装charles 证书 2 赋予 adb shell root权限(安装magisk就行) adb shell # 连接手机进入shell模式 su root # ...

  7. 通过cmake在Android中调用c语言,且三方应用通过so库调用c语言

    1.  新建JniUtils类实现native方法 2.  在build中执行clean project 再rebuild project 生成class文件. 注意:最新版本的AndroidStud ...

  8. 超详细!Vue-Router手把手教程

    目录 1,router-view 2,router-link 3,重定向redirect 4,路由别名 5,路由传参props 5.1,布尔模式 5.2,对象模式 5.3,函数模式 6,路由守卫 6. ...

  9. sort,uniq,tr,cut,eval命令

    目录 一.排序命令sort 1.格式 2.常用选项 3.例子 二.去除重复行操作命令uniq 1.格式 2.常用选项 3.示例 三.字符转换命令tr 1.格式 2.常用选项 3.参数 4.示例 四.数 ...

  10. Java方法02——定义与调用

    方法的定义与调用 定义与调用 例子  package method; ​ public class Demon03 {     public static void main(String[] arg ...