一天一个linux命令

283 阅读4分钟

前言

linux的学习对于初学者来说,我觉得最好的方式就是随学随记忆。每次有需要都要记载下来,这是初学步骤。随着理解的不断加深,那么就要分体系的去记忆、梳理linux的不同姿势。认知如逆水行舟,不进则退!加油。

文件、文件夹命令

文件夹重命名或移动文件夹

mv 命令

mv 旧文件夹名 新文件夹名

mv /usr/bin/old_folder /usr/bin/new_folder
mv /usr/bin/old_folder /usr/bin2/old_folder

在指定的目录下查找文件或者文件夹

find 命令

find 目标文件夹 文件或文件夹名

Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

本次我们只记忆 -name参数,此参数后跟随文件或文件夹名称。(-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写)

示例:

查找文件名为:jenkins.war的文件

image.png

查找文件夹:intrl-ucode

image.png

创建文件夹

Linux mkdir(英文全拼:make directory)命令用于创建目录。

mkdir [-p] dirName

参数说明

  • -p 确保目录名称存在,不存在的就建一个。

image.png

复制文件夹

1、cp

Linux cp(英文全拼:copy file)命令主要用于复制文件或目录。

cp [options] source dest

cp [options] source... directory

参数说明

  • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。

实例:

image.png

image.png

2、scp

scp

Linux scp 命令用于 Linux 之间复制文件和目录。
scpsecure copy 的缩写, scplinux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。
scp 是加密的,[rcp](https://www.runoob.com/linux/linux-comm-rcp.html) 是不加密的,scp 是 rcp 的加强版。

scp涉及参数较多,我们不一一展开。例如现在我要在一台linux服务器,要往192.168.2.23机器传输文件,做法如下:

image.png 想做扩展的朋友可以自行查询linux菜鸟教程。

grep

Linux grep 命令用于查找文件里符合条件的字符串。

grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。

语法

grep [-abcEFGhHilLnqrsvVwxy][-A<显示行数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]

示例:根据某个字符串,查询该字符串前后文本信息命令:grep-A|B n"key"file 其中:

   A:表示在字符串之后 after  context

   B:表示在字符串之前 before context

   n:要获取多少行文本 line number

   key:为要查找的字符串

file:文件名

实例:grep -A 100 -B 100 -i ‘哈哈哈’ catalina.out

-i表示忽略大小写。

当然,如果我们想获取异常日志的前10行和后10行,不用加-A和-B,使用如下命令就可以了:

实例:grep -10 -i ‘抓不到我’ catalina.out

cat

还有,只是想单纯看下字符串出现的情况,使用cat+grep也是可以的

查询字符串命令: cat fileName|grep ‘要查找的字符串’

实例:cat catalina.out|grep ‘2018041417434200258001’

vi

使用vi也可以在日志中定位某个字符串,姿势如下: 1、命令模式下输入“/字符串”,例如“/哈哈哈”。

2、如果查找下一个,按“n”即可。

用户、用户组命令

用户命令

  • useradd git // 新建用户git

  • passwd git //为git 用户设置密码

  • userdel username // 删除用户username

  • rm -rf username // 删除用户username所在目录

用户相关信息将出现在/etc/passwd

用户组命令

  • groupadd groupname  //添加用户组

  • groupdel groupname  //删除用户组

用户组相关信息将出现在/etc/group