这篇文章需要关注,因为它不符合我们的
维基指南。
如果您想贡献,请阅读此维基的规则,如果您有任何问题,请随时
联系维基团队,我们非常乐意帮助您!:-)
终端是一个纯文本用户界面。它提供对机器的底层访问,并且可以是一个非常有帮助和强大的工具。
例如,您可以
- 对系统进行深入而重大的更改
- 从程序中获取更多消息
- 通过运行脚本来加速重复性任务
- 使用不支持图形用户界面的机器
终端的主要缺点是它很难(但并非不可能!)学习。可以通过虚拟终端或通过称为终端模拟器的图形程序来访问它。
终端模拟器
Shell
在使用终端时,您将命令输入到 shell 中。Shell 有各种各样的版本,从非常基本的版本到更复杂的版本。主要区别在于内置功能的数量。最常用的 shell 之一是 bash,它是 openSUSE 中的默认 shell。
其他著名的 shell 包括 Korn Shell (ksh)、zsh、C Shell (csh)、tcsh 和 Bourne Shell (sh)。
关于 Shell 提示符
当调用 shell 时,提示符是每行上首先显示的内容。用户提示符看起来像这样
用户shell 提示符通常以 $ 结尾
user@computername:~$
root shell 提示符始终以 # 结尾。
root@computername:~#
帮助实用程序
主要的命令行帮助实用程序是 man。要按关键字查找命令
$ man -k 关键字
要阅读特定命令的 man 页面
$ man 命令名
info 是另一个文档实用程序。某些程序可能列在 info 页面中。
内置命令 (bash)
这些是 shell 的内置命令。请注意,这些命令在其他 shell 中可能略有不同。
| alias |
创建别名 |
|
break |
退出循环 |
|
builtin |
运行 shell 内置命令 |
| case |
有条件地执行命令 |
|
cd |
更改目录 |
|
clear |
清除终端屏幕 |
| 命令 |
运行命令 - 忽略 shell 函数 |
|
continue |
恢复循环的下一次迭代 |
|
declare |
声明变量并赋予它们属性 |
| dirs |
显示记住的目录列表 |
|
echo |
在屏幕上显示消息 |
|
enable |
启用和禁用内置 shell 命令 |
| env |
环境变量 |
|
eval |
评估多个命令/参数 |
|
exit |
退出 shell |
| exec |
执行命令 |
|
export |
设置环境变量 |
|
false |
什么也不做,失败 |
| 脚本 |
扩展单词并执行命令 |
|
function |
定义函数宏 |
|
getopts |
解析位置参数 |
| hash |
记住名称参数的完整路径名 |
|
history |
命令历史记录 |
|
if |
有条件地执行命令 |
| let |
对 shell 变量执行算术运算 |
|
local |
创建变量 |
|
logout |
退出登录 shell |
| pushd |
保存然后更改当前目录 |
|
readonly |
将变量/函数标记为只读 |
|
read |
从标准输入读取一行 |
| return |
退出 shell 函数 |
|
select |
接受键盘输入 |
|
set |
操作 shell 变量和函数 |
| shift |
移动位置参数 |
|
shopt |
Shell 选项 |
|
source |
从文件 `.` 运行命令 |
| times |
用户和系统时间 |
|
trap |
在设置信号时运行命令 (bourne) |
|
true |
什么也不做,成功 |
| 类型 |
描述一个命令 |
|
umask |
用户文件创建掩码 |
|
umount |
卸载设备 |
| unalias |
删除别名 |
|
unset |
删除变量或函数名称 |
|
until |
执行命令 (直到出错) |
| while |
执行命令 |
|
常用的终端应用程序
这些应用程序非常常见,可以在大多数 Linux 发行版中找到。其中大多数包含在发行版的默认 (基本) 安装中。
A
| apropos |
搜索帮助手册页 (man -k) |
|
awk |
查找和替换文本、数据库排序/验证/索引 (最好使用 perl) |
|
|
|
C
| cal/gcal |
显示日历 |
|
cat |
显示文件内容 |
|
cfdisk |
Linux 的分区表操作程序 |
| chgrp |
更改组所有权 |
|
chmod |
更改访问权限 |
|
chown |
更改文件所有者和组 |
| chroot |
使用不同的根目录运行命令 |
|
cksum |
打印 CRC 校验和和字节数 |
|
cmp |
比较两个文件 |
| comm |
逐行比较两个排序后的文件 |
|
cp |
将一个或多个文件复制到另一个位置 |
|
cron |
执行计划命令的守护程序 |
| crontab |
安排在以后运行的命令 |
|
csplit |
将文件拆分为上下文确定的部分 |
|
cut |
将文件分成几个部分 |
D
| date |
显示或更改日期和时间 |
|
dc |
桌面计算器 |
|
dd |
Data Dump - 转换和复制文件 |
| df |
显示可用磁盘空间 |
|
diff |
显示两个文件之间的差异 |
|
diff3 |
显示三个文件之间的差异 |
| dig |
DNS 查询 |
|
dir |
简要列出目录内容 |
|
dircolors |
`ls` 的颜色设置 |
| dirname |
将完整路径名转换为仅路径 |
|
du |
估计文件空间使用情况 |
|
|
|
E
| egrep |
搜索文件,查找与扩展表达式匹配的行 |
|
eject |
弹出可移动介质 |
|
ethtool |
以太网卡设置 |
|
expand |
将制表符转换为空格 |
| expr |
评估表达式 |
|
F
| fdformat |
软盘的低级格式化 |
|
fdisk |
Linux 的分区表操作程序 |
|
fgrep |
搜索文件,查找与固定字符串匹配的行 |
|
| 文件 |
确定文件类型 |
|
find |
搜索满足所需标准的的文件 |
|
fmt |
重新格式化段落文本 |
| fold |
将文本换行以适应指定的宽度 |
|
format |
格式化磁盘或磁带 |
| free |
显示内存使用情况 |
|
fsck |
文件系统一致性检查和修复 |
|
ftp |
文件传输协议 |
G
| gawk |
在文件内查找和替换文本 |
|
grep |
搜索文件,查找与给定模式匹配的行 |
|
groups |
打印用户所属的组名 |
| gzip |
压缩或解压缩命名文件 |
H
| head |
输出文件的开头部分 |
|
hostname |
打印或设置系统名称 |
I
| id |
打印用户和组 ID |
|
ip |
配置网络接口 |
|
import |
捕获 X 服务器屏幕并将图像保存到文件 |
| install |
复制文件并设置属性 |
L
| less |
一次显示一个屏幕的输出 |
|
ln |
创建文件之间的链接 |
|
locate |
查找文件 |
| logname |
打印当前登录名 |
|
look |
显示以给定字符串开头的行 |
|
lpc |
行打印机控制程序 |
| lpr |
离线打印 |
|
lprint |
打印文件 |
|
lprintd |
中止打印作业 |
| lprintq |
列出打印队列 |
|
lprm |
从打印队列中删除作业 |
|
ls |
列出有关文件的信息 |
| lsof |
列出打开的文件 |
M
| make |
重新编译一组程序 |
|
man |
帮助手册 |
|
mkdir |
创建新文件夹 |
| mkfifo |
创建 FIFO (命名管道) |
|
mkisofs |
创建混合 ISO9660/JOLIET/HFS 文件系统 |
|
mknod |
创建块或字符特殊文件 |
| more |
一次显示一个屏幕的输出 |
|
mount |
挂载文件系统 |
|
mtools |
操作 MS-DOS 文件 |
| mv |
移动或重命名文件或目录 |
N
| netstat |
网络信息 |
|
nice |
设置命令或作业的优先级 |
|
nl |
对行编号并写入文件 |
| nohup |
运行不受挂断影响的命令 (setsid 更好) |
|
nslookup |
交互式查询 Internet 名称服务器 |
P
| passwd |
修改用户密码 |
|
paste |
合并文件中的行 |
|
pathchk |
检查文件名可移植性 |
| ping |
测试网络连接 |
|
popd |
恢复当前目录的先前值 |
|
pr |
准备文件进行打印 |
| printcap |
打印机功能数据库 |
|
printenv |
打印环境变量 |
|
printf |
格式化并打印数据 |
| ps |
进程状态 |
|
pwd |
打印工作目录 |
Q
| quota |
显示磁盘使用情况和限制 |
|
quotacheck |
扫描文件系统以获取磁盘使用情况 |
|
quotactl |
设置磁盘配额 |
R
| ram |
ram 磁盘设备 |
|
rcp |
在两台机器之间复制文件 |
|
remsync |
通过电子邮件同步远程文件 |
| rm |
删除文件 |
|
rmdir |
删除文件夹 |
|
rsync |
远程文件复制 (同步文件树) |
S
| screen |
终端窗口管理器 |
|
scp |
安全复制 (远程文件复制) |
|
sdiff |
交互式合并两个文件 |
| sed |
流编辑器 (最好使用 perl) |
|
seq |
打印数字序列 |
|
sftp |
安全文件传输程序 |
| shutdown |
关闭或重新启动 Linux |
|
sleep |
延迟指定的时间 |
|
sort |
对文本文件进行排序 |
| split |
将文件拆分为固定大小的部分 |
|
ssh |
Secure Shell 客户端 (远程登录程序) |
|
strace |
跟踪系统调用和信号 |
| su |
替换用户身份 |
|
sum |
打印文件的校验和 |
|
symlink |
为文件创建新名称 |
| sync |
将磁盘上的数据与内存同步 |
T
| tail |
输出文件的最后一部分 |
|
tar |
Tape ARchiver |
|
tee |
将输出重定向到多个文件 |
| test |
评估条件表达式 |
|
time |
测量程序运行时间 |
|
touch |
更改文件时间戳 |
| top |
列出系统上运行的进程 |
|
traceroute |
跟踪到主机的路由 |
|
tr |
转换、压缩和/或删除字符 |
| tsort |
拓扑排序 |
|
tty |
打印标准输入终端的文件名 |
U
| ulimit |
限制用户资源 |
|
uname |
打印系统信息 |
|
unexpand |
将空格转换为制表符 |
| uniq |
去重文件 |
|
units |
在不同刻度之间转换单位 |
|
unshar |
解包 shell 归档脚本 |
| useradd |
创建新用户帐户 |
|
usermod |
修改用户帐户 |
|
users |
列出当前登录的用户 |
| uuencode |
编码一个二进制文件 |
|
uudecode |
解码由 uuencode 创建的文件 |
V
| v |
详细列出目录内容 (`ls -l -b') |
|
vdir |
详细列出目录内容 (`ls -l -b') |
|
vi |
文本编辑器 |
W
| watch |
周期性地执行/显示程序 |
|
wc |
打印字节数、单词数和行数 |
|
whereis |
报告命令的所有已知实例 |
| which |
在用户的路径中定位一个程序文件 |
|
谁 |
打印当前登录的所有用户名 |
|
whoami |
打印当前用户 ID 和名称 (`id -un') |
| Wget |
通过 HTTP、HTTPS 或 FTP 检索网页或文件 |
.period 从文件中运行命令
正如你所见,这个列表相当广泛,然而这些命令中的许多可能永远不需要。ls 命令是使用最频繁的命令之一,也是最简单的命令之一。
结论
在 openSUSE 中,终端默认启动 bash shell。在安装的桌面具有有限功能或不可用时,使用命令至关重要。