Linux命令

Linux命令

1、vi和vim快捷键

  1. 拷贝当前行:【yy】

  2. 拷贝当前行向下的5行:【5yy】 并粘贴(输入【p】)

  3. 删除当前行:【dd】

  4. 删除当前行向下的5行:【5dd】

  5. 在文件中查找某个单词:

    • 命令行下,【/关键字】,回车查找,输入【n】就是查找下一个

  6. 设置文件的行号/取消文件的行号

    • 命令行下,【set nu】、【set nonu】

  7. 编辑/etc/profile文件,在一般模式下,到该文件的最末行【G】和最首行【gg】

  8. 编辑/etc/profile文件,在一般模式下,将光标移动到20行:

    • 输入【20】,在输入【shift+g】

2、关机&重启

  1. 立刻进行关机:【shutdown -h now】、【halt】

  2. 一分钟后关机:【shutdown -h 1】

  3. 现在重新启动计算机:【shutdown -r now】、【reboot】

  4. 把内存的数据同步到磁盘:【sync】

    • 注意:不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写入磁盘中,防止数据丢失

3、用户登录和注销

  1. 登录:【su - 用户名】

  2. 注销用户:【logout】

4、操作用户

  1. 添加用户:【useradd 用户名】

    • 当创建用户成功后,会自动创建和用户同名的家目录

    • 也可以通过【useradd -d】指定目录,新的用户名,给创建的用户指定家目录

  2. 给用户设置密码:【passwd 用户名】

  3. 删除用户:【userdel 用户名】

    • 删除用户以及用户主目录:【userdel -r 用户名】

  4. 查询用户信息:【id 用户名】

  5. 查看当前用户或登录用户:【whoami】、【who am i】(查看的是第一次登录的用户)

  6. 切换用户:【su - 要切换的用户名】

  7. 显示当前用户所在的目录:【pwd】

5、用户组

  1. 新增组:【groupadd 组名】

  2. 删除组:【groupdel 组名】

  3. 增加用户时直接加上组:【useradd -g 用户组 用户名】

  4. 修改用户的组:【usermod -g 用户组 用户名】

    • 当添加一个新用户时,未把此用户分到一个组中,则系统默认创建一个与用户名相同的组名并把该用户放入此组中

6、运行级别

  • 切换运行级别【init[0123456]】

    1. 关机

    2. 单用户(找回丢失密码)

    3. 多用户状态没有网络服务

    4. 多用户状态有网络服务

    5. 系统未使用保留给用户

    6. 图形界面

    7. 系统重启

7、帮助信息

  1. 获取帮助信息:【man [命令或配置文件]】

  2. 获取shell内置命令的帮助信息:【help 命令】

8、pwd指令

  • 显示当前工作目录的绝对路径

9、ls指令

  • 【ls [选项] [目录或是文件]】

  • 【ls -a】:显示当前目录中所有的文件和目录,包括隐藏的

  • 【ls -l】:以列表的方式显示信息

  • 【ls -h】:显示便于人们解读的信息

10、cd指令

  • 【cd [参数]】:切换到指定目录

  • 【cd ~】:回到自己的家目录,比如root【cd :】

  • 【cd ..】:回到当前目录的上一级目录

11、mkdir指令

  • 【mkdir [选项] 要创建的目录】

  • 【-p】:创建多级目录

12、rmdir指令

  • 【rmdir [选项] 要删除的空目录】:删除空目录,若目录下有内容则无法删除

  • 【rm -rf】:删除非空目录

13、rm指令

  • 【rm [选项] 要删除的文件或目录】

  • 【-r】:递归删除整个文件夹

  • 【-f】:强制删除不提示

14、touch指令

  • 【touch 文件名称】:创建空文件

15、cp指令

  • 【cp [选项] source dest】:拷贝文件到指定的目录

  • 【-r】:递归复制整个文件夹

16、mv指令

  • 【mv source dest】:移动文件与目录,或重命名

  • 移动文件:mv /temp/movefile /targetFolder

  • 重命名:mv oldNameFile newNameFile

