zoukankan      html  css  js  c++  java
  • linux常用命令总结

    常用命令

    系统命令

    登陆与登出

    telnet 主机IP——telnet 192.168.0.23

    login: 用户名

    passwd:密码

    退出系统

    exit:不同shell相互交换退出

    ctrl+D:结束终端输入

    ctrl+c:工作一半输出还要继续工作

    修改密码

    passwd6-8个字符)

    old passwd: 原密码

    new passwd:新密码

    confirm passwd:确认密码

    目录命令

    改变当前工作目录

    cd:改变当前工作目录。后面可以是绝对路径也可以是相对路径

    cd ~ :回到用户主目录

    cd 目录名:改变当前目录到指定的目录

    cd .. :改变当前目录到上一极目录

    cd . :回到当前目录

    显示当前工作目录

    pwd:显示当前工作目录

    列出指定目录下的文件和子目录

    ls:列出指定目录下的文件和子目录

    ls 列出目录下的所有子目录,文件,隐藏文件(以.开头的文件)

    ls R 从当前目录开始列出所有的子目录结构,文件;并一层一层地往下显示

    ls t 以修改时间为序来列出文件、子目录、

    ls l 以长列表的形式列出文件,子目录信息 也就是他们的属性

    ls F 列出文件,子目录及文件类型(*可执行文件,@软链接文件,/:目录,无:普通文件)

    权限控制

    文件:r—打开文件来查看内容,如cat,more命令就需要读权限

               w—可以更改文件内容,如cp,vi命令要求有写权限

               x—可以执行这个文件(必须是可执行文件*.sh

    目录:r—查看目录的内容,文件和子目录。如ls要求有读权限

              w—可以在该目录中创建,删除,移动子目录或文件。如touch,rm,rmdir,cp,mkdir要求有写权限

               x—你是否能进入这个目录cd

    修改权限:

    chmod u/g/o +/- r/w/x 文件或目录名

    chmod nnn[为数字] 文件/目录名

    chmod u+r,g-w,o=x file1, chmod 655 file

     普通文件常用权限:644;目录常用的权限是:755

    创建目录

    创建目录:mkdir

             mkdir dir1 dir2 dir3 在当前目录中创建3个目录他们为同级目录

             mkdir dir9/dir4 在当前目录中dir9目录创建一个目录dir4,但是dir9目录必须存在

             mkdir ~/dir5 在用户主目录下创建dir5

             mkdir –p dir6/dir7/dir8 在当前目录中创建一个目录结构

        dir6存在不存在都可以

    文件命令

    创建文件

    创建文件:touch

                      touch 文件名

    文件存在,则更新该文件的最后一次修改时间

    文件不存在,则创建一个新的空文件

    拷贝文件/目录

    拷贝文件/目录:c

             cp sourcefile objectfile 拷贝源文件为目标文件

             目标文件不存在则新建目标文件。把原文件的内容放到新建文件中

             目标文件存在则用原文件的内容覆盖目标文件的内容

              cp –i sourcefile objectfile 拷贝文件,但若目标已存在,则询问是否覆盖

             如果是y则目标文件中放的是源文件的内容

             如果是n则目标文件中的内容还是原来的内容

             cp –r sourcedir objectdir 拷贝源目录到目标目录

               目标目录是否存在则它的拷贝内容是不一样的?

             目标目录存在:源目录为目标目录的子目录

    cp –r wfx1 wfx2

    wfx2存在目录结构为:wfx2

                                            wfx1

    目标目录不存在:目标目录和源目录同级

    wfx2不存在则为wfx1 wfx2

    移动文件/目录

    移动文件/目录:mv 源文件,源目录都不存在

             mv sourcefile objectfile 源文件内容覆盖目标文件,

             目标文件不存在,则源文件改名为目标文件(mv –i 则覆盖时询问)

             mv sourcedir objectdir 目标目录存在则源目录移动到目标目录中成为子目录。

             目标目录不存在,则把源目录的名字改为目标目录的名字

    删除文件/目录

    删除文件/目录:rm rmdir rm –r

    rm file:删除文件,rm –i file询问是否删除文件

    rm file1 file2 file3 删除多个文件

           rmdir dir:删除目录,但dir必须是空目录

           rm –r dir1:删除非空目录,会删除目录中所有的内容。这里会询问我们要不要删除

    rm –rf dir3:删除非空目录,会删除目录中所有的内容,不询问我们到底要不要删除。

    创建链接文件

    创建链接文件:ln

             ln –s 被指向的源文件建立的链接文件:建立软链接

             首先我们修改任何一个文件内容,另一个文件的内容也相应修改

             删除源文件以后。链接文件就不可以在操作。我们把安装文件给删除了。快捷方式就没有用了

             删除链接文件不会影响到源文件。源文件还可以操作

             ln 被指向的源文件建立的链接文件:建立硬链接

             首先我们要是修改任何一个文件中的内容,另一个文件也会相应的修改。删除源文件不会影响链接文件,删除链接文件不会影响源文件

    软链接:abc(l:表示是软链接文件)→abc.txt(普通文件)abc文件中有abc.txtinode号,abc指向abc.txt,就向windows中的快捷方式一样,2个是不同的文件

    硬链接:abcabc.txt都指向同一个inode的文件块,是同一个文件

    帮助命令

    帮助命令:man 命令名;man

             空格:向后翻屏,b:向前翻屏,回车:向后滚动一行,/字符串:查找字符串

    特殊字符

    *:通配0或多个字符ls d*

    ?:通配一个字符ls d?.txt

    []:通配一个范围中的任何一个字符ls [b-f]b*

    ;:命令的结束符,一次可执行多条命令cd;pwd

    >:输出重定向,将命令的执行结果重新输出到非标准输出,如文件。cal 2 2002 > file1

    <:输入重定向,不从我们键盘的标准输入,cat <file1 >file2

    >>:以追加方式将命令的执行结果输出到非标准设备cal 7 2002>>calfile

    |:将前一个命令的的执行结果作为后一个命令的输入cat /etc/passwd | more

    查找

    文件查找

    文件查找:find

    find path –name filename :按文件名查找

    find path – user0 username :按文件的拥有者查找user0root用户user1soft用户

    find path –atime +10/-10 按文件的访问时间来查找(+表示超过表示不足)

    find path –mtime +/-days 按文件的访问时间来查找

    find path –type f/d :按文件的类型来查找f:查找文件;d:查找目录

    find path –perm 644/755 : 按文件的权限查找

    用户查找

    who:查看当前在线用户的详细信息

    用户名终端号登陆时间登陆机器的本地IP

    who am I 总是自己,即登陆时的自己

    用户名终端号登陆时间登陆机器的本地IP

    whoami 只查看用户名

    w:查看当前在线用户的更详细的信息

    USER(用户名) TTY(终端号)FROM(本地IPLOGIN(登陆time) IDLE JCPU) PCPU( 累计使用cpu时间) WHAT(执行命令)

    过滤文件和目录

    grep 在命令结果或文件中进行过滤

    grep root /etc/passwd  在这个文件中找出有root的行

     ls –al | grep  -i ‘sep 1’ 这里是忽略大小写

     xargs:它是分隔开的意思,ls f* | rm 这样的写法是错误的。我们找到这些文件要一个一个删除。因此ls f* | xargs rm 才是正确的

    grep –i  忽略大小写grep –v 反向过滤去掉有grep这个单词的那一行

    统计文件或执行结果

    wc: 字符数,行数,单词数

    wc –c 统计字符数ls –l | grep init | wc -c

    wc –w 统计单词数

    wc –l 统计行数

    进程

    启动或创建进程

    ps :列出当前终端启动的进程

    ps –ef :列出当前系统中运行的进程,详细列表列出

    uid(用户Id) pid(进程Id) ppid(父进程Id) c(标志位) stime(进程启动时间)tty(终端号)time(累计使用cpu的时间)cmd(进程执行的命令)

    ps –ef | grep 用户名

    终止或结束进程

    Kill 进程号;ctrl+c 杀掉终止进程

    Kill -9 进程号可以杀掉终止某些高级的进程

    killall java

    Sleep:创建休眠进程

    Sleep 1000 &

    [1](作业号)pid(进程号)  sleep(休眠命令)

    fg%n(作业号):将进程放到前台

    bg%n :将进程放到后台

    stop%n 暂停进程;ctrl+z 把这个进程给挂起

    kill%n : 终止进程

    网络命令

    ftp:文件传输

    ftp 192.168.0.250

    lirui

    123456

    cd:改变远程服务器的当前目录

    lcd:改变本地的当前目录

    dir:查看远程机器的当前目录内容

    get:从服务器上下载一个文件(mget 多个文件名)

    put:从本地机器上传一个文件到服务器(mput

    hash:开关变量(on/off)设置传输大文件过程中,每传输2k字节显示一个#

    prompt:开关变量,设置在传输多个文件时,是否给提示on /off

    ls:查看远程当前目录内容

    文件的查看

    cat 不分屏查看文件内容;可以将多个文件连接成一个大文件

    cat filename

    cat file1 file2 > file3

    cat /dev/null > ~/b.txt : b.txt存在,将这个文件清空; b.txt不存在,则创建一个空文件

    more:分屏显示 more filename   ls al |more

    空格:翻滚到下一屏,b:上一屏,f:下一屏,回车:下一行,/字符串

    tail  -n(n是行数) 从尾行往上看

    head n 从首行看

    默认为10

    文件编辑

    文件编辑:vi

    vi的三种模式:命令模式,输入模式,最后行模式

    输入模式:i:在光标当前位置开始编辑

                       a:在当前位置之后编辑

                       o:在当前光标位置的下一行编辑 复制当前行 yy 粘贴 p 剪切 dd 其他操作 撤销 u 恢复 ctrl + r

    光标移动:h:向左移动,l:向右移动,j:下移一行,k:上移一行

                         $:到行尾,^:到行首,G:到最后一行,nG,1G

    文本操作:x:删除光标所在位置的一个字符

                         dw删除从标位置开始的一个单词

                         dd:删除光标所在的一行  5dd:就是删除5   510d5到行给删除

                         r:替换光标所在的字符

                         cw:替换光标开始的一个单词

                         cc:替换光标所在行

                       C:替换从光标到行尾

                         yw:拷贝光标开始的一个词

                         yy:拷贝光标所在的一行

                         p:在当前光标所在的行的下方粘贴、

              12co31.2行拷贝一份防到3行后面

              45m645行移动到6行之后

                                 文件操作:q!:强制退出,wq!:保存文件并退出ZZ

                 :set nu 显示行号  :set nonu 把行号给去掉 快速到达文件的最后一行 G 快速到达文件的第一行 gg 快速到达文件的某一行 10gg

    系统初始化文件与环境变量

    bsh:系统初始化文件/etc/.profile   用户初始化文件$HOME/.profile

    csh:系统初始化文件/etc/.login 用户初始化文件:$HOME/.cshrc    .login   .logout

    环境变量

    bash/bsh: set 变量名=‘value’; export 变量名

    csh:setenv 变量名value    set 变量名=‘value’

    echo $变量名

    path:告诉系统在执行命令时,在哪个路径下找该命令的可执行文件。

    set path=(… … …) set path=($path newpath)

    which 命令名:显示当前执行的命令所在的路径

    whereis 命令名:显示命令所在的各个路径

    JAVA_HOME:javajdk)的安装目录

    CLASSPATHJava 的类路

    ORACLE_SID:访问oracleid

    MANPATH:帮助手册

    shell脚本

             Shell脚本的编写:

             1vi 文件名.sh

                       #/bin/sh 说明命令的/bin/sh去执行下面的命令

                       pwd

                       cal

                       date

             2.增加执行权限

                       Shell 脚本默认是没有执行权限的,所以使用chmod u+x 名字.sh

             3.运行shell 脚本

                       ./名字.sh 运行

    系统调度计划

             在特定时间调度系统中的某个程序执行,常常用于系统维护工作

             crontab –l 查看当前系统中的调度计划

             crontab –e 编辑当前系统中的调度计划

             crontab  -r 删除当前系统中的调度计划

             一般计划程序都是用shell脚本编写的,编写内容如下:

             15 16 12 * 3 a.sh

             15:分钟0-5916:小时0-2312:日期1-28/29/30/31 *:月份1-12 3:星期1-7

    a.sh在当前目录下编好的shell脚本

             这个调度计划表示在每个月12号,并且那天是星期三的16:15分启动a.sh执行

    其他命令

    回显命令:echo

    echo $WTO:显示变量值;echo “$WTO”“”表示显示变量值;

    echo ‘$WTO’ ‘’单引号括起的内容被作为字符串,显示$WTO

    echo $WTO $转义符,这样$就代表本身这个符号结果为$WTO而不是WTO里的值

    历史记录命令:History

    set history=30 :设置系统自动保留前面的30条命令,设置系统自动保留的历史记录数

    history :显示最近使用的命令,显示的命令个数由set history来决定

    history n :显示最近使用的n个命令

    !n 调用第n 条命令!! 调用上一次执行的命令执行

    替换命令:alias

    alias 代替名被替代的命令

    alias h history : h替代history命令; alias c clear  c替代clear命令

    alias home ‘cd;ls’ home 替代cd;ls命令组alias 列出已经建立了的替代的命令列表

    unalias copy 取消建立的copy替代的命令

     磁盘

    df -h

    查看端口

    netstat -ntlp

    lsof -i:80

    ps -ef |grep tomcat

  • 相关阅读:
    【题解】 bzoj1191: [HNOI2006]超级英雄Hero (二分图)
    谈谈Android项目框架的前世今生
    十四个好用的开源漏洞检测工具
    关于Java导出100万行数据到Excel的优化方案
    逗号分割符--字段中含逗号等情况的解析方法Java实现
    Java日期处理
    服务器&浏览器伪装的故事
    浏览器User-agent简史(user-agent)
    修改tomcat服务器banner的方法
    life_motto
  • 原文地址:https://www.cnblogs.com/mensiler/p/10368334.html
Copyright © 2011-2022 走看看