探索Linux天下:初次接触和基本指令(文件操纵)

种地  金牌会员 | 2024-9-5 01:43:02 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 866|帖子 866|积分 2598



  

1.基本介绍和准备

   Linux是一种开源、免费的类Unix操纵系统内核,其开发始于1991年,由芬兰计算机科学家Linus Torvalds主导。Linux内核是操纵系统的核心部分,而完备的操纵系统则包括了Linux内核以及众多的软件工具和应用程序,形成了各种差别的Linux发行版(Distribution,简称"distro")
  我们最为熟知的操纵系统是Windows,它有着完备的图形界面化操纵,而Linux则是利用各种指令(很有程序员的感觉)
  这里我学习利用的是云服务器+xshell的组合:


  • 云服务器:市面上有很多,大家可按需选择。这里我利用的操纵系统是CentOS 7.6(基于Linux内核的一个操纵系统发行版)
  • xshell:Xshell 是一款 Windows 下的强盛的终端模拟器和 SSH 客户端。它主要用于长途登录和管理服务器
   Linux的历史发展也是极为巨大,这里我便不在继续赘述,更多空间留给知识的介绍
  
2.基本指令和Linux的基本操纵


  • 指令ssh root@[ip地点]:通过 SSH(Secure Shell)协议连接到长途服务器的下令

    • 输入后按下回车再输入暗码就好啦

  • 指令whoami:就是Who am I? 它用于体现当前登任命户的用户名


  • 指令who:体现当前登录到系统的用户信息。这个下令的输出包括登任命户的用户名、终端、登录时间等

   

  • 第一列就是用户名,我这里是root
  • 第二列是第二列是终端(tty 表示物理控制台,pts 表示伪终端,通常是通过SSH登录的)
  • 第三列是登录时间
  • 第四列可能体现IP地点或主机名,表示从哪里登录的
  

  • 指令clear:除当前终端或控制台上的屏幕内容,将终端窗口滚动至顶部(人如其名,就是clear)
  •        复制:Ctrl + insert
        粘贴:Shift + insert
        终止当前下令:Ctrl + C
        XShell全屏:Alt + Enter
  • 利用上下键跳转之前输入的指令

3.几个重要基本指令

3.1 ls - 列出文件和目次

用法:ls [选项] [目次]
   

  • -a:列出目次下的所有文件,包括以 . 开头的隐含文件。隐含文件通常是系统文件或设置文件,以 . 开头表示隐蔽。
  • -d:将目次本身像文件一样体现,而不是体现其下的文件。比如 ls -d 指定目次 将只体现指定目次的信息,而不会列出目次下的文件。
  • -l:以长格式(详细信息)列出文件。这将体现文件的权限、所有者、所属组、文件巨细、创建或修改时间等详细信息。
  • -n:用数字的 UID(用户标识)和 GID(组标识)代替名称。这对于体现文件所有者和组的数字标识符而不是用户名和组名很有用。
  • -R:列出所有子目次下的文件,即递归体现目次布局。
  • -1:一行只输出一个文件。这个选项通常用于在下令行中以一列的形式列出文件。
  • -t:以时间排序。文件和目次按照它们的修改时间举行排序,最新的文件会体现在前面。
  • -s:在文件名后输出该文件的巨细。这将以块为单位体现文件的巨细。
  • -F:在每个文件名后附上一个字符,表示文件的类型。例如,* 表示可执行的平凡文件,/ 表示目次,@ 表示符号链接,| 表示 FIFOs(命名管道),= 表示套接字(sockets)
  如果在利用 ls 下令时不指定目次或文件名,它将默认列出当前工作目次下的文件和子目次,相当于ls .
示例:ls -l

   total 4 表示当前目次下所有文件的总块数。这个总块数是当前目次下所有文件所占用磁盘空间的总和,以块(block)为单位
  3.1.1文件的知识


如许的一个巨细为0的文件,是不是就说明没有占用空间呢?
   在Windows上创建一个文本文件,纵然文件巨细为0KB,实际上也会占用一些磁盘空间。这是由于文件系统会为每个文件分配一个簇(Cluster)作为存储单位,而簇的巨细通常是4KB。即便文件内容为空,文件系统也需要至少一个簇来存储文件的元数据和分配信息
  文件 = 文件属性 + 文件内容,我们对文件的操纵要么对文件内容举行操纵,要么对文件属性举行操纵

  • 文件属性: 包括文件的元数据,如文件名、巨细、创建时间、修改时间、权限等。这些属性描述了文件的基本信息和特征。
  • 文件内容: 是文件的实际数据,通常是以二进制形式存储的。这是文件的实际内容,可以是文本、图像、音频等差别类型的数据。
在举行文件操纵时,我们可以执行以下两类主要操纵:


  • 对文件内容的操纵: 包括读取、写入、追加等操纵,实际上是对文件中的二进制数据举行处理。这是我们通常所说的文件读写操纵。
  • 对文件属性的操纵: 包括修改文件名、更改权限、设置时间戳等。这类操纵更多地关注文件的元数据。
