zoukankan      html  css  js  c++  java
  • linux基础命令

    基础命令:

    ls

    man

    pwd

    cd

    mkdir

    echo

    touch

    cp

    mv

    rm

    rmdir

    cat

    more

    less

    head

    tail

    clear

    poweroff

    reboot

    进阶命令(下一章节):

    alias

    unalias

    uname

    su

    hostname

    history

    which

    wc

    w

    who

    whoami

    ping

    kill

    killall

    pkill

    seq

    du

    df

    free

    date

    pidof

    ps

    top

    ip

    uptime

    wget

    curl

    tr

    dd

    tar

    grep

    find

     lsblk

    命令详解

     

    1. ls

    作用:列出文件信息,默认为当前目录下

    常用选项:

    -a: 列出所有的文件,包括所有以.开头的隐藏文件

    -d: 列出目录本身,并不包含目录中的文件

    -h: 和-l一起使用,文件大小人类易读

    -l: 长输出

    实例1:列出所有的文件

     

    [root@ken ~]# ls -a /root

    .                            .bash_logout                    k                         .pki      .viminfo

    ..                           .bash_profile                   keys.sh                   .ssh      wordpress

    .ansible                     .bashrc                         manpages-zh-1.5.1         .tcshrc   zabbix_agentd.conf

    apache-tomcat-8.5.35.tar.gz  .config                         manpages-zh-1.5.1.tar.gz  实例2:列出目录

    [root@ken ~]# ls -d /root

    /root

    [root@ken ~]# ls -l /root

    total 85452

    -rw-r--r-- 1 root  root  9642757 Dec 15 17:44 apache-tomcat-8.5.35.tar.gz

    -rw-r--r-- 1 root  root       50 Dec  2 17:34 auto_ins.retry

    -rw-r--r-- 1 root  root      259 Dec  2 17:50 auto_ins.yml

    -rw------- 1 root  root   293691 Jan  9 11:26 dead.letter

    -rw-r--r-- 1 root  root 75541986 Nov 14 13:58 jenkins-2.138.3-1.1.noarch.rpm

    -rw-r--r-- 1 root  root       93 Jan  9 11:19 k

    -rw-r--r-- 1 root  root      873 Dec 20 13:11 keys.sh

     

    实例4:人类易读

    [root@ken ~]# ls -lh /root

    total 8.0K

    -rw-------. 1 root root 1.2K Feb 26 22:25 anaconda-ks.cfg

    -rw-r--r--. 1 root root 517 Feb 26 22:36 test.sh

     

    2.man

    作用:命令帮助使用手册

    在man命令帮助信息的界面中,所包含的常用操作按键及其用途如表2-2所示。

    表2-2                                            man命令中常用按键以及用途

    按键                                  用处

    空格键向下翻一页

    PaGe down向下翻一页

    PaGe up向上翻一页

    home直接前往首页

    end直接前往尾页

    /从上至下搜索某个关键词,如“/linux”

    ?从下至上搜索某个关键词,如“?linux”

    n定位到下一个搜索到的关键词                                   

    N定位到上一个搜索到的关键词

    q退出帮助文档

    一般来讲,使用man命令查看到的帮助内容信息都会很长很多,如果读者不了解帮助文档信息的目录结构和操作方法,乍一看到这么多信息可能会感到相当困惑。man命令的帮助信息的结构如表2-3所示。

    表2-3                                         man命令帮助信息的结构以及意义

    结构名称代表意义                                                             

    NAME命令的名称

    SYNOPSIS参数的大致使用方法

    DESCRIPTION介绍说明

    EXAMPLES演示(附带简单说明)

    OVERVIEW概述

    DEFAULTS默认的功能

    OPTIONS具体的可用选项(带介绍)

    ENVIRONMENT环境变量

    FILES用到的文件

    SEE ALSO相关的资料

    HISTORY                             维护历史与联系方式

     

    3.pwd

    显示出当前/活动目录的名称

    实例:

    [root@ken ~]# pwd

    /root

     

    4. cd

    切换目录

    实例1:切换至/tmp目录下

    [root@ken ~]# cd /tmp

    [root@ken tmp]# pwd

    /tmp

    实例2:切换至上次所处的目录

    [root@ken tmp]# cd -

    /root

    [root@ken ~]# pwd

    /root

    实例3:切换至上级目录

    [root@ken ~]# mkdir -p /1/2/3

    [root@ken ~]# cd /1/2/3

    [root@ken 3]# cd ..

    [root@ken 2]# pwd

    /1/2

    实例4:切换至家目录(或者一个cd也可以)

    [root@ken 2]# cd ~

    [root@ken ~]# pwd

    /root

     

    5. mkdir

    创建目录

    常用选项:

    -p: 根据需要创建父目录

    实例1:

    [root@ken ~]# mkdir ken

    [root@ken ~]# ls -ld ken

    drwxr-xr-x 2 root root 6 Jan 13 11:10 ken

    实例2:

    [root@ken ~]# mkdir /2/3/2 -p

    [root@ken ~]# ls -ld /2/3/2/

    drwxr-xr-x 2 root root 6 Jan 13 11:11 /2/3/2/

     

    6.echo

    输出并显示一行文本

    常用选项:

    -e: 允许对下面列出的加反斜线转义的字符进行解释.

    实例1:

    [root@ken ~]# echo "this is ken"

    this is ken

    实例2:

    换行符,如果不加-e不能进行解释,会当做普通字符进行输出

    [root@ken ~]# echo "this is ken nice to meet you"

    this is ken nice to meet you

    [root@ken ~]# echo -e "this is ken nice to meet you"

    this is ken 

    nice to meet you

    实例3:输出颜色

    [root@ken ~]# echo -e "33[32mthis is ken nice to meet you33[0m"

    this is ken 

    nice to meet you

     

    7.touch

    修改时间戳

    平时都是用来创建普通文件

    实例1:

    [root@ken ~]# touch test

    [root@ken ~]# ls -l test

    -rw-r--r-- 1 kl root 1116 Jan 13 11:16 test

     

    8.cp

    复制文件和目录

    常用选项:

    -p: 保持属性不变

    -r: 递归复制目录

    -a: 复制时,尽可能保持文件的结构和属性. 等同于 -dpR

     

    实例1:复制文件到目录

    [root@ken ~]# cp t.sh ken

    实例2:复制文件并改名

    [root@ken ~]# cp t.sh test1.sh

    实例3:复制目录

    [root@ken ~]# cp -a ken ken1

    [root@ken ~]# cp -r ken ken2

    实例4:复制多个文件到目录

    [root@ken ~]# cp test test1.sh test.sh ken

    [root@ken ~]# ls ken

    test  test1.sh  test.sh  t.sh

     

    9.mv

    移动 (改名) 文件

    实例1:移动文件到目录

    [root@ken ~]# mv k ken

    实例2:移动多个文件到目录

    [root@ken ~]# mv {1..4}.sh ken

    实例3: 改名

    [root@ken ~]# mv ken ken3

     

    10.rm

    移除文件或者目录

    常用选项:

    -f:  不作确认提示

    -r:  或者 -R 递归地移除目录树

    实例1:删除一个文件

    [root@ken ~]# rm test

    rm: remove regular file ‘test’? y

    实例2:强制删除文件(不提示)

    [root@ken ~]# rm -f test1.sh 

    实例3:删除目录

    [root@ken ~]# rm ken2

    rm: cannot remove ‘ken2’: Is a directory

    [root@ken ~]# rm -rf ken2

     

    11.rmdir

    删除空目录

    [root@ken ~]# rmdir 1.txt

    [root@ken ~]# rmdir ken3

    rmdir: failed to remove ‘ken3’: Directory not empty

     

    12. cat

    连接文件并在标准输出上输出(用于内容较少的)

    常用选项:

    -n: 输出行号

    实例1:

    [root@ken ~]# cat /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

    实例2:

    [root@ken ~]# echo "this is the first txt" >1

    [root@ken ~]# echo "this is the second txt" >2

    [root@ken ~]# cat 1 2

    this is the first txt

    this is the second txt

     

    13.more

    在显示器上阅读文件的过滤器(查看内容较多的)

    more命令会在最下面使用百分比的形式来提示您已经阅读了多少内容

    [root@ken ~]# more /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

    adm:x:3:4:adm:/var/adm:/sbin/nologin

    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

    sync:x:5:0:sync:/sbin:/bin/sync

    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

    halt:x:7:0:halt:/sbin:/sbin/halt

    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

    operator:x:11:0:operator:/root:/sbin/nologin

    games:x:12:100:games:/usr/games:/sbin/nologin

    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

    nobody:x:99:99:Nobody:/:/sbin/nologin

    systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin

    dbus:x:81:81:System message bus:/:/sbin/nologin

    polkitd:x:999:998:User for polkitd:/:/sbin/nologin

    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

    postfix:x:89:89::/var/spool/postfix:/sbin/nologin

    named:x:25:25:Named:/var/named:/sbin/nologin

    rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin

    rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

    --More--(52%)

    14. less

    less 与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动(pgup键),而且 less 在查看之前不会加载整个文件

     

    15.head

    输出文件的开始部分(默认前10行)

    常用选项:

    -n: 指定行

    [root@ken ~]# head /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

    adm:x:3:4:adm:/var/adm:/sbin/nologin

    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

    sync:x:5:0:sync:/sbin:/bin/sync

    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

    halt:x:7:0:halt:/sbin:/sbin/halt

    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

    operator:x:11:0:operator:/root:/sbin/nologin

     

    实例2:指定打印行数量

     

    [root@ken ~]# head -n 5 /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

    adm:x:3:4:adm:/var/adm:/sbin/nologin

    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

    [root@ken ~]# head -5 /etc/passwd

    root:x:0:0:root:/root:/bin/bash

    bin:x:1:1:bin:/bin:/sbin/nologin

    daemon:x:2:2:daemon:/sbin:/sbin/nologin

    adm:x:3:4:adm:/var/adm:/sbin/nologin

    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

     

     

    16. tail

    输出文件的末尾部分(默认十行)

    常用选项:

    -f: 当文件增长时,输出后续添加的数据(持续刷新)

    -n: 指定打印行数量

    实例1:

    1[root@ken ~]# tail -f t.sh

    实例2:

    [root@ken ~]# tail -n 5 /etc/passwd

    lll:x:1003:1003::/root/jjj:/bin/bash

    kl:x:1004:1004::/root/kl:/bin/bash

    tt:x:450:450::/home/tt:/bin/bash

    ken:x:1005:1005::/home/ken:/bin/bash

    ttt:x:1006:1006::/home/ttt:/bin/bash

     

    17. clear

    清屏

    快捷键ctrl+l

     

    18. poweroff

    关机

     

    19. reboot

    重启

    alias

    unalias

    uname

    su

    hostname

    history

    which

    wc

    w

    who

    whoami

    ping

    kill

    seq

    du

    df

    free

    date

     

    命令详解

     

    1. alias

    设置、’查看别名

    [root@ken ~]# alias 

    alias cp='cp -i'

    alias egrep='egrep --color=auto'

    alias fgrep='fgrep --color=auto'

    alias grep='grep --color=auto'

    alias l.='ls -d .* --color=auto'

    alias ll='ls -l --color=auto'

    alias ls='ls --color=auto'

    alias man='man -M /usr/local/manpage/share/man/zh_CN'

    alias mv='mv -i'

    alias rm='rm -i'

    实例2:设置别名

    [root@ken ~]# alias "ken=ls -l"

    [root@ken ~]# ken

    total 85452

    -rw-r--r-- 1 root  root       22 Jan 13 12:12 1

    -rw-r--r-- 1 root  root       23 Jan 13 12:12 2

    drwxr-xr-x 2 root  root        6 Jan 13 12:05 2.txt

    实例3:取消别名

    [root@ken ~]# unalias ken

    [root@ken ~]# ken

    -bash: ken: command not found

     

    2.uname

    显示输出系统信息

    -a:显示所有的信息

    -r: 显示操作系统发行版本

    实例1:

    [root@ken ~]# uname -a

    Linux ken 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

    实例2:

    显示内核版本

    [root@ken ~]# uname -r

    3.10.0-862.el7.x86_64

     

    3.su

    运行替换用户和组标识的shell

    实例1:

    -:使得shell为可登录的shell

    [root@ken ~]# su - ken

    Last login: Fri Jan 11 11:27:19 CST 2019 on pts/0

     

    退出

    [ken@ken ~]$ exit

    logout

     

    4. hostname

    显示并设置主机名

    为什么要修改主机名?

    是为了名称解析(/etc/hosts)

     

    hostname修改的主机名只是保存在了内存空间,就是说你重启系统就会失效!

    实例1:显示主机名

    [root@ken ~]# hostname

    ken

    实例2:设置主机名(重启失效)

    [root@ken ~]# hostname ken1

     hostnamectl set-hostname 别名 

    5.history

    查看历史命令

    实例1:

    [root@ken ~]# history

     实例2:使用!加上上一个命令的缩写可以再次执行

    6. which

    显示命令的完整路径

    实例1:

    [root@ken ~]# which ls

    alias ls='ls --color=auto'

        /usr/bin/ls

     

    7.wc

    统计文本信息

    常用选项:

    -c: 字节

    -w: 单词数量

    -l: 统计行数

    c(haracter) w(ord) l(ine)

    实例1:

    [root@ken ~]# cat /etc/passwd | wc -l

    38

    实例2:

    [root@ken ~]# echo "this is ken" | wc -c

    12

    实例3:

    [root@ken ~]# echo "this is ken" | wc -w

    3

     

    8.w

    显示已经登录的用户以及他们在做什么

    实例:

     

    [root@ken ~]# w

     13:04:06 up 2 days,  3:30,  7 users,  load average: 0.61, 0.16, 0.09

    USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT

    root     tty1                      Mon19    3days  1.35s  0.02s -bash

    root     pts/0    172.20.10.4      09:47    1:44m  0.16s  0.00s less -s

    root     pts/1    172.20.10.4      10:34    1:43m  0.02s  0.02s -bash

    root     pts/2    172.20.10.4      12:00   20:38   0.15s  0.15s -bash

    root     pts/3    172.20.10.4      12:00   15:02   0.03s  0.03s -bash

    root     pts/4    172.20.10.4      13:03    6.00s  0.04s  0.01s w

    root     pts/5    172.20.10.4      13:03   11.00s  0.02s  0.02s -bash

     

     

    USER:显示登陆系统的用户的帐号名。如果用户重复登录,则该帐号名就会重复显示。

     TTY:用户登录的终端代号。登录的形式不同,登录代号也不相同。

     FROM:显示用户从何处登录系统。如果是本地登录,则此字段为-,若从远程登录,便会显示远程主机的IP地址或主机名。至于“:0.0”之类的标示,代表该用户是从X Window System以文本模式登录的。

     LOGIN@:这是Login At的意思,表示该用户登录系统时的时间(不是登录后经过的时间)。

     IDLE:表示用户闲置的时间。这是一个计时器,一旦用户执行任何操作,该计时器便会被重置。

     JCPU:以终端的代号区分显示,表示该终端所有相关的进程(process)执行时所消耗的cpu时间。每当进程结束就停止计时,开始新的进程则会重新计时。

     PCPU:表示cpu执行程序消耗的时间。

     WHAT:表示用户正在执行的程序的名称,如果正在执行文本模式命令,则会显示用户环境的名称。

     

    9. who

    [root@ken ~]# who

    root     tty1         2019-01-07 19:24

    root     pts/0        2019-01-13 09:47 (172.20.10.4)

    root     pts/1        2019-01-13 10:34 (172.20.10.4)

    root     pts/2        2019-01-13 12:00 (172.20.10.4)

    root     pts/3        2019-01-13 12:00 (172.20.10.4)

    root     pts/4        2019-01-13 13:03 (172.20.10.4)

    root     pts/5        2019-01-13 13:03 (172.20.10.4)

     

     

     

     

  • 相关阅读:
    fedora上部署ASP.NET——(卡带式电脑跑.NET WEB服务器)
    SQL Server 请求失败或服务未及时响应。有关详细信息,请参见事件日志或其它适合的错误日志
    8086CPU的出栈(pop)和入栈(push) 都是以字为单位进行的
    FTP 服务搭建后不能访问问题解决
    指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配
    Linux 安装MongoDB 并设置防火墙,使用远程客户端访问
    svn Please execute the 'Cleanup' command. 问题解决
    .net 操作MongoDB 基础
    oracle 使用绑定变量极大的提升性能
    尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。
  • 原文地址:https://www.cnblogs.com/itzhao/p/11203299.html
Copyright © 2011-2022 走看看