linux中最基础使用的命令

小白学习记录:

  • 前情提要:
    • Linux命令基础格式!
    • 查看 ls
      • 看目录的小技巧
    • 进入指定目录 cd
    • 查看当前工作目录 pwd
    • 创建一个新的目录(文件夹) mkdir
    • 创建文件 touch
    • 查看文件内容 cat、more
    • 操作文件、文件夹
      • - 复制 cp
      • - 移动 mv
      • - 删除【危险操作,请谨慎使用】 rm
        • 使用通配符
    • 在文件中查找指定文件 find
      • 过滤文件内容 grep
      • 统计内容数量 wc
    • 修改文件内容
      • echo 【翻译:回响】
        • 重定向 写入内容
      • 从后查看文件内 容tail【翻译:尾】
    • 文件的上传与下载 rz sz
  • vi/vim模式 【重要认知,请务必看】
  • 用户及权限管理
    • 用户
      • 给非root 用户分配root权限
      • 用户 用户组
      • 用户组管理
    • 权限……暂时没用到,跳过
  • 快捷键小技巧
    • 查看进程
  • 查看主机状态运行命令
    • 查看CPU、内存使用情况 top
    • 查看磁盘情况 df
    • 磁盘信息监控 iostat
    • 环境变量

前情提要:

-本文的目的在于启蒙,所以只会以最简约的方式展示这些操作的命令,而不是详尽的列举完所有的操作项。在实际应用中,你只需要根据一下大类去谷歌,找到更细节的内容。

-记录本人在从零开始学习这些命令时产生的疑问和自我解答。

-我们可以通过linux管理服务器,所以开始吧!

Linux命令基础格式!

无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:
command [-options][parameter]
command:命令本身
-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等语法中的!,表示可选的意思

查看 ls

