终端

跳转到:导航搜索
Icon-cleanup.png
这篇文章需要关注,因为它不符合我们的维基指南
如果您想贡献,请阅读此维基的规则,如果您有任何问题,请随时联系维基团队,我们非常乐意帮助您!:-)

终端是一个纯文本用户界面。它提供对机器的底层访问,并且可以是一个非常有帮助和强大的工具。

例如,您可以

  • 对系统进行深入而重大的更改
  • 从程序中获取更多消息
  • 通过运行脚本来加速重复性任务
  • 使用不支持图形用户界面的机器

终端的主要缺点是它很难(但并非不可能!)学习。可以通过虚拟终端或通过称为终端模拟器的图形程序来访问它。

终端模拟器


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)
B
bzip2 压缩或解压缩命名文件
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 复制文件并设置属性
J
join 连接公共字段上的行
K
kill 停止正在运行的进程
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 检索网页或文件
X
xargs 执行实用程序,传递构造的参数列表
Y
yes 打印一个字符串,直到被中断

.period 从文件中运行命令

正如你所见,这个列表相当广泛,然而这些命令中的许多可能永远不需要。ls 命令是使用最频繁的命令之一,也是最简单的命令之一。


结论

在 openSUSE 中,终端默认启动 bash shell。在安装的桌面具有有限功能或不可用时,使用命令至关重要。