Ubuntu常用命令

Ubuntu常用命令


author@jason_ql(lql0716)
http://blog.csdn.net/lql0716


1 常用命令

  • Ubuntu显示隐藏文件夹:Ctrl+H

  • 双系统,windows启动不了了,ubuntu可以启动,从ubuntu修复windows启动的方法,在终端里输入:sudo update-grub

终端提示符:

# 表示超级用户,即管理员

$ 表示一般用户
  • Linux系统文件夹:
/root  超级用户的目录
/tmp   临时目录
/sbin  命令保存目录(超级用户权限)
/proc  直接写入内存的
/sys
/usr 系统软件资源目录
    /usr/bin/  系统命令(普通用户)
    /usr/sbin/  系统命令(超级用户)
/var 系统相关文档内容

1.1 解压缩

  • .gz
解压1:gunzip FileName.gz

解压2:gzip -d FileName.gz 

压缩:gzip FileName .tar.gz 

解压:tar -zxvf FileName.tar.gz 

压缩:tar -zcvf FileName.tar.gz DirName 
  • .bz2
解压1:bzip2 -d FileName.bz2 

解压2:bunzip2 FileName.bz2 

压缩: bzip2 -z FileName .tar.bz2 

解压:tar -jxvf FileName.tar.bz2 

压缩:tar -jcvf FileName.tar.bz2 DirName 
  • .bz
解压1:bzip2 -d FileName.bz 

解压2:bunzip2 FileName.bz 

压缩:未知 .tar.bz 

解压:tar jxvf FileName.tar.bz 

压缩:未知 
  • .Z
解压:uncompress FileName.Z 

压缩:compress FileName .tar.Z 

解压:tar Zxvf FileName.tar.Z 

压缩:tar Zcvf FileName.tar.Z DirName 
  • .tgz
解压:tar zxvf FileName.tgz 

压缩:未知 .tar.tgz 

解压:tar zxvf FileName.tar.tgz 

压缩:tar zcvf FileName.tar.tgz FileName 
  • .zip
解压:unzip FileName.zip 
格式:unzip 压缩文件

压缩:zip FileName.zip DirName 
格式:zip 压缩文件名 文件
  • .rar
解压:rar a FileName.rar 

压缩:r ar e FileName.rar

1.2 目录文件操作

  • .deb

    .deb文件,直接双击即可安装
    终端命令安装:sudo dpkg -i lantern-installer-beta-64-bit.deb

  • pwd 查看当前路径

  • 解压命令
    tar -xvf 文件名

  • 新建文件
    在终端中进入要新建文件的目录下,使用以下命令:touch 文件名

  • delete
    完整命令: sudo rm firle_name
    rm [选项] 文件

-f, --force         #强力删除,不要求确认

-i                  #每删除一个文件或进入一个子目录都要求确认

-I                  #在删除超过三个文件或者递归删除前要求确认

-r, -R               #递归删除子目录

-d, --dir            #删除空目录

-v, --verbose        #显示删除结果

常用如下几个:
rm -d 目录名 #删除一个空目录
rmdir 目录名 #删除一个空目录
rm -r 目录名 #删除一个非空目录
rm 文件名 #删除文件

  • jobs
    查看当前有多少在后台运行的命令.

  • kill
    法子1:通过jobs命令查看job号(假设为num),然后执行kill %num
    法子2:通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid
    前台进程的终止:Ctrl+c

  • 打开文件

在Ubuntu下,当需要打开其他格式文件时,比如pdf、jpg、mp3等格式文件,通常做法是进入到文件所在的目录,双击打开,很影响效率。事实上,可以通过命令xdg-open打开这些格式文件,甚至是网页,像打开文件一样简单。

