zoukankan      html  css  js  c++  java
  • linux学习笔记

    linux命令笔记

    为了便于以后巩固复习linux命令

    linux用户

    一个超级用户(root,/root/目录,可对普通用户操作,标识"#"),多个普通用户(/home/用户名,不能操作超级用户,标识"$")

    useradd -m ffg 创建ffg用户,并在/home/目录下创建ffg目录
    passwd ffg 创建或修改ffg密码
    su ffg 切换到ffg用户
    userdel -r ffg 删除ffg用户,并删除/home/目录下ffg目录(需通过Ctrl+D退出ffg当前环境)

    环境变量

    whereis date 查找date所在的路径(可以查找各种内置命令)
    cp /bin/date /home/ffg/work/my_date 复制bin目录下的date文件到/home/ffg/work/目录并重命名为my_date
    echo $PATH 查看当前的环境变量
    export PATH=$PATH:/home/ffg/work/ 设置环境变量(当前环境变量+需要添加的环境变量)

    文件与权限

    -rwxr-xr-x. 1 ffg ffg 62168 May 23 05:20 my_date
    上述命令代表:

    • '-'代表为文件,'d'代表目录
    • r=read(读), w=write(写), x=execute(执行). 前三rwx当前ower所有权限,中三r-x当前group可读可执行权限,后三r-x其他用户可读可执行权限
    • 1个文件
    • ower ffg
    • group ffg
    • 文件大小62168
    • 创建日期May 23 05:20
    • 文件名my_date
      ls -la 列出当前目录详细(-l)的隐藏(-a)和非隐藏文件的信息
      man 可以查看任意命令的用法
      chmod 644 my_date 修改my_date权限为ower(6=110=rw-),group(4=100=r--),others(4=100=r--)

    文件操作

    touch helloworld 创建一个helloworld文件
    vi helloworld 编辑helloworld文件
    vi下:wq保存并退出 :q!不保存退出 :%!xxd二进制显示
    cp helloworld helloworld_bk 从helloworld复制一份hellowrld_bk
    rm helloworld_bk 删除helloworld_bk
    mv helloworld helloworld_bk 讲helloworld重命名为helloworld_bk
    file helloworld_bk 查看helloworld_bk文件类型

    目录操作

    cd 'cd .'当前目录, 'cd ..'上一级目录, 'cd ~'当前用户home目录, 'cd -'返回上一次的目录
    rwx r可以列目录内容(ls), w可以在目录写文件或目录(touch), x可以进入目录(cd)(rx的基础)
    du -sh work 查看work目录下所有的文件大小

    Winrar-Tar命令

    tar cf my_tar.tar 1 my_date 将1目录和my_date文件打包到新创建的my_tar.tar下(c创建,f打包后目标文件)
    tar tvf my_tar.tar 查看(t)详细(v)my_tar.tar打包的文件目录
    tar cjf my_tar.tar.bz2 1 my_date 将1目录和my_date文件通过bz2压缩到新创建的my_tar.tar下(c创建,j使用bz2压缩,f打包后目标文件)
    tar xf my_tar.tar 解压my_tar.tar
    diff -r work work1 查看work目录和work1目录下有什么不同(r比较子目录)

    find命令

    find /usr/scr/ -type f -name "*.c" 搜索出'/usr/scr/'目录下所有名(-name)为'.c'结尾的文件(-type f,目录是d)
    find /usr/scr/ -name "*.c" -exec wc -l {} ; 统计'/usr/scr/'目录下所有名(-name)为'.c'结尾每个文件的行数(wc -l).参数exec是执行commond命令,'wc -l'为统计文件内容行数,'{}'代表对没一个结果执行'wc -l'命令,';'转义;代表命令结束
    find /usr/scr/ -name "*.c" -exec cp {} scr/ ; 将搜索的结果拷贝到scr/目录下
    find /usr/scr/ -name "*.c" >> count ; wc -l count ; rm count '>>'讲结果重定向写入到count文件里,然后统计count内容行数,最后删除count文件
    find /usr/scr/ -name "*.c" | wc -l 上面的简化版本,通过'|'管道符号将前面的输出用作后面的输入

    vim命令

    最早的是vi编辑器,vim在vi上进行改进

    vi三种状态,'vi hello-world'进入 命令 状态,在'命令'状态下按'i'进入 插入 状态, 按'ESC'回到 命令 状态,在'命令'状态下输入':'进入 末行 状态
    alias 查看别名
    末行 'set number' 显示行数
    命令 '行号G GG $ ^' '行号G'跳转到指定行,'GG'跳转到末行,'$'跳转到行尾,'^'跳转到行首
    命令 'dd vd dG u' 'dd'删除当前一行, 'vd'选中删除,'dG'删除当前光标后面所有,'u'撤销
    命令 'yy vy p' 'yy'复制当前行, 'vy'选中复制, 'p'粘贴
    面所有,'u'撤销
    命令 /字符串 '/字符串'来搜素关键字, 'n'来搜索匹配的下一个

    人生就是不放弃的坚持到底。
  • 相关阅读:
    Less学习笔记
    如何在网页启动Windows服务
    让VS2010记住TFS的登陆用户名和密码
    调式WP程序报0x80131500错误的解决办法
    FizzBuzzWhizz是算法题吗?我从设计的角度去解决的。
    基于Roslyn的远程任务平台
    优雅就一个字——设计模式之数据上传接口
    关于反射优化的疑问,单次调用时直接反射要快于委托调用反射?
    用VC++11中编译libthrift项目
    grunt初体验
  • 原文地址:https://www.cnblogs.com/hackerffg/p/9102477.html
Copyright © 2011-2022 走看看