Linux新手生存笔记--第3课Linux常用命令(2)

[复制链接]
  • TA的每日心情
    开心
    2023-12-15 09:13
  • 签到天数: 55 天

    [LV.5]六品通判

    1197

    主题

    1965

    回帖

    13万

    积分

    Administrator

    分子与原子计算公式

    Rank: 9Rank: 9Rank: 9

    积分
    132061

    终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

    QQ
    发表于 2012-7-4 17:18:13 | 显示全部楼层 |阅读模式
    7.磁盘操作... 11
    8.系统操作... 12
    9.网络相关... 13
    10.shell操作... 14
    11.其他命令... 14
    12.常用按键... 15
    13.命令选项大体通用含义... 16
    14.常用命令别名... 17
    7.磁盘操作
    du

    du会统计指定的目录或文件所占用的实际磁盘空间
    -a全部文件 包括隐藏的
    -m    du系统默认输出是以KB,以参数-m表示以MB显示.
    -h以M为单位显示文件大小结果
    -s统计此目录中所有文件大小总和
    du -h—max-depth=1
    仅查询一层

    df

    查看硬盘使用情况

    -h以友好的格式输出所有已安装文件系统的磁盘容量状态
    -m以M为单位输出home目录的磁盘容量状态
    -k以K为单位输出所有已安装文件系统的磁盘容量状态
    -i报告空闲的、用过的或部份用过的(百份比)索引节点
    -l仅显示本地文件系统
    -t ext3仅显示文件类型为ext3的文件系统的磁盘状态
    -x ext3仅显示文件类型不为ext3的文件系统的磁盘状态
    -T除显示文件系统磁盘容量大小外还显示文件系统类型

    关于df和du:df是从文件系统的角度来看的,du是从能够“看到”的文件的角度来看的。通常情况下,df与du的显示是一致的;但是当你在程序里打开一个文件并且持有这个文件的句柄,然后在另外的窗口把这个文件删除,这时候文件已经“看”不到了,也就是通过ls列举是看不到这个文件了,但是由于还有程序在使用这个文件,因此系统并没有把它真正删除,文件的内容还在文件系统里,但目录树上找不到它。这时候df看到的要比du大。有时候发现df与du的显示结果相差几十个G,就是这个原因

    fdisk

    观察硬盘之实体使用情形与分割硬盘用。
    在console上输入fdisk -l /dev/sda
    ,观察硬盘之实体使用情形。
    在console上输入fdisk /dev/sda,可进入分割硬盘模式

    fdisk -l  查看硬盘分区情况

    cat /etc/fstab

    查看分区列表

    mount [参数]
    要加载的设备 载入点

    加载一个硬件设备
    eg: mount /dev/cdrom
      cd /mnt/cdrom //进入光盘目录
    mkdir /mnt/usb;(注:创建挂载目录)
       mount /mnt/sda1 /mnt/usb;(注:挂载U盘)
    umount /mnt/usb




    8.系统操作
    top

    查看后台程序,监控系统性能

    top -d 2
    每两秒列新一次
    top -d -2 -p3690 查看某个PID
    top -b -n 2 >/tmp/top.txt 将top的信息进行2次,然后将结果输出到/tmp/top.txt

    ps  

    查看进程: ps -e
    或ps -aux -->显示用户

    ps aux | grep
    ps -aux|sort +5n看看哪个进程占用的内存最大
    ps -ef |grep

    nohup cmd &

    后台运行

    crontab

    格式为“分 时 日 月 周 命令 1>right 2>error”

    at

    执行一次

    pstree -p

    查看进程树

    free -m|-g|-k

    查看内存的使用

    uptime

    显示目前系统开机时间(查看开机多久,多少人登陆,过去1,5,15分钟系统的负载)

    kill -9 pid

    杀进程send a signal to a process
    kill -9 发送的是SIG_KILL信号 ,具体发送什么信号
    可以通过 man kill 查看

    killall -9 processname

    &与ctrl+z

    将程序放在前后台执行
    Ctrl-z可以将前台进程挂起(suspend),
    然后可以用bg jobid
    让其到后台运行
    job &
    可以直接让job直接在后台运行

    fg
    jobid

    将放在后台执行的程序再放回前台

    sleep amount [units]


    units默认为秒(s),m表示分钟,h表示小时,d表示天

    nice

    设置优先权 nice -n -5 vi &
    用root给一个nice值为-5,用于执行vi

    renice

    调整已存在优先权

    ldd

    命令查看共享库文件

    strace

    诊断运行的进程,
    分析程序运行错误的原因

    sar

    收集、保存并报告系统信息

    iostat



    netstat



    vmstat



    ab

    Web服务器的性能

    wireshark和tshark

    复杂网络诊断

    uname -a

    查看内核版本

    cat /proc/meminfo

    查看内存的信息

    cat /proc/cpuinfo

    查看cpu的信息

    cat /proc/version

    查看操作系统版本

    9.网络相关
    wget uri

    下载文件

    curl –s uri

    请求一个url

    ifconfig

    查看网络地址信息

    netstat

    查看网络连接情况
    -i 显示网卡运行情况
    -r 查看主机的路由列表

    netstat -na | grep 2181
    这个命令查看哪些机器连着这个端口

    ping ip

    ping一个ip地址

    networkconfig;thizconfig

    网络设置

    xmtr

    网络检测命令

    mtr  

    网络诊断工具

    lynx

    将HTML页面转化文本文件
    lynx -dump -stdin

    netstat -tupln

    查看本地所有的tpc,udp监听端口: (t=tcp, u=udp, p=program, l=listen, n=numric)

    iftop、nethogs

    查看占用带宽的进程和带宽

    10.shell操作
    clear

    清屏  
    或者+l

    echo str

    在标准输出上显示字符

    history

    显示用户过去命用的命令

    man command

    帮助命令
    f/  
    :每次向后翻一页
          
    :每次向后移动一行
        :每次向前翻一页
    or q
    : 退出man命令.

    学习bash
    用man bash来查看手册,很强大的操作
    了解ascii表man asci
    man 7 signal

    type command

    后跟命令,区分某个命令是否为shell自带的还是由shell外部的独立二进制文件提供的


    11.其他命令
    alias

    可以查看命令别名命名的信息
    .alias
    别名
      alias dir='ls -l'   输入dir,其实就相当于执行了ls -l

    bc

    交互式,支持浮点型

    scp local_file_A username@other_host_name:dir_name



    两台主机之间拷贝文件
    将本地文件拷贝到服务器上
    scp –rp
    /path/filename username@remoteIP:/path
    将远程文件从服务器下载到本地
    scp -rp username@remoteIP:/path/filename /path

    scp /path/to/localfile :/path/to/remotefile
    scp :/path/to/remotefile /path/to/localfile
    scp /path/to/localfile @:/path/to/remotefile
    scp @:/path/to/remotefile /path/to/localfile

    ssh

    ssh
    ssh @
    ssh -l  
    ssh  “cmd”

    学会打通ssh
    了解ssh端口映射
    当通过ssh远程工作时,可以使用screen
    或 dtach保存会话

    xargs

    将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题
    find /path -type f -print0 | xargs -0 rm

    md5sum

    制作md5码(128b)和校验文件

    !!

    执行最近一次的命令

    编译安装

    源码编译安装(经典)
    ./configure              检查系统信息(./configure --help | more
    帮助信息,可以看到相关的参数设定)
    make clean               清除之前留下的文件
    make                     编译
    make install             安装
    注:源码包安装,一般先将文件解压,安装过程大致上面几步,具体说明一般见解压后目录里的(INSTALL,READEME说明.)

    12.常用按键
    风骚的键位操作,如打boss时风骚的走位..........

    删除
    清空屏幕,
    相当于clear
    tab           
       将命令匹配完整,
    自动补全路径/命令

       
    光标跳至命令结尾
       
    光标跳至命令开始
    :光标左移一个字母
    :光标右移一个字母
    :交换光标位置前的两个字符(敲错顺序的时候)
    :删除光标前一个字符,同 backspace
    键相同
    :
    移除光标前的一个单词
    :
    清除光标前至行首间的所有内容【可用于删除整行已录入的命令】
    :清除光标后至行尾的内容
    :
    粘贴或者恢复上次的删除

    上下键
      查看之前执行的命令
    前一个命令
    后一个命令
    :匹配历史命令,搜索之前打过的命令。会有一个提示,根据你输入的关键字进行搜索bash的history当查找到的命令不是你想要的命令,你还可以继续按Ctrl
    + R来查找下一个匹配的命令


                               锁定键盘
                               解锁键盘

       
    中断当前的命令并返回Shell.
    【终止当前进程】
      中断当前的通信或从文件中退出【退出shell】

    暂停当前进程bg后台运行,fg转到前台
    (习惯bg,fg操作,效率大大提升)

    如果熟悉vi诸多快捷键,嘿嘿
    set -o vi  
    (vim编辑器的环境,试试vim的命令)
    set -o emacs (恢复了)

    13.命令选项大体通用含义
    -a

    all

    全部

    -b

    binary

    二进制

    -c

    character

    字符

    count

    计数

    -f

    force

    强制

    -i

    interact

    交互

    ignore

    忽略大小写

    -j

    jump

    跳过

    -l

    long

    长格式

    line



    -m

    move

    移除

    -n

    number

    行号

    -p

    parent

    上层父目录

    -r

    reverse

    逆序

    -R

    Recursion

    递归

    -s

    set

    设置

    soft

    软连接

    -t

    time

    时间戳

    -v

    view

    查看

    -w

    word

    单词

    14.常用命令别名
    alias ls='ls -GF'
    alias s='sudo'
    alias sa='sudo -u admin'
    alias m='mysql -u root'
    alias gu='iconv -f gbk -t utf-8'
    alias ug='iconv -f utf-8 -t gbk'
    alias ssh='ssh -2'
    alias ll='ls -al --color=tty'
    alias lftp="lftp username:passwd@ftpIP"

    alias vd='vimdiff'
    alias tf='tail -f'
    alias af="awk -F ' \t' '{print NF}'"
    alias wl='wc -l'
    alias rmsvn='find . -name ".svn" -exec rm -rf {} \; >> /dev/null 2>&1'
    alias grep='grep --color=auto'

    if [ $OS = "Linux" ]; then
       
    alias ls='ls --color -F'
       
    alias scp='scp -1'
    fi
  • TA的每日心情
    开心
    2019-5-16 07:14
  • 签到天数: 77 天

    [LV.6]五品郎中

    4

    主题

    311

    回帖

    1195

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    1195
    发表于 2012-9-4 16:41:29 | 显示全部楼层
    新人前来学习!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2012-10-7 10:22
  • 签到天数: 6 天

    [LV.2]九品芝麻官

    2

    主题

    92

    回帖

    68

    积分

    [INTOHARD]班长

    Rank: 2

    积分
    68
    发表于 2012-9-11 10:30:05 | 显示全部楼层
    新人前来学习!赚积分啦。

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-3-7 17:04
  • 签到天数: 30 天

    [LV.5]六品通判

    17

    主题

    1667

    回帖

    2112

    积分

    [INTOHARD]营长

    Rank: 6Rank: 6

    积分
    2112
    发表于 2013-5-24 23:58:57 | 显示全部楼层
    新人前来学习!赚积分啦
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表