Ubuntu/命令行基础
< Ubuntu
命令行优点
编辑虽然桌面型计算机操作系统通常都采用图形用户界面,但命令行界面还是具有非常重要的作用和意义:
- 可实现图形界面不具有的功能。Linux的很多程序是面向命令行的,没有图形前端,只能用命令行使用。
- 可使用超级用户权限。一些需要超级用户权限的操作只能在命令行下运行。
- 高效快速。可借助正则表达式实现批量处理,还能向程序发送参数。
- 安全性高。可减少因错误操作或者权限问题导致的风险。
使用方法
编辑目前的桌面操作系统几乎都采用图形用户界面,而不是命令行界面。使用命令行,可通过以下几种方式。
虚拟终端
编辑虚拟终端是一种应用程序,此程序在图形界面内创建一个窗口,此窗口内就像是命令行界面的屏幕一样。
在Ubuntu中,可按快捷键Ctrl+Alt+T快速启动终端。
切换字符界面
编辑可在虚拟终端中输入:
INIT.D 3
将当前图形界面切换到命令行界面,可用于不得不关闭图形界面进行操作的情况。
输入:
INIT.D 5
切换回图形界面。
登陆其它tty
编辑可按Ctrl+Alt+F1或F2,F3……来切换到其他tty,即一个命令行登陆界面。这种方式完全不依赖于图形界面,且每个登陆屏幕相对独立互不干扰。
Shell
编辑Shell在计算机科学中,是指“提供用户使用界面”的软件,通常指的是命令行界面的解析器。一般来说,这个词是指操作系统中,提供访问内核所提供之服务的程序。
sh
编辑bash
编辑详见Bash
常用命令
编辑软件管理
编辑功能 | 命令 |
---|---|
查看软件xxx安装内容 | dpkg -L xxx |
查找软件库中的软件 | apt-cache search 正则表达式 或 aptitude search 软件包 |
显示系统安装包的统计信息 | apt-cache stats |
显示系统全部可用包的名称 | apt-cache pkgnames |
显示包的信息 | apt-cache show k3b |
查找文件属于哪个包 | dpkg -S filename 或 apt-file search filename |
查看已经安装了哪些包 | dpkg -l 也可用 dpkg -l less 翻页查看 |
查询软件xxx依赖哪些包 | apt-cache depends xxx |
查询软件xxx被哪些包依赖 | apt-cache rdepends xxx |
增加一个光盘源 | sudo apt-cdrom add |
系统更新 | sudo apt-get update(这一步更新包列表) sudo apt-get dist-upgrade(这一步安装所有可用更新) 或者 sudo apt-get upgrade(这一步安装应用程序更新,不安装新内核等) |
清除所有已删除包的残馀配置文件 | dpkg -l grep ^rc awk '{print $2}' sudo xargs dpkg -P |
编译时缺少h文件的自动处理 | sudo auto-apt run ./configure |
查看安装软件时下载包的临时存放目录 | ls /var/cache/apt/archives |
备份当前系统安装的所有包的列表 | dpkg --get-selections grep -v deinstall > ~/somefile |
从上面备份的安装包的列表文件恢复所有包 | dpkg --set-selections < ~/somefile sudo dselect |
清理旧版本的软件缓存 | sudo apt-get autoclean |
清理所有软件缓存 | sudo apt-get clean |
删除系统不再使用的孤立软件 | sudo apt-get autoremove 如果使用 sudo apt-get autoremove --purge 的话会把这些孤立软件的残留配置文件也一并移除 |
查看包在服务器上面的地址 | apt-get -qq --print-uris install ssh cut -d\' -f2 |
彻底删除Gnome | sudo apt-get --purge remove liborbit2 |
彻底删除KDE | sudo apt-get --purge remove libqt3-mt libqtcore4 |
一键安装 LAMP 服务 | sudo tasksel install lamp-server |
删除旧内核 | sudo aptitude purge ~ilinux-image-.*\(\!`uname -r`\) |
导入ppa源的key值 | sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 5126890CDCC7AFE05126890CDCC7AFE0替换为你需要导入的Key值 |
增加一个ppa源 | sudo add-apt-repository ppa:user/ppa-name 使用 ppa 的地址替换 ppa:user/ppa-name |
系统版本升级 | sudo apt-get update sudo apt-get install update-manager-core sudo do-release-upgrade |