linux - 基本命令

文件操作类

ls [ option ] [ file ]

-a 列出所有项目( la )

-l 列出文件的全部信息,包括权限、主组、所属人等  ( ll )

    (

        ll /proc/{ pid }/fd     列出当前pid打开的文件

    )

cat [option] [file]

显示文件

-n 显示文件行数,包括空行

-b 显示文件行数,不包括空行

head [option] [file]

显示文件前10行

-n<数字>:指定显示头部内容的行数;

-c<字符数>:指定显示头部内容的字符数;

-v:总是显示文件名的头信息;

-q:不显示文件名的头信息

tail [option] [file]

显示文件的后10行(一般用于查看日志)

-n<数字>:指定显示尾部内容的行数

-f 动态的查看文件底部

grep [option] [seach word] [file]

在指定的文件中搜索字段,[seach word]可以是正则表达式

-n 显示行数

less [option] [file]

带翻页的查看文件,可以上下翻页

more [option] [file]

带翻页的查看文件,只能向下翻页

vim [option] [file]

+ 从文档的末尾进行编辑

-O 打开多个文件 

(

    :qa 关闭所有窗口

    ctrl + w + w 切换窗口

    可以通过vimdiff [ path ] 来对比文件

)

[ command mode  ]

1,查找

(1)定位

a. 光标定位    h 左 j 下 k 上 l 右

b.快速定位   shift+3 行首  shift+4 行尾 shift+9 文首 shift+0 文尾部

c.行定位 <num>G   第几段  num gr

d. / 查找  按enter跳转  n 展示下一个   (支持正则表达式)

e. :<num> 进入第几行

   (2) 替换

    :范围  s/old/new/选项

    :1,10 s/aa/bb/    在1到10行中寻找aa替换为bb

    :5,$   s/aa/bb/   $表示最后一行

    :% s/^aa/11&/g   全文aa开头的前面加上11

    / 可以替换为 @、#

(3)文件操作

[ line ] command [ path ]

line   指定行

path 即位另存为的路径

command:

a. :w 保存

b. :q 推出

c. :x 保存并退出

d. :q! 不保存并推出

e. :w! 强制保存

    (4) 设置临时环境

    :set nu       设置行号

    :set ic        不区分大小写

    :set ai       自动缩进

    :set list      控制字符

    :set nonu       取消设置行号

    :set noic       

    永久环境

        path:

        /etc/vimrc     影响所有用户

        ~/.vimrc        影响某一个用户

        vim [ path ]

2,编辑

a, 复制  yy yy3 ygg

b, 粘贴 p

c, 删除 dd dd3 dgg

d, 删除光标所在的字符 x

e,从光标处删到行尾D

f,撤销 u

g,反撤销 ctrl+r

h,自动补全 ctrl+p ctrl+n

3,可视化

a,批量插入  步骤:ctrl+v 选中行 shift+i 进行编辑 esc 批量插入

4,进入其他模式

a,  a、i、o 、A进入插入模式

b,  esc 进入命令模式

c,v、ctrl+v、V 进入可视模式

5,注意

ctrl+s 锁屏(不锁操作)  ctrl+q 解锁

系统操作类

type [option] [ command ]

查看命令类型,是别名、内置、还是某个文件

-a 查看所有类型

file [ option ] [ path ]

查看文件类型,例如文本文件、二进制文件、可执行文件等

stat [ option ] [ path ]

查看文件名称,例如文件名称、大小、权限、创建时间、修改时间等

groupadd [option] [ groupName ]

添加一个祖

-g 新组使用的gid

-p 加密后的新用户密码(必须是密文)

groupdel [ option ] [ groupName ]

删除一个组

id [ option  ] [ userName ]

查看用户的uid、组信息

useradd [ option ] [ username ]

新增加一个用户( 增加一个新的用户的时候不指定祖组的时候,同时会新增一个同名的组  )

-g 新账户指定用户的主组

-G 新账户指定附加组

-u 指定用户的uid

-s 指定用户的shell

-m 创建用户的主目录(utubun 不会自动在/home/下创建用户主目录)

        shell 目录

            /sbin/nologin     无法登录shell。仅作为运行进程,访问FTP的用户

            /bin/bash         正常bash

        用户类目录

            /etc/group         用户组文件

            /etc/passwd       用户账号信息

            /etc/shadow        用户密码信息

            /var/spool/mail   用户账号目录

    )

userdel [ option ] [ userName ]

-r 删除组目录和邮件池

passwd [ option ] [ userName ]

设置密码(管理员才可以用userName参数)

-d 删除指定账户的密码

usermod [ option ] [ userName ]

修改用户信息(用法和useradd 基本一致)

-g 强制使用该组为新主组

-G 新的附加组列表

-a 将-G上的附加祖进行添加

-M 添加多个用户到一个祖

-d 将该用户从该祖删除

chage [ option ] [ userName ]

用户密码信息设置

-d 过期时间(如果过期将强制用户修改密码)

chown [ option ] [ userName.groupName ] [ path ]

更改文件的所有者或所属组

chgrp [ option ] [ groupName ] [ path ]

修改用户组

chmod [ option ] [ mod ] [ path ]

修改文件属性权限

-R 递归修改

(

    rwx -wx r-x rw-

    o+x a+x +x(忽略a)

    u=rwx,g=r-x,o=--x,g+s(继承属组)

    777,124,707

)

(

    权限对象

        属主:u

        属组:g

        其他:o

        全部:a

    权限属性

        可读:r(1)

        可写:w(2)

        可执行:x(4)

)

getfacl [ option ] [ path ]

查看详细的文件类型权限,包括不同的组

setfacl [ option ] [ groupOption ] [ path ]

单独修改某个用户或组下的文件权限

-m 更改权限

-x 删除

groupOption

(

    u:mingyudeng:rwx    (修改用户mingyudeng的文件权限为rwx)

    g:mingyudeng:-wx

    d:u:mingyudeng:-w-   ( 对以后的继承,现在下面的目录不影响 )

)

        mask:最高属性

        ll 权限顺序为  root、mask、group、+

    )

awk [ option ]

分割

-F { print $[ line ] }  打印第几行的元素

uniq [ option ]

聚合

-c 列出该类的个数

tee [ option ] [ path ]

输出到文件,和重定向相比在命令行中有提示( 默认覆盖  )

-a 追加而非覆盖

猜你喜欢

转载自blog.csdn.net/Mayness/article/details/84317061