举两个例子:
ctrl+alt+t打开终端
用户名@主机名: xdg-open la_isla_bonita.mp3
用户名@主机名: xdg-open http://www.baidu.com
xdg-open会选择默认的程序打开指定文件,跟双击打开效果一样。

  • 常用

    • cd #切换工作目录。

    • cd - #返回历史记录的上一个目录

    • cd ~ #返回用户主目录

    • cd .. #返回当前目录的父目录

    • ls #显示目录(-l -d等参数),特别说明ls命令不支持管道命令。

    • mkdir #创建目录。

      mkdir -p test/test2 递归的创建目录,即二级目录

    • rmdir #删除目录(若目录下有文件或子目录,无法删除)。

    • touch #创建一个新文件或者修改文件的时间戳。

    • rm #删除文件或目录(删除目录一般会使用-rf参数)。

    • cp #拷贝文件,常用格式:cp /home/source.txt /home/tmp/

      [选项]
      -r 复制目录
      -p 连带文件属性复制
      -d 若源文件是链接文件,则复制链接属性
      -a 相当于-pdr

    • mv [源文件或路径] [目标路径] #移动文件或者文件重命名。

    • echo #打印信息。

    • find #查找文件(一般格式:find ./ -name src.cpp)。

    • grep #查找匹配字符串(一般格式:grep -nr “name” ./)。

    • source #将当前文件的修改同步到父shell中,文件一般为shell脚本。

    • top #查看当前系统进程的信息。

    • cat #查看文件内容,显示在当前终端,常用格式:cat filename.txt

    • ps #查看系统中进程的信息。

    • date #显示或设置系统时间或日期。

    • chmod #设置文件的权限。

    • chown #设置文件的所有者、所属组等。

    • clear #清屏。

    • reset #重启终端的窗口。

    • tar #归档、解压缩。

    • ifconfig #查看网络设置。

    • su #切换用户。

    • sudo #以root身份来执行命令。

    • man #查看帮助手册。

  • 链接命令ln

    • 格式:ln -s [源文件] [目标文件]

    -s 创建软链接

1.3 文件搜索

文件搜索命令:

  • locate 文件名

    使用方法:
    1、 updatedb //更新后台数据库
    2、 /var/lib/mlocate //locate主要在该路径下快速搜索,只能按文件名搜索,速度快
    3、 locate 文件名

  • whereis与which

whereis [选项] 查找系统 命令所在的路径及帮助文档所在的位置

  • 选项-b 只查找可执行文件
  • 选项-m 只查找帮助文件

which [命令] 搜索命令及别名

  • find

    • 格式:find [搜索范围] [搜索条件]
    • find /root -iname 文件名
      不区分大小写搜索
    • find /root -user root
      安装所有者搜索
    • find /root -nouser
      查找没有所有者的文件
    • find /var/log/ -mtime +10
      -10 表示10天内修改的文件
      10 表示10天当天修改的文件
      +10 表示10天前修改的文件
      atime 文件访问时间
      ctime 改变文件属性
      mtime 修改文件内容
    • find . -size 25k
      该命令中.表示当前目录,该命令为查找文件大小为25k的文件
      -25k 表示小于25k的文件
      25k 表示等于25k的文件
      +25k 表示大于25k的文件
    • find . -inum 262422
      查找i节点是262422的文件
    • find /etc -size +20k -a -size -50k
      查找/etc/路径下,大于20k并且小于50k的文件
      -a and 逻辑与,两个条件都满足
      -o or 逻辑或,两个条件满足一个即可
    • find /etc -size +20k -a -size -50k -exec ls -lh{}\;
      查找/etc/路径下,大于20k并且小于50k的文件,并显示详细信息

    • 注意:
      避免大范围搜索,会非常耗费系统资源;
      find是在系统中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配

    • 通配符:
      *表示匹配任意内容
      ?表示匹配任意一个字符
      []表示匹配任意一个中括号内的字符
  • grep

    • 格式:grep [选项] 字符串 文件名
      在文件中匹配符合条件的字符串
    • 选项
      -i 忽略大小写
      -v 排除指定字符串

1.4 帮助命令

  • man 命令
    获取指定命令的帮助
    • man ls
      查看ls的帮助
  • man -f ls相当于whatis ls
    man -f 命令相当于whatis 命令
  • man -k 命令
    查看所有相关命令的帮助
  • 命令 --help
    获取命令选项的帮助
  • info 命令
    详细命令帮助
    - 回车 进入子帮助页面(带有*号标记)
    - u 进入上层页面
    - n 进入下一个帮助小节
    - p 进入上一个帮助小节
    - q 退出

1.5 关机与重启命令

  • shutdown [选项] 时间

    • 选项
      -c:取消前一个关机命令
      -h:关机
      -r:重启
    • 示例:shutdown -h now现在关机
  • haltpoweroffinit 0

    这三个均为关机命令,一般不建议使用,最好用shutdown

  • rebootinit 6

    这两个均为重启命令,一般不建议使用,最好用shutdown

  • logout

    退出登录命令

1.6 挂载命令

  • mount

    查询系统中已经挂载的设备

  • mount -a

    依据配置文件/etc/fstab的内容,自动挂载

  • mount [-t 文件系统] [-o 特殊选项] 设备文件名 挂载点

    挂载命令格式

    • 选项
      -t 文件系统:加入文件系统类型来指定挂载的类型,可以ext3、ext4、iso9660等文件系统
      -o 特殊选项:可以指定挂载的额外选项