3.1.2 .和..文件

   Linux和Unix系统中,隐蔽文件以 . 开头,例如 .example.txt。如许的文件在默认情况下不会被 ls 下令列出。如果想要体现所有文件,包括隐蔽文件,可以利用 ls -a 下令,此中 -a 选项表示体现所有文件,包括以 . 开头的隐蔽文件
  

  

  • .(当前目次):

    • . 代表当前目次。在下令行或文件系统中,利用 . 表示当前地点的目次。例如,如果你执行 ls .,它将列出当前目次下的文件和子目次。这对于明确指定当前工作目次是很有用的。

  • ..(上级目次):

    • .. 代表上一级目次。在文件系统中,利用 .. 表示当前目次的父目次。例如,如果你执行 cd ..,它将把当前目次切换到上一级目次。这在导航文件系统时很有用

3.2pwd - 体现当前工作目次

语法: pwd
功能: pwd (print working directory)下令用于体现当前工作目次的完备路径

3.2.1路径知识


  • 绝对路径
绝对路径是从文件系统的根目次开始描述文件或目次的路径。在Linux中,根目任命斜杠 / 表示,而在Windows中,每个驱动器都有自己的根目次,例如 C:\。绝对路径可以唯一地标识文件系统中的某个位置,不受当前工作目次的影响。
  1. /home/user/documents/file.txt
复制代码

  • 相对路径
相对路径是相对于当前工作目次或其他已知位置的路径。相对路径不包罗根目次信息,而是描述如何从当前位置导航到目的文件或目次。在相对路径中,利用 . 表示当前目次,利用 .. 表示上级目次。
  1. ../images/picture.jpg
复制代码
这个示例中,.. 表示上级目次,因此路径指向当前目次的上一级目次下的 images 目次中的 picture.jpg 文件

  • 文件路径和目次路径
路径可以是文件路径或目次路径,详细取决于路径的末了一部分是指向文件还是目次。

  • 分隔符
在Linux中,路径分隔符是正斜杠 /,而在Windows中,路径分隔符是反斜杠 \。大多数当代操纵系统和文件系统能够继续利用正斜杠或反斜杠表示的路径。

  • 绝对路径 vs. 相对路径


  • 绝对路径:

    • 完备指定文件或目次的位置,不依靠于当前工作目次。
    • 在差别系统上通常具有更好的可移植性。
    • 更适合用于脚本和程序中,确保稳定性。

  • 相对路径:

    • 相对于当前工作目次或其他已知位置,更简便。
    • 在文件移动或项目布局变革时可能更易维护。
    • 相对路径可能会受到当前工作目次的变革而产生影响。


  • 特别目次表示法


  • . 表示当前目次。
  • .. 表示上级目次

3.3 cd - 切换目次

语法:cd 目次名
功能:改变工作目次。将当前工作目次改变到指定的目次下(绝对和相对路径都行)

Linux的目次布局是一个多叉树


3.4 touch - 创建文件或更新时间戳

语法:touch [选项] 文件
功能:touch下令参数可更改文档或目次的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
   

  • -a 或 --time=atime 或 --time=access 或 --time=use:只更改文件的访问时间。
  • -c 或 --no-create:不建立任何文档。
  • -d:利用指定的日期时间,而非当前时间。
  • -f:此参数将忽略不予处理,仅负责解决BSD版本 touch 指令的兼容性标题。
  • -m 或 --time=mtime 或 --time=modify:只更改文件的修改时间。
  • -r:把指定文档或目次的日期时间,设成和参考文档或目次的日期时间相同。
  • -t:利用指定的日期时间,而非当前时间
  3.5mkdir - 创建新目次

语法:mkdir [选项] dir_name
功能:在当前目次下创建一个名为 dir_name的目次
   

  • -p, --parents 可以是一个路径名称。此时若路径中的某些目次尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目次,即一次可以建立多个目次
  


  • 创建单个目次:
    1. mkdir new_directory
    复制代码
  • 创建多个目次:
    1. mkdir dir1 dir2 dir3
    复制代码
  • 递归创建目次及其父目次:
    1. mkdir -p parent_directory/child_directory
    复制代码
3.6rm - 删除文件或目次

语法:rm [选项] [dir_name/dir]
功能:删除文件或目次
   

  • -f 纵然文件属性为只读(即写保护),亦直接删除
  • -i 删除前逐一询问确认
  • -r 删除目次及其下所有文件(r代表递归)
  示例:

  • 删除单个文件:
    1. rm file.txt
    复制代码
  • 删除多个文件:
    1. rm file1.txt file2.txt
    复制代码
  • 递归删除目次及其内容:
    1. rm -r directory
    复制代码
  • 强制删除,不提示:
    1. rm -f file.txt
    复制代码