17、echo指令

  • 【echo [选项] [输出内容]】:输出内容到控制台

18、head指令

  • 【head 文件】:显示文件的开头部分内容,默认情况下head指令显示文件的钱10行内容

  • 【head -n 5 文件】:查看文件的头5行内容,其中5可以是任意行数

19、tail指令

  • 【tail 文件】:查看文件尾10行内容

  • 【tail -n 5 文件】:查看文件的尾5行内容,其中5可以是任意行数

  • 【tail -f 文件】:实时追踪该文档的所有更新

20、cat指令

  • 【cat [选项] 要查看的文件】:查看文件的内容

  • 【-n】:显示行号

    注意:cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上管道命令 |more

    eg:cat -n /etc/profile |more

21、>和>>指令

输出重定向和追加

  • 【ls -l > 文件】:列表的内容写入文件a.txt中(覆盖写)

  • 【ls -al >> 文件】:列表的内容追加到文件a.txt的末尾(不覆盖)

  • 【cat 文件1 > 文件2】:将文件1的内容覆盖到文件2

  • 【echo "内容" >> 文件】:追加

22、history指令

  • 【history】:查看所有已经执行过的历史命令

  • 【history 10】:显示最近使用过的10个指令,其中10可以时任意数

  • 【!5】:执行历史编号为5的指令

23、ln指令

  • 【ln -s [原文件或目录] [软链接名]】:给原文件创建一个软链接

  • eg:在/home目录下创建一个软链接myroot,连接到/root目录 : ln -s /root /home/myroot

  • eg:删除软链接myroot:rm /home/myroot

24、date指令

  • 【date】:显示当前时间

  • 【date -s】:字符串时间

  • 【date + %Y】:显示当前年份

  • 【date + %m】:显示当前月份

  • 【date + %d】:显示当前是哪一天

  • 【date + ""%Y-%m-&d %H:%M:%S"】:显示年月日、时分秒

25、cal指令

  • 【cal】:不加选项,显示当前日历

  • 【cal 2020】:显示2020年日历

26、more指令

  • 【more 要查看的文件】:基于VI编辑器的文本过滤器,以全屏方式展示

  • 快捷键:

    • 空白键(space):向下翻一页

    • Enter:向下翻一行

    • q:立刻离开more,不在显示该文件内容

    • Ctrl+F:向下滚动屏

    • Ctrl+B:返回上一屏

    • =:输出当前行的行号

    • :f :输出文件名和当前的行号

27、less指令

  • 【less 要查看的文件】:比more指令更加强大的指令

  • 快捷键:

    • /字串:向下搜寻字串的功能;n:向下查找;N:向上查找

    • ?字串:向上搜寻字串的功能;n:向上查找;N:向下查找

28、find指令

  • 【find [搜索范围] [选项]】:从指定的目录向下递归地遍历其各个子目录,将满足条件地文件或者目录显示在终端

  • 【-name<查询方式>】:按照指定的文件名查找模式查找文件

  • 【-user<用户名>】:查找属于指定用户名所有文件

  • 【-size<文件大小>】:按照指定的文件大小查找文件

    • eg1:按文件名:根据名称查找 /home 目录下的 hello.txt 文件

      find /home -name hello.txt

    • eg2:按拥有着:查找 /opt 目录下,用户名称为 nobody 的文件

      find /opt -user nobody

    • eg3:查找整个Linux系统下大于200M的文件(+n大于,-n小于,n等于,单位有k、M、G)

      find / -size +200M

29、locate指令

  • 【locate 搜索文件】:快速定位文件路径

    注意:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指定创建locate数据库

30、which指令

  • 【which ls】:查看ls指令在哪个目录下

31、grep指令和管道符号|

  • 【grep [选项] 查找内容 源文件】:过滤查找

  • 【-n】:显示匹配行及行号

  • 【-i】:忽略字母大小写

  • 管道符号 | :表示将前一个命令的处理结果输出传递给后面的命令处理

    • eg:请在hello.txt文件中,查找"yes"所在行,并且显示行号

      • cat /home/hello.txt | grep "yes"

      • grep -n "yes" /home/hello.txt

