• linux shell 命令


    工作中经常用到的命令总结,希望对大家有帮助,偶尔忘记时可以打开这个看看,觉得得太有用了。

    1.       ctrl+A  返回最前边的字符。

    2.       ctrl+R  查询history时,提示用过的command

    3.       vi中移动到行头,按 数字0 ,移动到行尾按 $ 即可!

    4.       wget  httpd://afdasfd.com  或者 svn co httpd.//name.com  或者 svn export url都可以下载

    5.       vi&vim 

    copy:  :1,6yàEnter (复制1-6行)  y=yank

    delete:  :1:6dàEnter (删除1-6行)

    paste:   复制后直接按p来进行粘贴即可

    显示行数:  :set nu

    /keyword 进行搜索,n为next.

    6.       More阅读命令:

    More +20 file 从第二十行开始显示file内容

    More -20 file  一次显示20行

    7.       cp file1 file2  复制文件

    cp –r file file2  复制目录

    scp file1 se1.asc.cnz.alimama.com:~/bok/  拷贝到其它机器

    rsync –r file se1.asc.cnz.alimama.com:~/bok/  拷贝到其它机器

    rm file 删除文件

    rm –rf directory 删除目录

    rm –rf {a,b,c} 删除多个目录

    8.       less 阅读命令

    9.       cat 阅读命令

    cat file

    cat file1 file2> file 合并内容

    10.   >file 清空文件内容

    11.   mv file file2 修改文件名称

    12.   mv file ../file 修改文件路径

    13.   find ./ -iname ‘file’ 查找文件名为file的路径,不区分大小写

    14.   find ./ -name ‘file’ 查找文件名为file的路径,区分大小写

    15.   head -20 file 取前30行并浏览

    16.   tail -30 file 取末30行

    17.   history历史命令

    18.   修改已创建文件的时间 touch -c -t 0906270730 file

    19.   mkdir file 创建新文件

    20.   wc –l file 统计行数

    21.   中文乱码的问题解决:

    Export LC_ALL=zh_CN.GBK

    Export LC_LANG=zh_CN.GBK

    22.   crontab –l 查看crontab命令行

    crontab –e 编辑crontab命令行

    10 6 * * * /home/a.sh 每天6点10分执行a.sh

    */2 * * * * a.sh      每2分钟执行一次

     

    23.   重定向

    Ø  或者 | tee

     Eg: cat file> file2   or         cat file | tee file2

     

    24.   ps –eaf | grep httpd 查找httpd进程

    25.   kill -9 PID 强制停止进程

    26.   rpm –ivh a.rpm 安装rpm包

    rpm –q a.rpm 检查 a.rpm是否安装

    rpm -e a.rpm 卸载a.rpm

    27.   chmod 111(可执行)/222(可读)/444(可写) file  权限

    28.   修改linux颜色  在vim .bash_profile里添加export PS1="[\[\033[1;32m\]\u\[\033[1;33m\]@\[\033[1;31m\]\h \[\033[1;35m\]\W\[\033[0m\]]\\$"

    29.   syntax off可以vi下取消高亮显示语法。Syntax on可以显示

    30.   su – username  切换用户账号

    31.   top 显示进程完整路径和名称。

    32.   hostname 显示系统当前主机名和域名

    33.   date系统时间

    34.   cal日历

    35.   pwd 绝对路径

    36.   diff file1 file2 比较两文件

    37.   vimdiff file1 file2

    38.   du file –k 显示文件大小

    39.   tail –f file   动态查看文件内容

    40.   grep ‘title’ file 在文件file中搜索带title的行

    41.   grep ‘title’ file -10在文件file中搜索带title的行,并打印出上下10行内容

    42.   sed –e ‘s/a/b/g’ file >file2 修改file中的a为b并导入file2中

    43.   ls [a-z]*.conf 列出a到z开头文件,conf结尾的所有文件

    44.   yum search packagename 搜索package

    yum install packagename 安装package

    45.   tar –zxvf file.tar 解压缩

    tar –cvf file.tar file 打包

    46.   ps –x 自己的进程

    ps aux 所有人的进程

    47.   grep ’test’ file | head -5

    48.   grep ‘test’ file –n 显示出匹配的行号

    49.   du –h –max-depth=/home/liuyongb 查看空间大小

    50.   ln –s ~/file ~/bin/file 软连接

    51.   find ./ -name ‘test’ | xargs rm –rf 本地查找后,进行删除

    52.   df –hl 查看空间剩余

    53.   du –sh file 查看目录总大小

    54.   ls | sort –n 按数字排序  

    55.   ifconfig 显示机器ip地址

    56.   改变文件用户的组和用户用chown。 比如file原来所属的组和用户为admin  users,想改成yahoo users,则用sudo chown yahoo:users file即可

    57.   find ./|xargs grep 'Eragon'  在当前目录及子目录下的文件中找到包含某单词的文件?

    另附上机器打通方法:

      如果打通1,2两台机器。 第一步,在1的机器下,cd ./ssh,然后ssh-keygen -t rsa,回车再回车,生成id_rsa.pub, 第二步,mv id_rsa.pub 1.pub 第三部,cat 1.pub>>authorized_keys.

    然后到机器2操作,相同的方法在2机器上生成pub文件取名为2.pub,然后copy到1机器中的.ssh中,然后cat 2.pub》authorized.keys.,最后,copy authorized.keys. 到2机器中。到此就打通了

     如果还是不行则: 1. chmod 644 authorized_keys

                      2. /etc/hosts底下加入要打通的机器IP

    50 rz 可以 直接从windows机器传东西

    51 sz file 可以将linux的文件拷贝到windows.

    52. 将命令重命名:  alias fid=’find ./ -name test’

     

    52. mail –s “标题” bin.liuyb@hotmail.com <file 发送file内容给邮箱

       (uuencode file1 file1&& cat file2)|mail -s "标题" bin.liuyb@alibaba-inc.com  发送带附件的file1给邮箱,同时发送file2的内容给邮箱。

    52, expect的安装

    1、 首先,准备好所需的两个安装包

     

    tcl8.4.13-src.tar.gz

    expect-5.43.0.tar.gz

     

    2、 安装tcl8.4.13

     

    Tcl 的 configure 脚本有一个语法错误,下面的命令可以纠正它:

    sed -i "s/relid'/relid/" configure (8.4.13不再有这样的错误了)

    编译tcl

    cd unix

    ./configure --prefix=/expect

    make

    make install

    mkdir -p /tools/lib

    需要的内容都拷贝到/tools/lib目录

    cp tclConfig.sh /tools/lib/

     

    安装完毕完先不要删除源码,以会安装expect还要用到

     

    将/tools/bin目录export到环境变量,vim .bashrc然后输入export PATH="$PATH:/opt/au1200_rm/build_tools/bin"

     

    3、 安装expect

     

    ./configure --prefix=/tools --with-tcl=/tools/lib --with-x=no

     

    如果报

    checking for Tcl private headers... checking for tclInt.h... no

    configure: error: Can't find Tcl private headers

     

    就再添加一个头文件目录参数

    --with-tclinclude=../tcl8.4.13/generic,即:

    ./configure --prefix=/tools --with-tcl=/tools/lib --with-x=no --with-tclinclude=../tcl8.4.13/generic

     

     

    脚本运行正常,进行执行make进行编译

    make

    编译过程中未出现错误,执行安装:

    make install

     

    sudo cp /tool/bin/expect /usr/bin/

    53  把文件中的数字0-9替换为a-j

    # cat file | tr [0-9] [a-j]

     

    54、删除文件file中出现的"Snail"字符

    # cat file | tr -d "Snail" > new_file

    【注意】这里,凡是在file文件中出现的'S','n','a','i','l'字符都会被删除!而不是紧紧删除出现的"Snail”字符串。

    55、删除文件file中出现的换行'\n'、制表'\t'字符

    # cat file | tr -d "\n\t" > new_file

    不可见字符都得用转义字符来表示的,这个都是统一的。

    56. 删除连续着的字母 只保留第一个

    # cat file | tr -s [a-zA-Z] > new_file

    57.  nl  file  跟cat file 一样 只不过会加上行号

    58. shell中echo输出改变颜色

       格式: echo "\033[字背景颜色;

  • 相关阅读:
    Codeforces Round #687 A. Prison Break
    最小生成树自用笔记(Kruskal算法+prim算法)
    Codeforces Round #686 (Div. 3)(A->D)(模拟,vector,数学)
    Acwing 852. spfa判断负环
    Linux内核分析_课程学习总结报告
    结合中断上下文切换和进程上下文切换分析Linux内核的一般执行过程
    深入理解系统调用
    基于mykernel 2.0编写一个操作系统内核
    何评测一个软件工程师的计算机网络知识水平与网络编程技能水平?——参考试题
    TCP三次握手Linux源码解析
  • 原文地址:https://www.cnblogs.com/zhangfei/p/1891992.html
Copyright © 2020-2023  润新知