1.6.1 挂载光盘

  • mkdir /mnt/cdrom/

    建立挂载点

  • mount -t iso9660

    挂载光盘

  • mount /dev/sr0 /mnt/cdrom/

  • umount 设备文件名或挂载点

    • 卸载命令
    • 例如:umount /mnt/cdrom
  • fdisk -l

    查看u盘设备文件名

  • mount -t vfat /dve/sdbl /mnt/usb/

    注:Linux默认是不支持NTFS文件系统的

1.7 用户登录查看命令

  • w 用户名(可以不加用户名)

    命令输出:
    USER 登录的用户名
    TTY 登陆终端
    FROM 从哪个IP地址登陆
    LOGIN@ 登陆时间
    IDLE 用户闲置时间
    JCPU 指的是和该终端连接的所有进程占用的时间。这个时间里并不包括过去的后台作业时间,但却包括当前正在运行的后台作业所占用的时间
    PCPU 是指当前进程所占用的时间
    WHAT 当前正在运行的命令

  • who 用户名(可以不加用户名)

  • last

    last命令默认是读取/var/log/wtmp/文件数据

    命令输出:

    • 用户名
    • 登录终端
    • 登录IP
    • 登陆时间
    • 退出时间(在线时间)
  • lastlog

    last命令默认是读取/var/log/lastlog/文件数据

    命令输出:

    • 用户名
    • 登录终端
    • 登录IP
    • 最后一次登录时间

1.8 终端快捷键

Ctrl + r     #实现快速检索使用过的历史命令。Ctrl+r中r是retrieve中r。

Ctrl + a     #光标回到命令行首。 (a:ahead)

Ctrl + e     #光标回到命令行尾。 (e:end)

Ctrl + b     #光标向行首移动一个字符。 (b:backwards)

Ctrl + f     #光标向行尾移动一个字符。 (f:forwards)

Ctrl + w     #删除光标处到行首的字符。

Ctrl + k     #删除光标处到行尾的字符。

Ctrl + u     #删除整个命令行文本字符。

Ctrl + h     #向行首删除一个字符。

Ctrl + d     #向行尾删除一个字符。

Ctrl + y     #粘贴Ctrl+u,Ctrl+k,Ctrl+w删除的文本。

Ctrl + p     #上一个使用的历史命令,相当于方向向上的方向键。 (p:previous)

Ctrl + n     #下一个使用的历史命令,相当于方向向下的方向键。(n:next )

Ctrl + t     #交换光标所在字符和其前的字符。

Ctrl + i     #相当于Tab键。

Ctrl + o     #相当于Ctrl+m.

Ctrl + m     #相当Enter键。

其他控制键:

Ctrl + s     #使终端发呆,静止,可以使快速输出的终端屏幕停下来。

Ctrl + q     #退出Ctrl+s引起的发呆。

Ctrl + z     #使正在运行在终端的任务,运行于后台。 (可用fg恢复)

Ctrl + c     #中断终端中正在执行的任务。

Ctrl + d     #在空命令行的情况下可以退出终端。