32、gzip/gunzip指令

  • 【gzip 文件】:压缩文件,只能将文件压缩为*.gz文件

  • 【gunzip 文件.gz】:解压缩文件命令

33、zip/unzip指令

  • 【zip [选项] XXX.zip 将要压缩的目标地址】:压缩文件和目录的命令

  • 【-r】:递归压缩,即压缩目录

  • 【unzip [选项] 将要解压的目标地址 XXX.zip】:解压缩文件

  • 【-d<目录>】:指定解压后文件的存放目录

    • eg1:将/home下的所有文件或文件夹进行压缩成myhome.zip

      zip -r myhome.zip /home/

    • eg2:将myhome.zip解压到/opt/tmp目录下

      mkdir /opt/tmp

      unzip -d /opt/tmp /home/myhome.zip

34、tar指令

  • 【tar [选项] XXX.tar.gz 打包的内容】:打包目录,压缩后的文件格式.tar.gz

  • 【-c】:差生.tar打包文件

  • 【-v】:显示详细信息

  • 【-f】:指定压缩后的文件名

  • 【-z】:打包同时压缩

  • 【-x】:解包.tar文件

    • eg1:压缩多个文件夹,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz

      tar -zcvf pc.tar.gz /home/pig.txt /home/cat/txt

    • eg2:将 /home 的文件夹压缩成 myhome.tar.gz

      tar -zcvf myhome.tar.gz /home/

    • eg3:将myhome.tar.gz解压到 /opt/temp2 目录

      mkdir /opt/temp2

      tar -zxvf /home/myhome.tar.gz /opt/temp2

35、chmod指令

修改文件或目录的权限

  1. 通过+、-、=变更权限

    • u:所有者 g:所有组 o:其他人 a:所有人

      • chmod u=rwx,g=rx,o=x 文件/目录名

      • chmod o+w 文件/目录名

      • chmod a-x 文件/目录名

  2. 通过数字变更权限:

    • r = 4、w = 2、x = 1 rwx = 7

      • chmod u=rwx,g=rx,o=x 文件/目录名 相当于 chmod 751 文件/目录名

36、chown&chgrp指令

  • 【chown 新用户名 文件名】:修改文件所有者

  • 【chgrp 新组名 文件名】:修改文件所在组

  • 【chowm 新用户名 : 新组名 文件名】:同时修改文件所有者和所在组

    • 【-R】如果是目录,则使其下所有子文件/目录递归生效

  • 【usermod -g 新组名 用户名】:修改用户所在组

  • 【usermod -d 目录名 用户名】:改变该用户登录的初始目录,用户需要又进入到目录的权限

37、权限

ls -l中显示的内容如下:

-rwxrw-r-- 1 root root 1212 Feb 2 03:39 abc

  1. 第0位确定文件的类型:d、-、l、c、b、

    • l:链接,相当于windows的快捷方式

    • d:目录,相当于windows的文件夹

    • c:字符设备文件,鼠标,键盘

    • b:块设备:硬盘等

  2. 第1-3位确定所有者,(该文件的所有者)拥有该文件的权限。----User

  3. 第4-6位确定所属组,(同用户组的)拥有该文件的权限。----Group

  4. 第7-9位确定其他用户拥有该文件的权限。----Other

  5. rwx作用到文件:

    1. [r]代表可读:可以读取,查看

    2. [w]代表可写:可以修改,但是不代表可以删除该文件,删除一个文件的前提条件是对该文件所在的目录有写权限,才能删除该文件

    3. [x]代表可执行:可以被执行

  6. rwx作用到目录上:

    1. [r]代表可读:可以读取,ls查看目录内容

    2. [w]代表可写:可以修改,对目录内创建+删除+重命名目录

    3. [x]代表可执行:可以进入该目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李巴巴

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值