通过指令深入了解Linux

文章目录

  • 1.简单介绍XShell
    • 1.1下载安装XShell
    • [1.2 使用XShell登录主机](#1.2 使用XShell登录主机)
    • [1.3 XShell下的复制粘贴](#1.3 XShell下的复制粘贴)
  • [2. Linux下的基本指令](#2. Linux下的基本指令)
    • [2.1 ls指令](#2.1 ls指令)
      • [2.1.1 对文件的理解](#2.1.1 对文件的理解)
      • [2.1.2 目录下的隐藏文件](#2.1.2 目录下的隐藏文件)
    • [2.2 pwd指令](#2.2 pwd指令)
    • [2.3 cd指令](#2.3 cd指令)
      • [2.3.1 Linux下目录结构的认识](#2.3.1 Linux下目录结构的认识)
    • [2.4 touch指令](#2.4 touch指令)
    • [2.5 mkdir指令](#2.5 mkdir指令)
    • [2.6 clear指令](#2.6 clear指令)

1.简单介绍XShell

未来我的所有关于Linux的讲解都是提供XShell登入远程的Linux云服务器来教学的,且以centos为例。

1.1下载安装XShell

xshell

下载安装时选择"home/school"为免费版本。

1.2 使用XShell登录主机

在XShell终端输入

shell 复制代码
ssh root@ip 

ip为你所购买的云服务器的ip地址。

如果网络通畅,将会提示用户输入密码(即云服务器的密码),输入即可成功登入。

选服务器可以考虑就近原则

个人计算机是要关机的,服务器是永远关机的,所以不要关掉你的云服务器。

1.3 XShell下的复制粘贴

复制 :ctrl + insert
粘贴 :shift + insert

如果不行的话。再加上fn。

2. Linux下的基本指令

在Windows上我们可以通过鼠标的点击来实现各种我们想法,比如打开一个文件,打开一个软件,关闭一个文件和软件。但是在XShell上是不行的,因为它没有图形化的界面,整个界面就只有各种字符。毕竟在早期的计算机上就是没有图形化的界面,大家操作计算机就是用指令来操作,Windows和Linux都是如此。

对指令操作的理解:先有的指令,然后才有的图形化界面 --- 而指令操作和图形化界面操作是没有区别的。

2.1 ls指令

语法:

shell 复制代码
ls [选项][目录或者文件]

功能

对于目录,该命令会列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。
常用选项:

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
  • -d 将目录象文件一样显示,而不是显示其下的文件。 如: ls --d 指定目录
  • -i 输出文件的 i 节点的索引信息。 如 ls --ai 指定文件
  • -k 以 k 字节的形式表示文件的大小。 ls --alk 指定文件
  • -l 列出文件的详细信息。
  • -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
  • -F 在每个文件名后附上一个字符以说明该文件的类型, "*"表示可执行的普通文件; "/"表示目录; "@"表 示符号链接; "|"表示FIFOs; "="表示套接字(sockets)。(目录类型识别)
  • -r 对目录反向排序。
  • -t 以时间排序。
  • -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
  • -R 列出所有子目录下的文件。 (递归)
  • -1 一行只输出一个文件。

2.1.1 对文件的理解

通过这个文件,我想到了一个问题:创建一个空文件,是否会在磁盘中占据空间呢?

可能有人会说不占空间,大小那都写了0kb。这个答案是错误的。

一定占磁盘空间的,因为文件名 大小 属性,属性数据,本质也是数据,计算机都是记录下来的。

也就是说:文件 = 文件内容+文件属性

我们对文件的操作,本质是:

  • 要么对文件内容进行操作
  • 要么对文件属性进行操作
    当你在Linux环境下输入ls -l就会显示出文件的详细信息,这也是占用磁盘空间的。

2.1.2 目录下的隐藏文件

当我们输入:

shell 复制代码
ls -a或者 ls -la

这个隐藏文件是什么呢?

一个点的代表了当前目录,

两个点的代表了上级目录。

当我们需要返回上级目录时就可以使用指令

shell 复制代码
cd ..

其实Windows也有隐藏文件哦,大家可以去文件里面找找怎么查看。

2.2 pwd指令

语法

shell 复制代码
pwd

功能 :显示用户当前所在的目录。
常用选项

shell 复制代码
[yui@iZbp19b5lvg8xtpf1tzrenZ test]$ pwd
/home/yui/test

2.3 cd指令

Linux系统下,磁盘的文件和目录被组成一颗目录树,每个节点都是目录或者文件。

语法

shell 复制代码
cd [目录名]

功能 :改变工作目录。将当前工作目录改变到指定的目录下。
举例

shell 复制代码
cd ..:返回上级路径
cd /home/yui/test:绝对路径
cd ../code:相对路径
cd ~:进入用户家目录
cd -:返回最近访问的目录

2.3.1 Linux下目录结构的认识

什么是路径呢?

几乎所有的操作系统,文件或者目录都是树状结构的。

像/home/yui/test就是路径,/就是路径的分割符。除了最后一个/后面的名字可能是文件,其余的都一定是目录或者说是文件夹。

Linux的整体目录结构是一颗多叉树的样子。其中:

  • 叶子节点,一定是普通文件或者空目录
  • 非叶子节点,一定是目录
    访问一个文件的本质需要先找到它,找到一个文件的本质就是在一颗多叉树中进行节点对的查找

路径的本质就是多叉树的搜索路径,具有唯一性

绝对路径与相对路径

从根目录开始定位一个叶子文件,形成的路径叫绝对路径

相对于自身当前所处的目录为参考点,定位一个文件的路径叫相对路径

在centos中有一个指令可以很直观的到树状目录,它就是tree

在使用的前还是要安装这个指令的,要用root权限

shell 复制代码
yum install -y tree

2.4 touch指令

语法

shell 复制代码
touch [选项] ...文件...

功能

touch命令参数可新建一个不存在的文件,也可以更改文档或者目录的时间,包括存取时间和更改时间
常用选项

  • -a 或--time=atime或--time=access或--time=use只更改存取时间。
  • -c 或--no-create 不建立任何文档。
  • -d 使用指定的日期时间,而非现在的时间。
  • -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
  • -m 或--time=mtime或--time=modify 只更改变动时间。
  • -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
  • -t 使用指定的日期时间,而非现在的时间

举例

2.5 mkdir指令

语法

shell 复制代码
mkdir [选项] dirname...

功能

在当前目录下创建一个名为 "dirname" 的目录
常用选项

  • -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立 好那些尚不存在的目录,即一次可以建立多个目录。
    举例
shell 复制代码
mkdir -p test/test1:递归建立多个目录

2.6 clear指令

语法

shell 复制代码
clear

功能

当画面写满了,输入clear清理屏幕。

相关推荐
api茶飘香14 分钟前
守护应用边界:通过反射API实现安全的输入输出过滤
java·开发语言·python·安全·django·virtualenv·pygame
杀死一只知更鸟debug15 分钟前
策略模式的小记
java·开发语言·策略模式
xiaojiesec16 分钟前
第145天:内网安全-Linux权限维持&Rootkit后门&Strace监控&Alias别名&Cron定时任务
linux·运维·安全
efls11116 分钟前
Qt_了解Qt Creator
开发语言·qt
请揣满RMB20 分钟前
Qt常用控件——QRadioButton和QCheckBox
开发语言·c++·qt
阿巴~阿巴~20 分钟前
C_深入理解指针(五) —— sizeof和strlen的对比、数组和指针笔试题解析、指针运算笔试题解析
c语言·开发语言·数据结构·算法
sco528221 分钟前
【Shiro】Shiro 的学习教程(三)之 SpringBoot 集成 Shiro
spring boot·后端·学习
安全在心中1 小时前
python-网页自动化(三)
运维·python·自动化
爱吃桃子的ICer1 小时前
[UVM]3.核心基类 uvm_object 域的自动化 copy() compare() print() pack unpack
开发语言·前端·ic设计
Slow1 小时前
自动化焊缝定义程序fe-safe
运维·python·自动化