Linux命令自习随笔记录

一、系统基本命令
halt 关闭系统
poweroff 关闭系统
init 0    关闭系统
init 1    单用户模式,只root用户进行维护
init 2 多用户模式,不能使用NFS
init 3 完全多用户模式
init 4 安全模式
init 5 图形化界面
init 6 重启
shutdown -r now 重启
shutdown -r +10 十分钟后重启
shutdown -h now    关闭系统
shutdown -h 23:25 系统将会在今天23:25关机
reboot 重启
logout 注销
sync 将数据由内存同步到硬盘中

passwd:更改密码


二、文件操作
cat filename 从第一个字节开始查看文件内容
tac filename 从最后一行开始反向查看文件内容
more filename 查看一个长文件内
less filename 类似于more 命令,可前后翻页,切屏
head -n filename 查看前N行
tail -n filename 查看后N行

wc filename 显示文本的行数、单词 字节数
wc -l filename 显示行数
wc -w filename 显示单词数
wc -c filename 显示字节数


tr (translate or delete character) 字符处理命令,用于转换或者删除字符
tr [option]... SET1 [SET2]
tr -d :删除出现在字符集中所有的字符

命令行编辑:
光标跳转:
    Ctrl+a 跳到命令行首
    Ctrl+e 跳到命令行尾
    Ctrl+u 删除光标至命令行首的内容
    Ctrl+k 删除光标至命令行尾的内容
    Ctrl+l、clear 清屏

命令历史:
    查看命令历史:history
    清空命令历史:history -c
    删除制定位置的命令:history -d n 
    删除指定位置的命令:history -d OFFSET {n}
    执行命令历史中的第N条命令: !n
    执行命令历史中倒数第N条命令:!-n
    执行上一条命令:!!

给命令起别名:
    alias 别名='COMMAND [options] [args]'


命令替换:$(COMMAND),反引号:`COMMAND`
    把命令中某个子命令替换为器质性结果的过程
    eg:touch file-$(date +%F-%H-%M-%S).txt  生成时间格式的文件


bash支持的引号
    ``:命令替换
    "":弱引用,可以实现变量替换
    '':强引用,不完成变量替换


文件名通配 globbing
    *:任意长度的任意字符
    ?:任意单个字符
    []:匹配值定范围内的任意单个字符
        eg:[0-9] [a-z] [A-Z] [a-g] [a-zA-Z][0-9a-zA-Z]
        [:space:]空白字符
        [:punct:]标点符号
        [:lower:]小写字母
        [:upper:]大写字母
        [:alpha:]大小写字母
        [:digit:]数字
        [:alnum:]数字和大小写
    [^]:匹配指定范围外的任意单个字符

 

 

用户: UID    /etc/passwd
组:GID        /etc/group


用户管理
    useradd,userdel,usermod,passwd,chsh,chfn,figer,id,chage
    增加用户 useradd [options] username
        -u UID 指定用户ID 
        -g GID 指定用户基本组
        -G GID,... 指定附加组,可以有多个
        -c "COMMENT" 指定注释信息
    删除用户 userdel [OPTIONS] username 
    userdel 默认不会删除用户的家目录如需删除家目录加参数 -r
    userdel -r username

组管理命令
    groupadd, groupdel,groupmod,gpasswd


权限管理
r: 读     w: 写     x :执行
0    000 --- :无权限
1    001 --x : 执行权限
2    010 -w- : 写
3    011 -wx : 协和执行
4    100 r-- : 只读
5    101 r-x : 读+执行
6    110 rw- : 读+写
7    111 rwx : 读写执行

755    rwxr-xr-x 
640    rw-r-----
权限管理chown,chgrp,chmod,umask
    chown(只有管理员可以使用此命令)
        chown USERNAME FILE,...改变文件的属主
        chown -R USERNAME FILE,... 递归改变目录及其内部文件的属主
        chown --reference=/path/to/file1 file2  参考file1的属主设置file2的属主属组
        chown USERNAME:UGROUP FILE 改变属主属组
        chown :Ugroup 改变属组
    chgrp(只有管理员可以使用此命令)
        chgrp USERNAME FILE,...改变文件的属主
        chgrp -R USERNAME FILE,... 递归改变目录及其内部文件的属主
        chgrp --reference=/path/to/file1 file2  参考file1的属主设置file2的属组
    chmod:修改文件的权限
        修改三类用户的权限(MODE用8进制权限表示)
            chmod MODE FILE,...
            chmod -R 
            chmod --reference=/path/to/file
        修改某类用户或某些类用户的权限(MODE用rwx表示、用户类别(u、g、o、a))
            chmod 用户类别=MODE file
            chmod 用户类别+|-MODE  file

 


