zoukankan      html  css  js  c++  java
  • Linux 常用命令集合

    apt-get: 下载更新软件

    debian系系统的软件包管理程序(其图形化前端就是大名鼎鼎的新立得了),会自动帮你搞定依赖关系

    最常用参数:

    update—与你的软件源(在/etc/apt/sources.list中列出)更新软件包列表,换源后需要执行

    upgrade—根据update得到的源软件库与本地已经安装的对比,(如果需要升级就)全部升级

    install—安装软件包(可以使用tab补全软件包的名字,比较方便)

    remove—卸载软件包

    purge—卸载软件包,同时删除该软件的配置文件

    source—从源里下载软件包的源码到当前目录(执行此命令的目录)并解压(除非指定–download-only参数)

    该地址由/etc/apt/sources.list中的 deb-src 行指定

    check—用来(自动)修复(已装)软件包之间的依赖关系

    clean—清除/var/cache/apt/archives/包括其子目录partial/下的所有软件包缓存

    autoclean—比clean常用,我的理解是删除低版本的缓存而保留高版本的(或者包括非当前源里的软件包?)

    例如:安装filezilla,使用sudo apt-get install filezilla

    cat:

    把(一个或多个)文件内容(连接)显示到标准输出,当文本文件很小,而且你只是想看下,并不打算用gedit或者vim之类编辑器编辑的时候,可以cat一下,我是用来配合grep使用。

    例如:

    cd:

    切换当前工作目录,不同于其他命令,这是一个shell内置命令,所以没有手册页可看…够基础。

    最常用参数:

    .—切换到当前目录(貌似没有什么意义)(.这个目录可以通过ls -a看到)

    ..—切换到上层目录

    ~—回到家目录(/home/你的登录名/)

    chmod:

    改变文件的权限位,linux文件系统的权限位有两种表示方法,简要介绍下:ls -l可以显示出文件的权限,比如(-rwxr-xr--),代表了三种用户的权限,第一个rwx,代表文件所有者的权限,即(读,写,执行),用二进制表示为111,代表八进制中的4+2+1=7;第二个r-x,代表文件所有者同一用户组其他用户的权限,即(读, ,执行),用二进制表示为101,代表八进制中的5=4+0+1;第三个r–,代表其他用户的权限,即(读, , ),二进制表示为100,代表八进制的4=4+0+0。所以这个文件的权限位为754

    例如chmod 751 myfile #将该文件权限设定为rwxr-x--x

    最常用参数:

    -v—列出当前正在执行的步骤

    -R—递归式,即改变非空目录下的一切为指定权限

    cp:

    拷贝文件和目录,最常用参数:

    -b—为每个已经存在的目的文件作个备份

    -d—遇到软链接时不拷贝软链接所指向的文件;拷贝时保留links属性(链接数)

    -p—保留文件的访问权限,所有者,和时间戳

    -R和-r—递归式拷贝(cp过程遇到非空目录才有效),即拷贝目录,子目录,子目录的子目录…..

    -a—作用同-dpR

    -s—并不真的做拷贝,而只是为每个文件作软链接(符号链接)

    -u—同下面 mv 的-u参数

    mv:

    移动或者更名文件,取决于目的目录是否为当前目录

    最常用参数:

    -b—为每个已经存在的目的文件做个备份(防止覆盖)

    -f—不提示是否覆盖已经存在的目的文件

    -i—与-f参数相反

    -u—仅当源文件比目的文件更新或者目的文件不存在时候才移动

    -v—显示移动文件的进度(个人总是推荐使用此参数,明白你在做什么)

    rm, rmdir:

    rm:删除文件或目录,rmdir:删除一个空目录(此命令个人认为没啥用,可以用rm -r替代)

    rm最常用参数:

    -f—不提示不存在的文件,直接跳过

    -i—每个删除动作都提示 (=.= 删除多的话岂不是烦死)

    -I—删除多个文件(多于3个时)或者递归式删除(对于非空目录)提示一次

    -r和-R—递归式删除该目录下的一切东东

    -v—显示每个文件的删除动作(个人总是推荐使用此参数,明白你在做什么)

    mkdir:

    创建一个目录,最常用参数:

    -p—如果给出的路径中父目录不存在,则同时创建父目录

    head, tail

    就像这两个名字,一个显示文件头部,一个显示尾部,最常用参数:

    -n—指定输出的(头部或尾部)行数, 当没有此参数时,默认显示10行

    ifconfig:

    配置网卡

    最常用参数:

    没有参数—列出当前活动网卡的状态

    -a—列出所有网卡的状态

    interface—指定网卡名称比如eth0

    up—唤醒该网卡

    down        —-关闭该网卡

    ufw

    设置防火墙状态,常用参数:

    sudo ufw status—查看防火墙状态

    sudo ufw disable—关闭防火墙

    sudo ufw enable—开启防火墙

    ln:

    为文件建立链接,linux的链接分为两种:硬链接和软链接,ln默认建立硬链接(hard link),两种的区别请自己搜索,最常用参数:

    -s—建立软链接(符号链接,可以理解为win下的快捷方式)

    -f—如果要建立的链接名已经存在,则删除之

    ls:

    显示目录内容,最常用参数:

    -a—显示指定目录所有文件,包括文件名以 . 开头的文件

    -l—显示文件详细信息(包括文件类型,权限,修改时间,访问时间,大小,文件名…)

    -h—将文件大小以方便阅读的形式表示出来,配合 -l &

    man:

    阅读参考手册,题外话话说这是linux最最难学的命令,因为man你学好了,就没有什么命令能难倒你了,无敌了。man可以查的不仅仅是命令额(当然,因为man是无敌的嘛),最常用参数:

    man 阿拉伯数字

    阿拉伯数字1: 可执行程序(一般为用户安装的程序,如果提供了manpages的话)和shell命令

    阿拉伯数字2: 系统调用(例如 open调用,socket调用,chmod调用 等等等等),先装manpages-dev先

    阿拉伯数字3: 库函数调用(例如 man 3 printf),先装manpages-dev先

    …….

    当你执行man ls 时, 和 man 1 ls结果是一样的,因为ls在man手册中只有一个入口

    当你想看chmod调用的手册页时,就要特别指定 man 2 chmod了~~因为chmod不止有一个入口

    在man的时候,可以通过j,k上下移动(和vi中类似),可以通过/查询,通过n,N查找下个,上个匹配(和vi类似)

    q退出(也和vi类似….)

    比较有意思的一点:

    由于man 本身是个命令,所以,连man都是可以man的 =.=

    mount:

    挂载文件系统(可理解为挂载一个分区),最常用参数:

    -t—指定文件系统类型,比如iso9660(挂载iso镜像为光盘,相当于虚拟光驱),ntfs,ext3,rfs等等

    -l—列出所有已经挂载的文件系统,支持卷标

    -a—挂载fstab中记录的所有分区

    -n—挂载的时候不写入/etc/mtab

    -o—相当常用的一个参数,指定挂载文件系统的“选项”,比如noatime,用来挂载BT专用分区很合适

    ps,top:

    列出当前命令的执行状态,ps为静态,top为动态(top时’q’退出)

    ps:这个命令本人更常用些,推荐给你看看:

    最常用参数(ps多用参数集合,而不是单个参数,并且配合grep使用)

    -ef—以标准语法列出当前所有进程状态,例如ps -ef | grep eva #列出eva的进程状态

    aux—以BSD语法列出………………………………..

    -ejH—列出进程树

    -eLf—同时列出线程状态

    du

    显示指定的文件或目录已使用的磁盘空间的总量,常用参数

    -a—显示对所有文件的统计,包含子目录

    -b—输出的结果以字节为单位

    -c—只计算目录的总用量

    -h—以M为单位 1024kb=1M

    -H—以M为单位 1000kb=1M

    -s—只显示目录使用空间的总和

    例如:查看某个文件夹的大小du –sh filename

    dmidecode

    查看硬件信息,包括bios、cpu、内存等信息

    df

    显示文件系统磁盘空间的使用情况,常用参数:

    -h 以1024kb=1M计算

    -H以1000kb=1M计算

    free

    显示内存状态信息,常用参数:

    -k以KB为单位显示内存的使用情况

    -m以MB为单位显示内存使用情况

    -t显示内存总和列

    sudo,su:

    sudo我们主要用来临时提升权限,主要用以管理员(超级用户)的权限来运行命令,当需要修改当前登录用户力所不能及的文件/目录时需要用sudo,或者su –c,当然sudo和su的作用范围不仅仅如此

    sh:

    在终端解释执行,类似于’./’的形式,但PT给了不同点: ‘./’仅仅对当前目录下有执行权限的程序才有效,’sh’则不管这套,想想也是哈, ‘./’仅仅是给出了一个文件的路径(在当前目录下)而已, 但这个文件能不能执行就不好说了

    所以用sh总是正确的

    shutdown:

    关闭系统,如果停留在TTY,请改用halt, poweroff等命令

    常用参数:

    +m—指定关机延迟的分钟

    -c—取消一个等待关机的请求(关掉运行此命令的终端也可:))

    now—立即关机

    hh:mm—手动指定时间(以24小时计)

    例如:shutdown –h now 立即关机

    shutdown -r now 现在立即重启

    tar:

    打包/解包,这个tar不多说了吧,到处都是tar.gz,tar.bz2的东东,和ps命令一样,tar一般不用单个参数,而是多个参数的组合,记住参数x是解压(extract),c是创建包(creat)即可

    最常用参数:

    -xvf—详细列出解包的步骤

    -cvf—详细列出打包的步骤

    -j—用来说明这是个tar.bz2包,例如tar -xjvf myfile.tar.bz2

    -t—列出包中的文件列表

    —–打包时常追加的参数:

    -r—追加到压缩包中

    -u—只把比包中更新的文件追加进去

    -h—不把符号链接添加到包中,而是添加此符号链接指向的文件

    附加说明:tar是个太强大的东东,常用的操作也就是打包解包,高级功能还是参阅man

    gzip

    压缩解压缩gz格式的文件,常用参数:

    -d—解开压缩文件

    -f—强行压缩文件

    例如:解压缩文件,gzip –d filename.gz

    touch:

    改变文件时间戳,默认包括修改时间和创建时间,默认修改为当前时间,默认如果文件不存在就新建

    ssh

    远程登录服务器,首先确认远程服务器安装ssh了服务,使用“ps –e | grep ssh”只有ssh-agent则没有启动或者安装,安装:sudo apt-get install openssh-server ,启动:/etc/init.d/ssh start。

    终端登录:ssh username@remote_ip或者 ssh -l username remote_ip , 然后提示输入密码。

    lftp 登录远程ftp服务器

    登录:lftp username@ip 然后输入口令。

    一些常用命令:

    下面我们看一下lftp常用的命令:

    ls 显示远端文件列表(!ls 显示本地文件列表)。

    cd 切换远端目录(lcd 切换本地目录)。

    get下载远端文件。

    mget 下载远端文件(可以用通配符也就是 *)。

    pget 使用多个线程来下载远端文件, 预设为五个。

    mirror 下载/上传(mirror -R)/同步 整个目录。

    put  上传文件。

    mput 上传多个文件(支持通配符)。

    mv 移动远端文件(远端文件改名)。

    rm 删除远端文件。 参数-r,递归删除文件夹

    mrm  删除多个远端文件(支持通配符)。

    mkdir  建立远端目录。

    rmdir  删除远端目录。

    pwd  显示目前远端所在目录(lpwd 显示本地目录)。

    du  计算远端目录的大小

    set ftp:charset gbk  设置远程ftp site用gbk编码  

    执行本地 shell的命令(由于lftp 没有 lls, 故可用 !ls 来替代)

    lcd 切换本地目录

    lpwd 显示本地目录

    alias 定义别名

    bookmark  设定书签。

    exit 退出ftp

    linux 查看硬件信息:proc 

    cat /proc/cpuinfo  #查看CPU信息,内容很全哦!

    cat /proc/meminfo  #查看内存信息。

    cat /proc/ioports    #查看IO端口

    cat /proc/swaps     #查看交换分区信息(/proc)

    cat /proc/interrupts  #中断信息

    cat /proc/partitions   #查看磁盘分区

    cat /proc/bus/usb/devices   #查看USB设备

    cat /proc/bus/input/devices   #查看输入设备:键盘鼠标

    cat /proc/bus/pci/devices   #查看PCI设备

    cat /proc/loadavg   #查看系统负载

    cat /var/log/demsg   #查看开机检查的硬件,可以使用grep过虑:eth,cpu,mem,pci,usb,vga,sda……

    linux 查看硬件信息:终端命令行

    lscpu         #查看CPU信息

    lspci          #查看PCI设备

    lsusb         #查看USB设备

    vmstat     #报告虚拟内存统计信息

    fdisk –l      #查看分区信息

    hdparm -i /dev/sda           #查看磁盘参数

    df –h         #查看磁盘分信息

    dmidecode       #读取系统DMI表来显示硬件和BIOS信息。

    lsmod       #当前加载的驱动

    dmesg      #查看开机检查的硬件,可以使用grep过虑:eth,cpu,mem,pci,usb,vga,sda……

    uptime     #查看系统负载

  • 相关阅读:
    ansible命令应用示例
    ansible运维自动化工具
    grep 命令使用指南
    Nginx httpS server配置
    find 使用指南
    fastcgi_param 详解
    nginx虚拟主机的配置
    shell中字体变色
    nginx.conf 配置文件详解
    php-fpm.conf 配置文件详解
  • 原文地址:https://www.cnblogs.com/nexiyi/p/2843877.html
Copyright © 2011-2022 走看看