《云计算学习日记Day7》—— 从零开始的云计算之旅
今天是系统学习云计算的第七天,记录了关于我的云计算学习,后续将每日更新我的笔记。欢迎大家一起来学习,如果内容有遗漏和错误,还请大家多多指正和包涵,谢谢大家。

命令行基础

如何编写命令行

什么是命令

  • Linux命令
    • 用来实现某一类功能的指令或程序
    • 命令的执行依赖于解释器
    • 解释器:人→解释器(翻译官)→内核→硬件
    • 解释器:内核有多个解释器,/etc/shells这个文件记录了解释器的位置,一般情况下,有四个:/bin/sh、/bin/bash、/usr/bin/sh、/usr/bin/bash。默认的是/bin/bash
  • Linux命令的分类
    • 内部命令:属于解释器的一部分
    • 外部命令:解释器之外的其他程序

命令行的一般格式

基本用法:命令 [选项…] [参数…]

  • 命令:决定了命令行的核心
  • 选项:调控命令的执行方式
  • 参数:命令的操作对象,如目录或文件

快速编辑技巧

  • Tab键自动补全
    • 可补齐命令字、选项、参数、文件路径、软件名、服务名
    • 可以体验一下按一下tab和两下tab
  • 快捷键
    • Ctrl + l:清空整个屏幕
    • Ctrl + c:废弃当前编辑的命令行
    • Esc + .或者Alt + .:粘贴上一个命令的参数
    • Ctrl + w:删除一部分内容(删除到空格)

mount挂载操作

什么是挂载?

就像在Windows中一样,点开我的电脑之后,插入U盘,我们需要双击U盘图标才能对U盘的数据进行操作,这个U盘图标就像一个中介,我们通过这个图标来建立数据的传输

在Linux命令行中没有这样的图标,所以我们需要找一个其他的媒介来“建立连接”,这个媒介就叫挂载点

挂载光盘或分区

命令:mount [光盘文件位置] [挂载点]

首先我们需要创建一个挂载点,假设它就是/dvd,然后再进行挂载

[root@bogon ~]# mkdir /dvd              #创建一个空目录
[root@bogon ~]# ls /dev/cdrom           #查看光盘文件
/dev/cdrom
[root@bogon ~]# mount /dev/cdrom /dvd   #进行挂载操作
mount: /dvd: WARNING: source write-protected, mounted read-only. #成功,警告只读
[root@bogon ~]# ls /dvd                 #查看/dvd目录下的内容,检测是否成功
AppStream  BaseOS  EFI  images  isolinux  LICENSE  media.repo

卸载已挂载的设备或分区

命令:umount [挂载点]

[root@bogon ~]# umount /dvd        #进行卸载挂载操作
[root@bogon ~]# ls /dvd            #检测是否卸载成功
[root@bogon ~]#                    #检测为空,卸载成功

一个允许、一个不允许、一个建议

  • 允许一个设备,挂载到不同挂载点目录
  • 不允许一个挂载点目录,挂载多个设备
  • 建议挂载点目录最好自己创建

目录及文件管理

~:表示家目录,存储用户个性化设置的目录

查看及切换目录

使用pwd、cd

  • pwd——print working directory
    • 用途:查看当前工作目录
  • cd——change directory
    • 用途:切换工作目录
    • 格式:cd [目标文件夹位置]

ls列出文档及属性

ls——List

格式:ls [选项] [目录或文件名]

常用命令选项

  • -l:以长格式显示,显示详细信息
  • -h:提供易读的容量单位(K、M等)
  • -d:显示目录本身(而不是内容)的属性
  • -A:显示所有内容,包含隐藏数据
  • -R:递归显示内容(tree命令,tree [目录] 也可以试一下这个命令)

使用通配符

通配符使用:针对不确定的文档名称,以特殊字符‘*’表示任意多个任意字符

例子:

[root@bogon ~]# ls /boot/anaconda-ks.cfg
/root/anaconda-ks.cfg
[root@bogon ~]# ls /boot/a
ls:无法访问 '/root/a':没有那个文件或目录
[root@bogon ~]# ls /boot/a*
/root/anaconda-ks.cfg
[root@bogon ~]# ls /etc/*tab
/etc/anacrontab  /etc/crypttab  /etc/inttab
/etc/crontab     /etc/fstab     /etc/mtab

?:代表单个字符(必须要有一个)

[root@bogon ~]# ls /etc/??tab
[root@bogon ~]# ls /dev/tty?
[root@bogon ~]# ls /dev/tty??