注意标准输出和标准错误输出不是同一个数据流
> :覆盖输出
>> : 追加输出
2>:重定向错误输出
2>>:追加错误输出
&>:重定向标准输出和错误输出至同一个文件

<:输入重定向


set -C:禁止对已经存在的文件使用覆盖重定向
    强制覆盖输出,则使用>|
set +C: 关闭上述功能

查找文件之find
find ./ -name test.sh  查找当前目录下查找名字为test.sh的文件
find ./ -name '*.sh'    查找当前目录下后缀为.sh的所有文件
find / -name "[A-Z]*"    查找根目录下大写字母打头的所有文件
find /tmp -size 2M    查找/tmp下等于于2M的所有文件
find /tmp -size +2M    查找/tmp下大于2M的所有文件
find /tmp -size -2M    查找/tmp下大小小于2M的所有文件
find ./ -size +4k -size -5M    查找当前目录下大于4K小于5M的所有文件
find ./ -perm 777    查找当前目录下文件权限为777的所有文件或者目录


vi 命令行模式下
    yy:复制光标所在的行
    3yy:复制光标所在行向下复制三行
    
    p:粘贴

    dd:剪切 光标所在行
    2dd:剪切 光标所在行向下两行
    D:从当前光标开始剪切,一直到行末
    d0:从当前光标开始剪切,一直到行首
    x:删除当前光标所在的字符,每次只删除一个
    X:删除当前光标后面的字符,每次只删除一个
    
    选中一片代码
    v:从光标所在的字符开始
    V:
    光标移动
    h左j下k上l右
    H:当前屏幕的上方
    M:当前屏幕的中间
    L:当前屏幕的下方

    Ctrl+f:向下翻一页代码
    Ctrl+b:向上翻一页代码

    Ctrl+d:向下翻半页代码
    Ctrl+u:向上翻半页代码

    20G:快速定位到第20行代码
    G:快速回到整个代码的最后一行
    gg:快速回到整个代码的第一行

    w:切换到下一个单词
    b:切换到上一个单词

    u:撤销
    Ctrl+r反撤销


    

三、Linux之正则表达式

正则表达式 REGEXP
元字符
    \:转义字符
    x|y:匹配x或y

    匹配次数
        *:匹配其前面子表达式任意次;等价于{0,}
        +:匹配前面子表达式一次或者多次;等价于{1,}
        ?:匹配前面子表达式0次或着1次;等价于{0,1}
        {n}:匹配前面子表达式n次;
        {n,}:匹配前面子表达式出现至少n次;
        {n,m}:匹配前面子表达式出现至少n次最多m次
    定位符:
        ^:匹配输入字符串的开始的位置
        $:匹配输入字符串结尾的位置
        \b:匹配一个单词边界,即字与空格之间的位置
        \B:非单词边界匹配
    常见字符集合:
        \d:任意数字字符,相当于[0-9]
        \D:任意非数字字符,相当于[^0-9]
        \s:任意空白字符,包括Space,Tab,换页符等。等价于[\r\n\t\f\v]
        \S:任意非空白字符,等价于[^\f\n\r\t\v]
        \w:任意字母、数字、下划线;等价于[A-Za-z0-9_]
        \W:任意非字母数字下划线;
        \t:制表符
        \v:垂直制表符
        \f:换页符
        \r:回车符
        \n:换行符
    字符簇:
        [[:alpha:]] 任何字母
        [[:digit:]] 任何数字
        [[:alnum:]] 任何数字和字母
        [[:space:]] 任何空白字符
        [[:upper:]] 任何大写字母
        [[:lower:]] 任何小写字母
        [[:punct:]] 任何标点符号
        [[:xdigit:]] 任何16进制数字

Linux三剑客
grep、sed、awk
sed基本用法 sed(流编辑器)
    sed默认不编辑源文件,仅对末世空间中的数据做处理。sed可依照script的指令,来处理、编辑文本文件。    Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
    sed(Stream Editor)
语法:    1、sed[-hnV][-e<script>][-f<script文件>][文本文件]
    -n:静默模式只显示符合条件的行,不再默认显示模式空间中的内容
2、sed 'AddressCommand' file ...
Address:
    1、Startline,Endline 例如 1,100
    2、/RegExp/  用正则表达式匹配
    3、/pattern1/,/pattern2/ 第一个被pattern1匹配到的行开始,至第一次被pattern2匹配到的行结束;
    4、LineNumber 指定的行
    5、startLine,+N 指定行开始向后N行
Command:
    1、d 删除
    2、p 打印符合条件的行
    3、a \string 在指定行后面追加新行,内容为string
    4、r File 将指定行添加File的内容
    5、w FILE 将指定的范围内的行另存至指定的文件中
    6、s/pattern/string/ 查找并替换,默认只替换每行中第一次被模式匹配到的字符串
    加修饰符 g :全局替换
             i: 忽略字符大小写

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值