Linux常用命令(一)

Linux常用命令(一)

Jack · 2023-08-21739人阅读8人喜欢

[[toc]]

一、目录操作

ls:   #列出目录

    -a:   #参数: all ,查看全部的文件,包括隐藏文件
 
    -l:   #参数 列出所有的文件,包含文件的属性和权限,没有隐藏文件
cd#切换目录

/cd   #当前目录

cd .. #返回上一级目录

cd /.../... #切换绝对路径

cd .../.... #切换相对路径

pwd       #显示用户所在的目录


mkdir     #创建一个新的目录

mkdir -p  #创建多层目录

rmdir#删除一个空的目录

rmdir -p  #删除多层空的目录

cp:       #复制文件或目录 在文件所在目录执行 cp 要复制的文件 目标路径/


rm:       #移除文件或目录

    rm -f   #忽略不存在的文件,不会出现警告,强制删除!

    rm -r    #递归删除

    rm -i   #互动

    rm -rf  #相当于删库跑路


mv:         #移动文件与目录,或修改文件与目录的名称 在文件所在目录执行 mv 要移动的文件 目标路径/

    mv -f     #强制v

    mv -u     #只替换更新后的文件

hostname name      #修改主机名

tar -zxvf tar.gz   #解压命令

二、查看文件内容

#查看文本里的全部内容
cat notes.log 

#默认查看文本里面的前10行内容
head notes.log 

# -n 或 --number:由 1 开始对所有输出的行数编号。
head -n 10 notes.log 

 # 默认显示最后 10 行
tail notes.log 

# tail -f 显示 notes.log 文件的最后 10 行, 当有新内容添加时,会显示最新内容,直到按下ctrl+c 停止显示
tail -f notes.log 

# tail -n 显示文本最后20行
tail -n +20 notes.log

head [options] [file1] [file2]

三、vim

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。
但是目前我们使用比较多的是 vim 编辑器。
vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
地vim的三种模式:命令模式(Command Mode)、输入模式(Insert Mode)和命令行模式(Command-Line Mode)

vi-vim-cheat-sheet-sch1.gif

1.命令模式

  • i – 切换到输入模式,在光标当前位置开始输入文本。
  • x – 删除当前光标所在处的字符。
  • : – 切换到底线命令模式,以在最底一行输入命令。
  • a – 进入插入模式,在光标下一个位置开始输入文本。
  • o – 在当前行的下方插入一个新行,并进入插入模式。
  • O – 在当前行的上方插入一个新行,并进入插入模式。
  • dd – 删除当前行。
  • yy – 复制当前行。
  • p – 粘贴剪贴板内容到光标下方。
  • P – 粘贴剪贴板内容到光标上方。
  • u – 撤销上一次操作。
  • Ctrl + r – 重做上一次撤销的操作。
  • :w – 保存文件。
  • :q – 退出 Vim 编辑器。
  • :q! – 强制退出Vim 编辑器,不保存修改。

四、/etc/passwd目录详解

/etc/passwd 是用来保存用户信息的文件

以root为例:root : x : 0 : 0 : root : /root : /bin/bash

字段 含义
用户名(root) 登录系统时使用的用户名
密码(x) 密码标识
UID(0) 用户标识号
GID(0) 用户组标识号
注释性描述(root) 对用户名的描述信息,默认为用户名
|家目录(/root) 用户登录后系统后的家目录
命令解释器(/bin/bash) 用户使用的shell,默认为bash

Linux中的用户共有3种

  • 超级用户(root,UID=0)
  • 普通用户(UID 500-6000)
  • 伪用户(UID 1-499)

五、用户操作

useradd [username] # 创建用户

who # 查看所有登录的用户列表

whoami 查看当前登录用户的账户名

id [username] # 查询用户命令

passwd [username] # 修改密码

userdel -r [username] #删除用户

usermod -s /bin/bash [username] #修改用户登录shell

六、修改文件权限chmod

权限共分为三级:

  • 文件所有者(Owner)
  • 用户组(Group)
  • 其它用户(Other Users)

file-permissions-rwx.jpg

只有文件所有者和超级用户才可以修改文件或目录的权限

chmod mode file

mode [ugoa] [+-=] [rwxX]

#举栗:/tmp/file.txt

chmod u=rwx /tmp/file.txt # 赋予文件所有者对file.txt的读、写、执行权限

chmod g-x /tmp/file.txt # 取消用户组对file.txt的执行权限

chmod o+rx /tmp/file.txt # 增加其它用户对file.txt的读、执行权限

chmod a=rwx /tmp/file.txt # 赋予所有人对file.txt读、写、执行的权限

其中:

  • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
  • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
  • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

who 类型 描述
u user 文件所有者
g group 文件所有者所在组
o others 所有其他用户
a all 所有用户,相当于ugo

operator 的符号模式表:

Operator 描述
+ 为指定的用户类型增加权限
- 去除指定用户类型的权限
= 设置指定用户权限的设置,用户类型的所有权限重新设置

permission 的符号模式表:

模式 名字 描述
r(read) 设置为可读取权限
w(write) 设置为可写权限
x(execute) 执行 设置为可执行权限
X 特殊执行 只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行
s setuid/gid 当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限
t 粘贴位 设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位

八进制语法

chmod命令可以使用八进制数来指定权限。文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行。历史上,文件权限被放在一个比特掩码中,掩码中指定的比特位设为1,用来说明一个类具有相应的优先级。

# 权限 rwx 二进制
7 读+写+执行 rwx 111
6 读+写 rw- 110
5 读+执行 r-x 101
4 只读 r– 100
3 写+执行 -wx 011
2 只写 -w- 010
1 只执行 –x 001
0 无权限 000

举栗 - /tmp/file1.txt

赋予所有人读写执行的权限

chmod 777 file1.txt 

文件所有者拥有所有权限(7),用户组权限 读+写(6),其他人 读+执行(5)

chmod 765 file.txt

七、chown修改文件的所有者

Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令。

1.把 /var/run/httpd.pid 的所有者设置 root:

chown root /var/run/httpd.pid

Links

Install

# use npm
npm i @kangc/v-md-editor -S

# use yarn
yarn add @kangc/v-md-editor

Quick Start

import Vue from 'vue';
import VueMarkdownEditor from '@kangc/v-md-editor';
import '@kangc/v-md-editor/lib/style/base-editor.css';
import vuepressTheme from '@kangc/v-md-editor/lib/theme/vuepress.js';

VueMarkdownEditor.use(vuepressTheme);

Vue.use(VueMarkdownEditor);

Usage

<template>
  <v-md-editor v-model="text" height="400px"></v-md-editor>
</template>

<script>
  export default {
    data() {
      return {
        text: '',
      };
    },
  };
</script>

Refrence

sdfdsfs

sdfdsfs

点个赞吧