ls [-alrtAFR] [name...]
参数 :
-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A-a ,但不列出 "." (目前目录)".." (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
-R 若目录下有文件,则以下之文件亦皆依序列出
  • ls -l /home/itheima
    ls是命令本身,-l是选项,/home/itheima是参数。意思是以列表的形式,显示/home/itheima目录内的内容。

  • ls -la /home/itheima
    命令选项可以混合使用,意思是-a和-l的叠加效果。
    在这里插入图片描述

看目录的小技巧

在这里插入图片描述
我们能看到以上输出的文件目录,有高亮和白色部分,基本上高亮的意思是这是一个文件夹,而白色为文件。但是这样区分目录性质是不太可靠的。于是我可以通过看红色框内容,以d开头的就是文件夹。
其中.开头文件意味着是默认隐藏的文件。

进入指定目录 cd

但Linux终端(命令行)打开的时候,会默认以用户HOME目录作为当前工作目录,我们可以通过cd命令,更改当前所在的工作目录。

cd [dirName]
dirName:要切换的目标目录。
实例
跳到 /usr/bin/ :
cd /usr/bin
跳到自己的 home 目录 :
cd ~
跳到目前目录的上上两层 :
cd ../..

绝对路径:以根目录为起点,路径描述以/开头。
相对路径:以当前目录为起点,路径描述无需以/开头。
在这里插入图片描述
特殊路径符:
. 表示当前目录,比如 cd ./Desktop 表示切换到当前目录下的Desktop目录内,和cd Desktop效果一致
.. 表示上一级目录,比如:cd.即可切换到上一级目录,cd../..切换到上二级的目录表示HOME目录
~ 表示HOME目录,比如:cd~即可切换到HOME目录或cd~/Desktop,切换到HOME内的Desktop目录

查看当前工作目录 pwd

pwd:Print Work Directory【打印当前工作目录】

在这里插入图片描述
这说明当前工作目录是在根目录/下的jcdata目录。

创建一个新的目录(文件夹) mkdir

mkdir:Make Directory【创建目录】

mkdir [-p] dirName
参数说明:
-p 一次性创建多个层级
实例
在工作目录下,建立一个名为 AAA 的子目录 :
mkdir AAA
在BBB目录下创建一个Test目录,如果不使用-p选项,当BBB目录不存在的时候,会创建失败。
所以我们可以使用-p支持一次性创建多个层级目录。
mkdir -p BBB/Test

创建文件 touch

touch filName

查看文件内容 cat、more

在这里插入图片描述
两者的区别在于,使用more可以将展示的内容以分页的方式展现。
使用空格翻页,使用q退出查看。

操作文件、文件夹

- 复制 cp

cp命令可以用于复制文件\文件夹
语法: cp [-r] 参数1 参数2
-r选项,可选,用于复制文件夹使用,表示递归
参数1,Linux路径,表示被复制的文件或文件夹
参数2,Linux路径,表示要复制去的地方

cp test1 test2 //将当前文件夹下的test1文件 复制到 test2文件(新建/覆盖)
当你想复制文件夹的时候需要带上 -r

- 移动 mv

mv命令可以用于移动文件\文件夹,mv命令来自英文单词:move
语法: mv 参数1 参数2
参数1,Linux路径,被移动的文件或文件夹
参数2,Linux路径,要移动去的地方,如果目标不存在,则达到一个移动并改名的效果。

mv test1.txt /  //将test1.txt移动到根目录下
mv test1.txt test2.txt //移动并重命名
移动文件夹并没有什么不同

- 删除【危险操作,请谨慎使用】 rm

rm命令可用于删除文件、文件夹
rm命令来自英文单词:remove
语法:rm [-r -f] 参数1 参数2......
参数N
-r选项用于删除文件夹
-f表示force,强制删除(使用之后不会弹出提示确认信息,没啥用)

普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示所以一般普通用户用不到-f选项
参数1、参数2、…、参数N 表示要删除的文件或文件夹路径,按照空格隔开
使用通配符
被查找文件名,支持使用通配符*来做模糊查询。符号*表示通配符,即匹配任意内容(包含空)
示例:test*,表示匹配任何以test开头的内容
    *test,表示匹配任何以test结尾的内容
    *test*,表示匹配任何包含test的内容基于通配符的含义,可以结合find命令做文件的模糊查询。(以下)

在文件中查找指定文件 find

语法:find 起始路径 -name "被查找的文件名"

find / -name 'test*' 从根目录下寻找文件名是任何以test开头的文件
你也可以通过文件大小去查找,不赘述。

过滤文件内容 grep

可以通过grep命令,从文件中通过关键字过滤文件行。
语法:grep[-n] 关键字 文件路径
选项-n,可选,表示在结果中显示匹配的行的行号。
参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用””将关键字包围起来参数
文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

统计内容数量 wc

可以通过wc命令统计文件的行数、单词数量等语法:wc[-c-m-1-w]文件路径
选项,-C,统计bytes数量
选项,-m,统计字符数量
选项,-l,统计行数
选项,-w,统计单词数量
参数,文件路径,被统计的文件,可作为内容输入端口

如果使用的时 不带选项 会以:行数 单词数 字符数 顺序输出

管道符 | 挺哇塞的一个符号 ,虽然我觉得我应该用不到。

修改文件内容

echo 【翻译:回响】

在这里插入图片描述

重定向 写入内容
重定向符: >>>
> 将左侧命令的结果,`覆盖`写入到符号右侧指定的文件中
> >将左侧命令的结果,`追加`写入到符号右侧指定的文件中

通过重定向符,我们可以向文件中写入内容	

在这里插入图片描述

从后查看文件内 容tail【翻译:尾】

使用tail命令,可以查看文件尾部内容,跟踪文件的最新更改

语法如下tail [参数] Linux路径参数,Linux路径,表示被跟踪的文件路径

有很多参数,可以这里查看,感觉用处不大,不赘述。

文件的上传与下载 rz sz

我使用的mobaxterm远程管理服务器,可以参考

vi/vim模式 【重要认知,请务必看】

在这里插入图片描述

解释起来有点复杂,看一下俩链接够用了。
1.视频
2.文档

用户及权限管理

用户

su和exit命令

来源英文单词:Switch User

语法:su [-] [用户名]
-符号是可选的,表示是否在切换用户后加载环境变量,建议带上
参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root

切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl+d

给非root 用户分配root权限

sudo命令【请自行百度】

语法:sudo 
其它命令需要以root用户执行visudo命令,增加配置方可让普通用户有sudo命令的执行权限

用户 用户组

用户组类似于管理系统中的角色,你可以将角色分配给用户,也就是赋予用户当前用户组下的权限。

用户组管理

以下命令需要在root用户执行

  • 创建用户组 useradd
useradd [-g -d] 用户名
·选项:-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g
·选项:-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名
  • 删除用户组 userdel
 userdel [-r] 用户名
选项:-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留
  • 查看,用户所属的组
id [用户名]
参数:用户名,被查看的用户,如果不提供则查看自身
  • 修改
usermod -aG 用户组名 用户名
  • 查看当前系统中有哪些用户\组
getent passwd 用户
getent group 用户组

权限……暂时没用到,跳过

  • 修改文件、文件夹权限信息 chmod
  • 使用chown命令修改文件、文件夹的所属用户和用户组

快捷键小技巧

  • ctrl + c 强制停止
  • ctrl + d 退出账户或登出程序专属页面 不能用于退出vi/vim
  • 历史命令搜索,可以查看之前使用过哪些命令。【第四分钟】
  history
  !
  ctrl + r
  • 光标移动快捷键
    ctrl + a 跳到命令开头
    ctrl + e 跳到命令结尾
    ctrl + 键盘左键 ,向左跳一个单词
    ctrl + 键盘右键 ,向右跳一个单词

  • 清屏
    ctrl + l 或者 命令:clear

查看进程

查看进程

查看主机状态运行命令

查看CPU、内存使用情况 top

类似于windows的任务管理器,默认每5秒刷新一次
语法:top [选项】
在这里插入图片描述
在这里插入图片描述

查看磁盘情况 df

语法:de [-h]

磁盘信息监控 iostat

语法:iostat [-x] [num1] [num2]

环境变量

语法:evn
Linux环境变量可以用户自行设置,其中分为:
临时设置,语法:export 变量名=变量值

永久生效

  • 当前用户生效,配置在当前用户的:~/bashrc文件中
  • 针对所有用户生效,配置在系统的:/etc/profile文件中
  • 并通过语法:source配置文件,进行立刻生效,或重新登录FinalShell生效
上一篇:Qt Creator常用的快捷键和常用功能


下一篇:Mysql的 存储过程(procedure)