Ctrl + [     #相当于Esc键。

Esc键     #连续按3次显示所有的支持的终端命令。

Tab键     #命令、文件名等自动补全功能。按两次tab键,显示所有文件名

Ctrl + l #清屏

1.9 Shell命令

1.9.1 概述

Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

Shell还是一个功能相当强大的编程语言,易编写,易调试,灵活性较强。Shell是解释执行的脚本语言,在Shell中可以直接调用Linux系统命令。

1.9.2 脚本执行方式

1.9.2.1 echo [选项] [输出内容]
  • 选项
    -e支持反斜线控制的字符转换
  • 控制字符
    \a输出警告音
    \b退格键,也就是向左删除键
    \n换行符
    \r回车键
    \t制表符,也就是tab键
    \v垂直制表符
    \0nnn按照八进制ASCII码表输出字符。其中0为数字零,nnn是三位八进制数
    xhh按照十六进制ASCII码表输出字符。其中hh是两位十六进制数
  • echo -e "hell\bo"
    删除左侧字符
  • echo -e "h\te\tl\nl\to"
    制表符与换行符
  • echo -e "\x68\t\x65\t\x6c\t\x6f\t"
    按照十六进制ASCII码也同样可以输出
  • echo -e "\e[1;31m 佳人 \e[0m"
    输出颜色
    30m=黑色,31m=红色,32m=绿色,33m=黄色,34m=蓝色,35m=洋红,36m=青色,37m=白色
1.9.2.2 脚本 vi hello.sh
vi hello.sh
#!/bin/bash
#The first program  注释

echo -e "好了" #输出命令
1.9.2.3 脚本运行方式
  • 赋予执行权限,直接执行
    chmod 755 hello.sh
    ./hello.sh
  • 通过Bash调用执行脚本
    bash hello.sh

1.9.3 Bash的基本功能

1.9.3.1 命令别名与快捷键
  • alias 查看系统中所有的命令别名
  • alias 别名='原命令' 设定命令别名
  • vi ~/.bashrc 写入环境变量配置文件
  • unalias 别名 删除别名
  • 命令生效顺序
    第一顺位执行用绝对路径或相对路径执行的命令
    第二顺位执行别名
    第三顺位执行Bash的内部命令
    第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令
1.9.3.2 历史命令
  • history [选项] [历史命令保存文件]
  • 选项
    -c 清空历史命令
    -w 把缓存中的历史命令写入历史命令保存文件~/.bash_history
  • 历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改,命令vim /etc/profile
  • 历史命令的调用
    1、使用上、下箭头调用以前的历史命令
    2、使用!n重复执行第n条历史命令
    3、使用!!重复执行上一条命令
    4、使用!字串重复执行最后一条以该字串开头的命令
1.9.3.3 输出重定向
  • 标准输出重定向
    命令 > 文件 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中
    命令 >> 文件 以追加的方式,把命令的正确输出输出到指定的文件或设备当中
  • 标准错误输出重定向
    错误命令 2>文件 以覆盖的方式,把命令的正确输出输出到指定的文件或设备当中(注意空格)
    错误命令 2>>文件 以追加的方式,把命令的错误输出输出到指定的文件或设备中(注意空格)
  • 正确输出和错误输出同时保存
    命令 > 文件 2>&1 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中(注意空格)
    命令 >> 文件 2>&1 以追加的方式,把正确输出和错误输出都保存到同一个文件当中(注意空格)
    命令 &>文件 以覆盖的方式,把正确输出和错误输出都保存到同一个文件当中(注意空格)
    命令 &>>文件 以追加的方式,把正确输出和错误输出都保存到同一个文件当中(注意空格)
    命令>>文件1 2>>文件2 把正确的输出追加到文件1中,把错误的输出追加到文件2中(注意空格)
1.9.3.4 输入重定向:
  • wc [选项] [文件名]
  • 选项
    -c 统计字节数
    -w 统计单词数
    -l 统计行数
  • 命令 < 文件名 把文件作为输入
  • 命令 << 标识符
1.9.3.5 多命令顺序执行
  • ; 分号
    格式:命令1 ; 命令2
    多个命令顺序执行,命令之间没有任何逻辑联系
  • && 逻辑与
    格式:命令1 && 命令2
    当命令1正确执行,则命令2才会执行
    当命令1执行不正确,则命令2不会执行
  • || 逻辑或
    格式:命令1 || 命令2
    当命令1执行不正确,则命令2才会执行
    当命令1正确执行,则命令2不会执行
1.9.3.6 管道符
  • 命令1 | 命令2
    命令1的正确输出作为命令2的操作对象
  • 如:ls -l /etc | more 分批查看该路径的内容(more表示分批查看)
1.9.3.7 Shell中特殊符号
  • 通配符
    • ? 匹配一个任意字符
    • * 匹配0个或任意多个任意字符,也就是可以匹配任何内容
    • [] 匹配中括号中任意一个字符,例如:[abc]代表一定匹配一个字符或者是a,或者是b,或者是c
    • [-] 匹配中括号中任意一个字符,代表一个范围。例如:[a-z]代表匹配一个小写字母
    • [^] 逻辑非,表示匹配不是中括号内的一个字符。例如:[^0-9]代表匹配一个不是数字的字符
  • 其它符号
    • '' 单引号。在单引号中所有的特殊符号,如$和反引号都没有特殊含义。
    • "" 双引号。在双引号中特殊符号都没有特殊含义,但是$\,反引号是例外,其分别拥有“调用变量的值”、“转义符”、“引用命令”的特殊含义。
    • `` 反引号。反引号括起来的内容是系统命令,在Bash中会先执行它。和$()作用一样,不过推荐使用$(),因为反引号非常容易看错。
    • $() 和反引号作用一样,用来引用系统命令
    • # 在shell脚本中,#开头的行代表注释
    • $ 用于调用变量的值,如需要调用变量name的值时,需要用$name的方式得到变量的值
    • \ 转义符,跟在\之后的特殊符号将失去特殊含义,变为普通字符。如\$将输出$符号,而不是当做变量引用

1.10 Vim编辑器

1.10.1 vim概述

  • visual interface

  • 目前vi升级为vim操作

    vim支持多级撤销
    vim可以跨平台运行
    vim支持语法高亮
    vim支持图形界面

1.10.2 vim编辑操作

  • command mode - 命令模式
  • insert mode - 输入模式
  • last line mode -底行模式(尾行,末行)
vim abc #打开指定文件,如abc文件,如果文件不存在,则自动创建文件

#编辑完之后输入以下命令退出vim
Esc  #按Esc退出键
:wq  #再输入该命令即可退出vim

vim + abc  #该命令表示打开文件之后,光标定位到最后一行

vim +3 abc  #该命令表示打开文件之后,光标定位到第三行,即输入数字为几,就定位到第几行

vim +/xxx abc  #该命令表示打开文件之后,光标定位到xxx第一次出现的这一行

vim aa bb cc  #该命令表示一次性打开文件aa,bb,cc,如果文件不存在,则自动创建文件
  • 常用命令
    :w 保存文件
    :q 退出文件
    :!
    :ls 列出打开的所有文件
    :n 切换到打开的下一个文件
    :N 切换到打开的上一个文件
    :15 定位到指定行
    /xxx 定位到xxx第一次出现的位置
    ?xxx 从光标位置向前搜索第一次出现xxx的位置
    h 光标左移
    j 光标下移
    k 光标上移
    l 光标右移
    ctrl + f 向下翻页
    ctrl + b 向上翻页
    ctrl + d 向下翻半页
    ctrl + u 向上翻半页
    dd 删除光标所在的行
    o 在光标所在的行的下方插入一行并切换到输入模式

1.11 磁盘管理

  • df [选项] 查看磁盘分区使用状况

    • 选项
      -l 仅显示本地磁盘(默认)
      -a 显示所有文件系统的磁盘使用情况,包含比如/proc/
      -h 以1024进制计算最合适的单位显示磁盘容量
      -H 以1000进制计算最合适的单位显示磁盘容量
      -T 显示磁盘分区类型
      -t 显示指定类型文件系统的磁盘分区
      -x 不显示指定类型文件系统的磁盘分区
  • du [选项] [文件夹或文件] 统计磁盘上文件的大小

    • 选项
      -b 以byte为单位统计文件
      -k 以KB为单位统计文件
      -m 以MB为单位统计文件
      -h 按照1024进制以最适合的单位统计文件
      -H 按照1000进制以最适合的单位统计文件
      -s 指定统计目标

1.11.1 硬盘分区

1、主分区和扩展分区总数不能超过4个
2、扩展分区最多只能有一个
3、扩展分区不能直接存取数据

  • MBR分区

    • 主分区不超过4个
    • 单个分区容量最大2TB
  • GPT分区

    • 主分区个数“几乎”没有限制
    • 单个分区容量“几乎”没有限制
  • 分区的格式化

    mkfs

  • 挂载分区

  • swap分区

1.12 用户与用户组

  • /etc/group 存储当前系统中所有用户组的信息

    Group : x : 123 : abc, def, xyz分别表示组名称:组密码占位符:组编号:组中用户名列表

  • /etc/gshadow 存储当前系统中用户组的密码信息

    Group: * : : abc, def, xyz 分别表示 组名称: 组密码:组管理者: 组中用户名列表

  • /etc/passwd 存储当前系统中所有用户的信息

    user : x : 123 : 456 : xxxxxxxx : /home/user : /bin/bash 分别表示 用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型

  • /etc/shadow 存储当前系统中所有用户的密码信息

    user: vf; /Zu8sdf... ::::: 分别表示 用户名: 密码 :::::

groupadd 用户组名称  #添加新的用户组
groupmod -n 用户组新名称 用户组原名称   #修改用户组的名称
groupmod -g 编号 用户组名称   #修改用户组的编号
groupdel 用户组名称   #删除用户组(需首先删除用户及其信息)
useradd -g 用户组名称 用户名  #添加用户到用户组
usermod -c 用户注释 用户名   #给用户添加注释
userdel 用户名  #删除用户
userdel -r 用户名  #删除用户及其信息

-----------------------------------------
passwd -l 用户名  #锁定用户及其信息
passwd -u 用户名  #解除用户的锁定
passwd -d 用户名  #清除用户的密码

gpasswd -a 用户名 新用户组  #将用户同时添加到新用户组,即属于多个组
gpasswd -d 用户名 新用户组  #将用户从新用组(附属组)移除

-----------------------------------------
id 用户名  #显示指定用户信息,包括用户编号、用户名;主要组编号及名称,附属组列表

groups 用户名   #显示用户所在的所有组

chfn 用户名   #设置用户资料,依次输入用户资料

finger 用户名  #显示用户详细资料

延伸阅读

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI人工智能科学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值