zoukankan      html  css  js  c++  java
  • linux 对文件,文件夹,密码等基础命令

    linux
    #linux 认识
    1 linux 界面介绍
    图形界面: Gnome桌面 KDE
    文本界面: 需要linux命令
    2 界面切换
    图形--->文本 ctrl+alt+F3-F6 init3 (可以开启多个文本界面)
    文本--->图形 ctrl+alt+F2 init5
    级别切换(runlevel) init 5 ;init 3
    小知识:1判断有无网络:ping baidu.com
    2终端尺寸调节:变大(ctrl shift +) 减小(ctrl -)
    3清屏 :(ctrl l)字母‘l’
    4 添加KDE桌面
    yum grouplist
    yum - y groupinstall "name"
    3 终端
    用户和计算机进行命令交互的窗口.类似于windows cmd窗口
    4文本界面提示符详解:
    [root@www ~]#
    root 当前用户
    www 计算机名称或部分名称
    ~ ~当前路径 表示家目录
    #当前为管理员 $普通用户
    使用PS1命令修改提示符

    #linux目录及基本命令
    1 inux目录介绍
    boot 存放启动文件
    dev 存放设备文件
    etc 存放配置文件
    home 普通用户家目录,以/home/$username的方式存放
    media 移动存储自动挂载目录,以 /media/$device_name的方式来存放
    mnt 手动挂载目录
    opt 三方软件安装目录
    proc 内存系统文件
    root 管理员家目录
    run 里面的东西是系统运行时需要的, 不能随便删除. 但是重启的时候应该抛弃. 下次系统运行时重新生成
    srv 服务相关数据
    sys 系统文件
    tmp 临时文件夹
    usr 存放库文件、文档、命令、用户数据等
    var 日志存放
    lib 库文件
    2命令的格式为:
    命令 [命令选项] [参数]
    学会看语法:
    {必选项}[可选项]
    举例
    ls -a /tmp 等价 ls –all /tmp
    ls 命令
    -a 命令选项 简写使用- 全写--
    /tmp 参数
    3 使用type命令来区分命令是内部还是外部命令:
    [root@www ~]# type type
    type 是 shell 内嵌

    [root@www ~]# type cd
    cd 是 shell 内嵌

    [root@www ~]# type clear
    clear 是 /usr/bin/clear
    4 linux命令存放路径
    [root@www ~]# echo $PATH (环境变量) #echo 是输出的意思 如echo "hello world"
    /usr/local/sbin
    /usr/local/bin
    /usr/sbin
    /usr/bin
    区别:bin的命令任何人都可以使用,sbin的命令称为特权命令,只能管理用使用
    5 linux 基本命令
    1)清屏命令:clear 快捷键 ctrl+l
    2)帮助命令:man
    3)进入文件夹命令: cd
    4)列出当前目录内容命令:ls [-a -l -d ]
    ls –F 文件夹后加/显示
    ls –x 按水平对齐方式列出档案
    ls –m 以”,”隔开档案
    ls –t 按时间排序档案
    ls –a 显示隐含档案
    ls –l 显示详细信息,此命令等同于ll。
    ls –d 显示目录而不是其内容
    ls -h 以K、M、B的形式进行显示
    ls -R
    5)显示主机名:hostname
    6)显示日期时间:date [-s %F]
    7)显示日历:cal
    8)计算器:bc
    浮点运算 scale 指定小数点位数
    echo "scale=2;100/3"|bc
    9)重启命令:reboot shutdown -r init 6
    10)注销命令:logout
    11)关机命令:halt shutdown -h init 0
    12) 显示当前操作系统和机器的信息: uname
    13) 显示当前路径: pwd

    # 文件和文件夹的命令
    文件夹的操作
    新建文件夹:mkdir
    命令选项
    -v 显示信息 mkdir -v wanghua
    -p 递归创建 mkdir -vp wanghua/wang/hua

    文件夹改名:mv

    文件夹查看:ls

    文件夹的删除:rmdir

    rmdir 空文件夹的删除 rmdir name
    -p 多级空的文件夹的删除:rmdir -p wanghua/a/b(后面要写全) 递归删除
    rm -rf 非空文件夹的删除:rm -rf text2

    文件夹移动:mv

    文件夹拷贝:cp [-r -p -f]


    文件的操作
    文件的新建(修改3time):touch filename
    inode(数据信息) :stat filename
    命令选项:
    -a 只修改文件的access(访问)时间.
    -c 或--no-create  不创建不存在的文件。
    -d 使用指定的日期时间,而非现在的时间
    -m 指修改Modify(修改)时间,而不修改access(访问)时间
    -r file 使用指定file文件的时间戳(access,modify)更新文件的时间戳(access,modify)
    -t 将时间修改为参数指定的日期,如:10011150代表10月8号11点55分
    拓展:linux文件的三time
    stat命令:打印信息节点(inode)内容
    atime:(access time)显示的是文件中的数据最后被访问的时间,比如系统的进程直接使用或通过一些命令和脚本间接使用。
    mtime: (modify time)显示的是文件内容被修改的最后时间。
    ctime: (change time)显示的是文件的权限、拥有者、所属的组、链接数发生改变时的时间。当然当内容改变时也会随之改变 rm命令

    文件的改名:mv
    命令语法:
    mv old_file new_file

    文件的查看:ls
    linux 文件颜色意义
    绿色文件: 可执行文件,可执行的程序
    红色文件:压缩文件或者包文件
    蓝色文件:目录
    白色文件:一般性文件,如文本文件,配置文件,源码文件等
    浅蓝色文件:链接文件,主要是使用ln命令建立的文件
    红色闪烁:表示链接的文件有问题
    黄色:表示设备文件
    灰色:表示其他文件
    文件类型
    - 普通文件
    d 目录
    l 链接文件
    b 设备文件
    c 字符设备
    s 套接字文件
    p 管道文件
    文件内容的查看:cat

    文件的删除:rm [-i -r -f]
    -i 删除前逐一询问确认。
    -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
    -r 将目录及以下之档案亦逐一删除。

    文件的拷贝:cp [-a -r -f -p] cp -aprf text 桌面
    命令语法
    cp [options] 源文件或目录 目标目录

    命令选项
    -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容
    -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
    -f:覆盖已经存在的目标文件而不给出提示。
    -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
    -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
    -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
    -l:不复制文件,只是生成链接文件。

    文件的移动:mv
    命令选项
    -b:若需覆盖文件,则覆盖前先行备份。
    -i:若指定目录已有同名文件,则先询问是否覆盖旧文件;
    -f:force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;
    -u:若目标文件已经存在,且 source 比较新,才会更新(update)

    拓展:mv src dST
    改名 dst是一个文件夹的时候 执行是移动
    dst不是一个文件夹的时候 执行改名

    文件内容的查看
    cat 打印文件内容
    -n 或 --number: 由 1 开始对所有输出的行数编号。
    -b 或 --number-nonblank: 和 -n 相似,只不过对于空白行不编号。

    head 输出文件的开始部分
    -c, --bytes=SIZE 打印起始的SIZE字节
    -n, --lines=NUMBER 显示起始的NUMBER行,而非默认的起始10行
    -q, --quiet, --silent 从不显示给出文件名的首部

    tail 打印文件的末尾部分
    -f 循环读取
    -v 显示详细的处理信息
    -c<数目> 显示的字节数
    -n<行数> 显示文件的尾部 n 行内容

    --小知识:1上下键的使用
    2双击table (显示提示信息)
    3rm -rf / 慎用(系统瘫痪)


    # vim 文本编辑器

    -终端与vim切换
    ctrl+z 可以stop vim退出到终端。
    fg 在终端工作完后,想要返回vim,则输入fg然后回车

    1 vim四种模式以及切换
    命令模式 ESC
    插入模式 i
    替换模式 R
    末行模式 :
    退出 :q
    2 命令行模式
    存盘 ZZ 保存退出

    光标移动:移动光标 h j k l 左 下 上 右
    光标移到本行开头home
    移到本行末尾 end
    光标移到末尾 G
    光标移到开头gg
    光标移动一个单词w

    粘贴复制:
    复制一行 yy 复制 n行 nyy
    粘贴 p


    删除:
    删除字符 x 向后删除 X 向前删除
    删除一行 dd ndd
    删除一个单词 dw

    撤销:
    撤销操作 u 向上一步 . 重复上一次操作

    查找:
    查找/string define 转义字符 查找“/bin/bash” //bin/bash

    3 插入模式(编辑/输入)
    aio

    4 末行模式
    :q 不保存退出
    :q! 强制不保存退出
    :w 保存
    :wq 保存退出
    替换
    :s/old/new 只替换光标所在行的第一个old string
    :s/old/new/g 将本行(光标)的所有old string替换为new string g global n代表一个行号
    (全行):%s/old/new/g 将本文中所有的old string替换为new string
    :1,2s/old/new/g 替换1到2行中的old string为new string
    :.,2s/old/new/g .代表光标所在行 当前行到第二行的
    :2,$s/old/new/g 替换2到最后一行中的old string为new string

    :set nu 显示行号
    :set nonu
    :!command 在vim编辑器中执行一条命令(不许要退出当前的编辑,可以在编辑器中执行命令,类似退出编辑器执行命令)


    查找
    /string 将光标定位到string 所在的行。
    ?string 将光标移动到最近的一个包含 string 字符串的行
    :n 把光标定位到文件的第n 行。

    5替换模式

    命令行下按R键进入替换模式
    退出
    esc

    6相关配置文件

    ~/.viminfo vim历史编辑文档

    ~/.vimrc vim个性设置文档


    # 用户和组
    linux用户分类

    超级管理员: UID为0 root用户拥有至高无上的命令,root用户不能改名

    系统用户:UID小于1000,用于管理服务,一般不允许登陆

    普通用户:UID大于或等于1000,权限较小,允许登陆,只能使用bin下命令

    1.用户创建,删除,修改
    --查看用户 su - user01
    useradd - create a new user or update default new user information
    -c, --comment 描述
    -d, --home HOME_DIR 家目录
    -e, --expiredate EXPIRE_DATE 过期时间
    -f, --inactive INACTIVE 是否启用过期机制
    -g, --gid GROUP 指定组ID号
    -G, --groups GROUP1[,GROUP2,...[,GROUPN]]] 附加组
    -m, --create-home 建立家目录
    -M 不建立家目录
    -N, --no-user-group 不指定用户同名组
    -r, --system 指定该帐号是系统帐号
    -s, --shell SHELL 指定登录shell
    -u, --uid UID 指定用户ID号
    -U, --user-group 指定用户创建用户同名组
    -o 创建用户是可以uid重复

    注意:用户名不能超过 32 个字符

    userdel
    userdel - delete a user account and related files
    -f, --force
    -r, --remove 删除主目录及邮箱

    change
    -h, --help display this help message and exit
    -m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
    -M 密码保持有效的最大天数。
    -W 用户密码到期前,提前收到警告信息的天数。
    -E 帐号到期的日期。过了这天,此帐号将不可用。
    -d 上一次更改的日期 如果设置为0 用户下次登录必须改密码
    -i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用
    -l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。


    2 密码设置passwd

    passwd user01 (root下为user01设置密码)
    echo "123" | passwd --stdin user01

    -l lock
    -u unlock
    -d delete a passwd for an account
    -S This will output a short information about the status of the password for a given account.
    --stdin (对应以上change命令)
    echo linux |passwd --stdin user01 直接设置密码

    3密码文件
    etc/passwd
    User account information.
    [用户名]:[密码]:[UID]:[GID]:[身份描述]:[主目录]:[登录shell]
    /etc/shadow
    Secure user account information.
    用户名:这是用户登录系统时使用的用户名,它在系统中是惟一的
    口令:此字段存放加密的口令
    最后一次修改的时间:标识从某一时刻起到用户最后一次修改口令的天数
    最小时间间隔:两次修改口令之间的最小天数
    最大时间间隔:口令保持有效的最多天数,即多少天后必须修改口令
    警告时间:从系统开始警告到口令正式失效的天数不活动时间:口令过期多少天后,该账号被禁用失效时间:指示口令失效的绝对天数(从1970年1月1日开始计算)标志:未使用

  • 相关阅读:
    docker-compose 快速部署Prometheus,监控docker 容器, 宿主机,ceph -- cluster集群
    docker-jenkins SSH Publishers时踩的坑
    docker-compose 修改zabbix images 添加微信报警插件 时间同步 中文乱码 添加grafana美化zabbix
    docker-compose 快速部署持续集成测试环境 Gitlab+Harbor+Jenkins pipeline 实现 tag run docker Images
    WEB程序开发基础·JSP的基本语法
    FIFO 与O_NOBLOCK
    投影
    信号量、互斥锁和条件变量的区别
    python装饰器
    python 生成器
  • 原文地址:https://www.cnblogs.com/huahuawang/p/12731209.html
Copyright © 2011-2022 走看看