zoukankan      html  css  js  c++  java
  • Linux常用系统管理命令

    1、alias //查看全部alias的定义, 可在.bash_profile(.bashrc、/ect/profile 也可以)文件中定义;
    也可以临时定义:
    alias 'cd ~/log/MPP/`date +%Y%m%d`;pwd' //代替命令='要执行的命令1;命令2;命令3...'
    ln -s /root/abc.java aa //软连接,aa-->abc.java
    clear //清除屏幕
    history //查看执行过的历史命令记录
    history 20 //查看最近执行的20条历史命令记录
    env | more //查看该用户的环境变量,PATH;依然定义在:/用户目录/.bash_profile
    说明:| more:带分页显示(空格键下一页,回车下一行);| less:带分页,提供页数输入
    echo $PATH/USER/SHELL //显示变量内容,跟env一样,只是可以选择显示哪类

    2、Shell
    1)环境变量,profile文件(shell脚本),如配置jdk,tomcat,一般是在/etc/profile或$HOME/.bash_profile配;
    2)配置一些变量,.bash_profile(shell脚本),如alias,bin的PATH路径(env查看);
    3)配置开机自动执行程序,.bashrc(shell脚本),如让tomcat开机就启动:/home/tomcat/bin/startup.sh start
    说明:在/etc/目录下,对所有用户有效;在/root/或/home/用户目录/下,对当前用户生效;
    export PATH=$PATH:/root //添加环境变量/root路径,临时生效

    3、系统日期,时间
    date //查看系统当前日期、时间
    who am i //查看当前用户,whoami:只显示用户名,who:显示所有用户
    date -s 05/27/2011 //将系统日期修改为:2011年5月27日 (需oot用户修改,其它用户默认只能查看)
    date -s 10:24:00 //将系统时间修改为:10点24
    date 02050930 //将系统时间修改为:2月5日9点30 (年份保持修改前的年份), date 0930不行,完整格式MMDDHHMMYYYY.SS:月日时分年.秒`
    cal 3 2002 //查看2002年3月的月历
    cal 2008 //查看2008年的年历

    4、修改文件即时生效 //source命令也称为“点命令”,也就是一个点符号(.)
    source 目录/文件 或 . 目录/文件 //注意: . 和 目录/文件间有空格,例:. .bash_profile

    5、查看目录和文件
    cd - //退回进入此目录之前所在的目录,区别于上级目录:cd ..
    cd //直接cd,到当前用户的主目录去
    ls //简要列出文件、文件夹, 不含隐藏;dir :不区分颜色显示
    ll //详细列出文件、文件夹, 不含隐藏, 同ls -l
    ls -a //简要列出文件、文件夹, -a,含隐藏
    ls -la //详细列出文件、文件夹, -a,含隐藏
    ls -lh //-lh,显示大小
    通配符:
    *:多个,?:一个

    6、文件时间
    stat a.txt //查看文件时间戳
    ll a.txt //查看a.txt文件的-l 信息
    touch [acdmt] 文件 //修改文件时间或创建新文件

    7、查看路径
    pwd //查看默认工作目录的完整路径 --连接(link)路径
    pwd -P //显示出实际路径,而非连接(link)路径
    pwdx 1158(进程号) //查看该进程号所属目录

    8、进程、端口
    ps -ef|grep java(程序名称) //查看tomcat进程,貌似tomcat,weblogic都可以用java进程来查,杀之
    kill -9 进程数 //杀死进程(-9:强制)
    netstat -an|grep 7988 //查看7988端口监听是否启动
    jps //显示该用户,java进程
    ps -aux | more //(静态)查看进程,分页显示; 动态查看:top ,详见 24、系统性能
    ps -aux|grep tomcat //查tomcat进程(不同用户权限也可以看到)
    netstat -anp | more //查看端口占用情况,-anp的p会把进程信息也显示出来
    telnet 192.168.1.128 7988 //检测端口是否开放(在windows cmd中执行)
    traceroute ip地址或域名 //追踪路由;cmd中:tracert

    9、分配权限
    chmod +x 目录/文件 //添加执行权限
    chmod a+x filename/文件夹 //给文件所有(a)用户分配所有权限
    chmod 777 文件/文件夹 //添加rwxrwxrwx权限,可读r:4,可写w:2,可执行x1

    10、查找
    find /home -name file //从目录/home开始搜索文件和目录
    find /home -amin -10 //10分钟内存取的文件或目录;
    说明:-a:存取,-c修改;min:分钟,time:小时;-:时间内,+:时间前
    find /home -size +100000k //从/home目录开始查找大于100M的文件;
    说明:+:大于,-:小于;k:kb,c:字节;可并用:find /home -size +5555c -size -5557c //大于5555字节小于5557字节
    find /etc -name "abc*" -print //查找/etc下以abc开头的文件;-print:将匹配的文件输出到标准输出
    grep "abc" xxx.java //显示xxx.java文件中有abc的行
    grep -n "abc" xxx.java //带行号显示
    grep "abc" xxx.java > xxx.text //覆盖写;<:导入,备份;
    grep "abc" xxx.java >> xxx.text //追加写
    grep 'test' d* //显示所有以d开头的文件中包含 test的行
    grep ‘test’ a.file b.file c.file //显示在a.file,b.file,c.file文件中匹配test的行
    grep ‘[a-z]{5}’ a.file //显示a.file文件中,至少有5个连续小写字符的字符串的行
    grep magic /usr/src/Doc/* //在/usr/src/Doc目录下搜索带字符串’magic’的文件
    which java
    whereis java //查找jdk位置
    cat /proc/version //查看linux版本信息
    查看64位还是86位:
    java -version //(Java)Java HotSpot(TM) 64-Bit:64位;默认没有一般是32位
    uname -a (-r) //(Linux)x86_64:64位;i686:32位

    11、查看 --日志
    tail -f a.log //动态输出,另:tail -300 a.log ,只查看300条
    tailf a.log
    tail -n 10 a.log //最后10行
    tail -n 10 a.log | head -n 5 //最后10行的前5行
    cat /dev/null > file //将文件内容清空
    view/cat/more a.log //静态查看
    跳转:
    1)、:0 , :1 , gg都可以到第一行;
    2)、或者:$=检查总行数;比如24,:24到第24行
    3)、shift+g(大写G)到末行;
    4)、Ctrl + F/B,向前/向后页
    查找:
    先输入 / 再输入要查找的内容 最后回车。查找下/上一个单词所以位置用n/N
    u 返回上一步操作,Ctrl+R撤销
    :set nu //显示行号

    12、移动/修改 --文件、文件名
    mv test.log test1.txt //修改文件名为test1.txt
    mv test1.txt test3 //移动文件或文件夹(可多个同时)到test3目录下

    13、修改替换 --文件内容
    sed -i "s/aaa/bbb/g" 1.txt // 将文件1.txt内的文字“aaa”批量替换成“bbb”
    sed -i "s/aaa/bbb/g" 'ls' //将当前目录下的所有文件内的“aaa”替换成“bbb”,其实也就是ls出多个文件名
    sed -i "s/aaa/bbb/g" 'grep aaa -rl /home' //替换/home下所有文件中的aaa替换为bbb
    vi , vim (进入文件)--> i (进入可编辑状态)--> esc (退出可编辑状态)--> : (进入执行操作状态)--> wq, q!(保存退出, 不保存强制退出)

    14、复制 --文件、目录
    cp a.log test5 //复制到test目录中,,(带-a参数时,时间也是一致的)
    说明:目标文件存在时,会询问是否覆盖。这是因为cp是cp -i的别名。
    cp -a test3 test5 //复制整个目录到test5
    说明:目标目录存在时,整个源目录(包括自身目录)被复制到目标目录里面;不存在,就创建test5,里面内容同test3
    cp -r dir1 dir2 //(包括子文件夹)复制到dir2文件夹,-r:递归recursion,-f:强制force(慎用)

    15、创建目录
    mkdir test1 //创建一个空目录,touch:新建空文件
    mkdir -v test2 //创建新目录,并显示创建信息
    mkdir -p test3/test3_1 //递归创建多个目录
    mkdir -vp test4/test4-1 //递归创建多个目录,并显示创建信息
    mkdir -m 777 test5 //创建权限为777的目录 ,test5 的权限为rwxrwxrwx

    16、删除 --文件、目录
    rm a.log //删除文件file,系统会先询问是否删除
    rm -i *.log //删除任何.log结尾的文件;删除前逐一询问确认
    rm -r test1 //将 test1子目录及子目录中所有档案删除 ,会询问,-r:递归
    rm -f a.log // 强行删除file,系统不再询问, 慎用
    rm -- -f //删除以 -f 开头的文件
    rmdir folder1 //删除空目录,非空目录删不了,只能用rm命令

    17、用户管理
    useradd xiaoming //增加xiaoming用户
    passwd xiaoming //接着输两次密码
    chown user1 /home/weblogic //把home目录下的weblogic目录的拥有者改为user1用户
    chgrp group1/home/weblogic //把home目录下的weblogic目录的所属组改为group1组
    cat /etc/passwd //查看用户列表(nscd下面为新建用户) ,w 查看活跃用户
    cat /etc/group //查看组列表
    awk -F":" '{print $1}' /etc/passwd //只查看所有的用户名
    lastlog //查看所有用户(登录情况)x

    18、解压、打包
    tar -xzvf file.tar.gz //解压tar.gz包 至当前目录
    tar -czvf /root/filename_$(date +%Y-%m-%d).tar.gz /home/weblogic/files //打包(.tar.gz)
    tar -xvf file.tar //解压 tar包
    unrar file.rar //解压rar
    unzip file.zip //解压zip

    19、RPM管理
    rpm -ivh 目录/安装包名 //i:安装,v:显示进度条,h:显示安装信息
    rpm -q mysql(软件名) //查看是否已经安装mysql
    rpm -e samba(软件名) //卸载samba

    20、乱码
    export LANG=en_US //设置成英文,乱码时用

    21、防火墙 --开,关
    service iptables start/stop //开启/关闭防火墙,即时生效,重启后失效
    chkconfig iptables on/off //重启后永久生效

    22、设置网络 --ip
    ifconfig //查看ip情况,cmd是ipconfig
    ifconfig eth0 192.168.0.10 netmask 255.255.255.0 //方法1,设置(eth0)ip,立即生效,重启后失效
    ifconfig eth0 up //连接eth0网络
    vi /etc/sysconfig/network-scripts/ifcfg-eth0 //方法2-1重启后永久生效,重启机器,IP不会丢失
    setup //方法2-2, 界面配置,(需要root用户)
    /etc/rc.d/init.d/network restart //运行该命令,使方法2-1,2-2的设置生效

    23、远程登录
    ssh 用户名@ip地址 //回车输入密码 ,登录到远程机器

    24、远程文件传输
    sftp 用户名@ip地址 //回车输入密码,登录到远程sftp
    put /local_path/file /remote_path/ //上传
    get /remote_path/file ./yb/ //下载, 到本地当前目录的yb文件夹中
    help //查看sftp支持的命令
    (推荐:不用先登录,更方便)
    scp /local_path/file user@ip:/remote_path/ //上传
    scp user@ip:/remote_path/file /local_path/ //下载

    25、任务调度
    crontab -l //查看有哪些定时任务
    crontab -e //设置定时任务,进入添加定时任务文件中
    格式 //minute hour day month week command
    00 23 * * * /root/backup_nohup.sh //每晚11点执行,(分0-59 时0-23 日1-31 月1-12 星期0-6)
    0 2 * * * date >> /home/mydate2 //每天凌晨2点,将系统时间追加写到mydate2文件中
    crontab -r //终止任务调度(删除了crontab -e 的内容),-r:remove,小心使用
    调度多个任务:
    直接在crontab -e 中写多行 //方法一,不推荐
    把多个任务都写到一个可执行文件中 //方法二,shell编程,推荐
    vi /root/mytask.sh //在mytask.sh中写任务,然后在crontab -e 中调度mytask.sh执行文件即可

    26、系统性能、内存
    free -m //查看服务器内存使用情况,-g:G为单位,-m:M为单位
    top //(动态)查看系统CPU运行情况,按q退出,或ctrl+c
    top -d 10 //10秒刷新一次
    按u //可选择显示那个用户的情况
    cat /proc/cpuinfo //查看CPU的信息
    reboot //重启服务器(用root用户登录)
    vmstat 1 4 //监控Linux服务器的整体性能
    uptime //查看Linux服务器的平均负载
    w //详细查看负载
    fdisk -l //查看硬盘及分区信息
    df -h //检查文件系统的磁盘空间占用情况
    iostat -d -x -k 1 5 //查看硬盘的I/O性能
    du -sh /bin/ //查看指定目录的大小
    du -cks * | sort -rn |head -n 10 //查看当前目录下的文件占用率
    lsmod |grep ip //查看系统已载入的相关模块

    27、 linux系统启动过程:
    a)BIOS自检
    b)启动GRUB/LILO
    c)运行linux内核并检测硬件
    d)运行第一个进程init
    e)init读取系统引导配置文件 etc/inittab中的信息进行初始化
    f)/etc/rc.d/rc.sysinit //系统初始化脚本,比如,启动的内容,用户密码
    g)/etc/rc.d/rcX.d/[KS]* //根据运行级别x配置服务;终止"K"开头的服务,启动"S"开头的服务
    h)/etc/rc.d/rc.local //执行本地特殊配置
    i)其他特殊服务

  • 相关阅读:
    UVA 1025 A Spy in the Metro DP水题
    ZOJ 3814 Sawtooth Puzzle BFS
    ZOJ 3816 Generalized Palindromic Number
    UVA 10859 Placing Lampposts 树形DP
    UVA 11825 Hackers' Crackdown 状压DP
    POJ 2887 Big String 线段树 离线处理
    POJ 1635 Subway tree systems Hash法判断有根树是否同构
    BZOJ 3110 k大数查询 & 树套树
    sdoi 2009 & 状态压缩
    来自于2016.2.24的flag
  • 原文地址:https://www.cnblogs.com/mike357/p/15122812.html
Copyright © 2011-2022 走看看