[a-z]:连续范围中的一个,若无则忽略

{a,min,xy}:多组不同的字符串,全匹配

别名的定义

  • 查看已设置的别名
    • alias
  • 定义新的别名
    • alias 别名名称=‘实际执行的命令’
  • 取消已设置的别名
    • unalias 别名名称
  • 永久定义别名:配置文件
    • 进入文件 /root/.bashrc
    • 按‘i’进入插入模式
    • 在空白行添加alias命令
    • :wq保存退出
[root@bogon ~]# alias                  #先查看已有别名
alias cp='cp -i'
alias egrep='egrep --color=auto'
.
.
.
alias zgrep='zgrep --color=auto'
[root@bogon ~]# alias hn='hostname'    #为命令hostname添加新别名
[root@bogon ~]# alias                  #再次查看别名
alias cp='cp -i'
alias egrep='egrep --color=auto'
.
.
alias hn='hostname'                    #刚刚添加的别名会出现在里面
.
.
alias zgrep='zgrep --color=auto'
[root@bogon ~]# unalias hn             #删除别名
[root@bogon ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
.
.
.
alias zgrep='zgrep --color=auto'       #命令hostname的别名hn消失

新建目录

mkdir创建目录

  • mkdir——Make Directory
    • 格式:mkdir [-p] [路径]目录名…
    • 加上-p之后表示连同父目录也一起创建
[root@bogon ~]# tree /opt        #查看/opt的树结构
/opt

0 directories, 0 files
[root@bogon ~]# mkdir -p /opt/aa/bb/cc/dd  #创建dd,连同它的父目录一起创建
[root@bogon ~]# tree /opt                  #检查一下是否创建成功
/opt
└── aa
    └── bb
        └── cc
            └── dd

4 directories, 0 files

复制/删除/移动

cp复制

  • cp——copy
    • 格式:cp [选项] 源文件 目标路径
    • 选项:-r 递归,复制目录时必须有此选项
    • 其他用法:目标路径用‘.’代替,表示将数据复制到当前工作路径下
[root@bogon ~]# tree /opt
/opt
└── aa
    └── a.txt

1 directory, 1 file
[root@bogon ~]# cp /opt/aa/a.txt  /opt
[root@bogon ~]# tree /opt
/opt
├── aa
│   └── a.txt
└── a.txt

1 directory, 2 files

rm删除

  • rm
    • 格式:rm [选项] [目标目录或文件]
    • 选项:-r、-f:递归删除(含目录)、强制删除
[root@bogon ~]# tree /opt
/opt
└── aa
    └── bb

2 directories, 0 files
[root@bogon ~]# rm -r /opt/aa      #这里如果也使用了选项-f,那就不会有下面的输入Y,直接删除
rm:是否进入目录'/opt/aa'? y
rm:是否删除目录 '/opt/aa/bb'?y
rm:是否删除目录 '/opt/aa'?y
[root@bogon ~]# tree /opt
/opt

0 directories, 0 files

mv移动/改名

  • mv——move
    • 格式:mv [源文件位置] [目标路径]
    • 用途1:移动文件,源文件会消失
    • 用途2:重命名
[root@bogon ~]# ls /opt                #查看/opt,里面是空
[root@bogon ~]# mkdir /opt/aa
[root@bogon ~]# touch /opt/a.txt
[root@bogon ~]# tree  /opt             #查看结构
/opt
├── aa
└── a.txt

1 directory, 1 file
[root@bogon ~]# mv /opt/a.txt  /opt/aa
[root@bogon ~]# tree /opt              #移动操作完后再次查看,检查操作是否成功
/opt
└── aa
    └── a.txt

1 directory, 1 file

文本内容操作

vim文本编辑器

使用vim创建/修改文件

vim基本操作

  • 保存并退出 :wq
  • 放弃修改并退出 :q!

文件过滤内容

查找文本内容

  • grep
    • 用途:根据字符串模式提取文本行
    • 格式:grep [选项] ‘匹配字符串’ 文本文件
    • 选项:-v -i 分别是取反匹配、和忽略大小写
[root@111 ~]# cat /opt/grep.txt 
a
b
c
d

[root@111 ~]# grep  a  /opt/grep.txt 
a
[root@111 ~]# grep -v a  /opt/grep.txt 
b
c
d

[root@111 ~]# grep -i A  /opt/grep.txt 
a

grep的高级使用

  • ^word 以字符串word开头
  • word$ 以字符串word结尾
  • ^$ 表示空行

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