3.7man - 体现下令手册页面

语法: man [选项] 下令
功能:Linux的下令有很多参数,我们不可能全记着,我们可以通过检察联机手册获取帮助
   

  • -k 根据关键字搜索联机帮助
  • num 只在第num章节找
  • -a 将所有章节的都体现出来,比如 man printf 它缺省从第一章开始搜索,知道就停止,用a选项,当按下q退出,他会继续往背面搜索,直到所有章节都搜索完毕
  3.7.1手册介绍

   Unix/Linux 系统手册页的八个主要部分的简要说明:
  

  • 第一章(1):平凡下令
  

  • 包罗了系统中可供一般用户利用的常规下令的手册页。这包括各种常见的下令,如 ls、cp、mv 等。
  

  • 第二章(2):系统调用
  

  • 包罗了系统调用的手册页,系统调用是应用程序与操纵系统内核之间的接口。这些手册页通常提供有关如何利用系统调用以及调用所需的头文件信息。
  

  • 第三章(3):库函数
  

  • 包罗了 C 库函数的手册页,这些函数由标准 C 库提供。这包括如 printf、scanf、malloc 等函数的详细信息。
  

  • 第四章(4):特别文件
  

  • 包罗有关特别文件(通常在 /dev 目次下)的手册页。这些文件代表装备,手册页描述了如何与这些装备文件举行交互。
  

  • 第五章(5):文件格式
  

  • 包罗有关文件格式的手册页。这包括设置文件、数据文件等,如 /etc/passwd,此中说明了文件中各字段的寄义。
  

  • 第六章(6):游戏
  

  • 预留给游戏利用,包罗了与游戏相干的手册页。
  

  • 第七章(7):附录和杂项
  

  • 包罗一些附加信息,如全局变量的说明,以及一些其他杂项。
  

  • 第八章(8):系统管理下令
  

  • 包罗了仅供系统管理员(root 用户)利用的系统管理下令的手册页。这包括诸如 ifconfig、mount、shutdown 等下令的详细信息。
  每个章节都包罗了对应类型的手册页,通过 man 下令可以方便地访问和阅读这些手册页,以获取有关下令、函数、文件和系统的详细信息
  3.8cp - 复制文件或目次

语法:cp [选项] 源文件或目次 目的文件或目次
功能: 复制文件或目次


  • cp指令用于复制文件或目次,如同时指定两个以上的文件或目次,且末了的目的地是一个已经存在的目次,
    则它会把前面指定的所有文件或目次复制到此目次中。若同时指定多个文件或目次,而末了的目的地并非一个已存
    在的目次,则会出现错误信息
   

  • -f 或 --force 强行复制文件或目次, 不论目的文件或目次是否已经存在
  • -i 或 --interactive 覆盖文件之前先询问用户
  • -r递归处理,将指定目次下的文件与子目次一并处理。若源文件或目次的形态,不属于目次或符号链接,则同等视为平凡文件处理
  • -R 或 --recursive递归处理,将指定目次下的文件及子目次一并处理
  



  • 我们还可以举行重命名

3.8.1nano介绍

nano - 文本编辑器
用法:nano [选项] 文件名
常用选项:


  • -c,–const:禁用控制键位。
  • -r,–restricted:限制访问,避免执行危险操纵。
  • -w,–nowrap:禁用自动换行。
基本操纵:


  • Ctrl + O:保存文件。
  • Ctrl + X:退出编辑器。
  • Ctrl + G:获取帮助。
示例:

  • 打开或创建文件举行编辑:
    1. nano filename.txt
    复制代码
  • 保存文件并退出:

    • 按 Ctrl + O,然后按 Enter 保存文件。
    • 按 Ctrl + X 退出编辑器。

nano 是一个简单易用的文本编辑器,适用于终端环境。它提供了基本的编辑功能,适合快速检察和编辑文本文件
3.9mv - 移动或重命名文件或目次

   mv下令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的下令,常常用来备份文件或者目次。
  语法: mv [选项] 源文件或目次 目的文件或目次
功能:

  • 视mv下令中第二个参数类型的差别(是目的文件还是目的目次),mv下令将文件重命名或将其移至一个新的目次中。
  • 当第二个参数类型是文件时,mv下令完成文件重命名,此时,源文件只能有一个(也可以是源目次名),它将所给的源文件或目次重命名为给定的目的文件名。
  • 当第二个参数是已存在的目次名称时,源文件或目次参数可以有多个,mv下令将各参数指定的源文件均移至目的目次中。
   

  • -f :force 强制的意思,如果目的文件已经存在,不会询问而直接覆盖
  • -i :若目的文件 (destination) 已经存在时,就会询问是否覆盖
  

  • 移动



  • 改名


这次Linux就先到这里啦,也是开始学Linux啦,关心大家支持!!!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

种地

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表