Linux的基本使用

Linux终端

Linux终端就像是一个文字版的“控制面板”,你可以通过它输入命令来告诉Linux系统你想要做什么。它不像图形界面那样有窗口和图标,只有一行行的文字和提示符(通常是 $ 或 #)。

在Linux系统中,有多种方式可以打开终端(也称为命令行界面或shell)。以下是一些常见的方法:

 

通过图形界面打开

在桌面环境中

在应用程序菜单中搜索:大多数Linux桌面环境(如GNOME、KDE Plasma、XFCE等)都有一个应用程序菜单,你可以在其中搜索“终端”或“Terminal”来找到并打开它。

使用快捷键:不同的桌面环境可能有不同的快捷键来打开终端。例如,在GNOME(如Ubuntu的默认桌面环境)中,你可以使用Ctrl + Alt + T组合键来快速打开终端。

在桌面图标上

双击终端图标:如果你的桌面上有终端的快捷方式或图标,只需双击它即可打开。

 

在登录界面或TTY上

**使用Ctrl + Alt + F[1-6]**:在图形界面登录之前或没有图形界面时,你可以使用这些组合键来访问不同的虚拟控制台(TTY)。例如,Ctrl + Alt + F1通常会带你到第一个TTY,这是一个纯文本的终端界面。

通过SSH远程连接

如果你在另一台计算机上,并且想要远程访问Linux系统,你可以使用SSH(Secure Shell)来连接到Linux机器的终端。这通常需要一个SSH客户端(如PuTTY、OpenSSH等)和Linux机器上的SSH服务器配置。

在其他应用程序中

使用集成终端:一些文本编辑器(如VS Code、Sublime Text等)和集成开发环境(IDE)可能内置了终端模拟器,你可以在这些应用程序中直接打开和使用终端。

 

注意事项

打开终端后,你会看到一个提示符(如$或#),这表示你已经准备好输入命令了。

不同的Linux发行版和桌面环境可能会有不同的终端程序(如gnome-terminal、konsole、xterm等),但它们的基本操作和功能都是相似的。

Linux shell

Linux Shell,简单来说,就是Linux系统中的一个命令解释器。你可以把它想象成一个中介,它站在用户和Linux系统内核之间,帮助用户和系统“沟通”。当你通过键盘输入命令时,Shell会“读懂”你的命令,然后把它传递给系统内核去执行。

普通用户登录系统时,Shell提示符通常为美元符号($)。这表示用户权限受限,只能执行普通用户权限范围内的命令。

root用户(也称为超级用户)登录系统时,Shell提示符为井号(#)。这表示用户具有对系统的完全控制权限,可以执行任何命令,包括修改系统配置、安装软件等。

Shell提示符通常包含用户名、主机名、当前工作目录等信息。这些信息通过特殊字符序列来表示,例如\u代表当前用户名,\h代表主机名,\w代表当前工作目录。

普通用户的提示符可能显示为[username@hostname current_directory]$,而root用户的提示符则可能显示为[root@hostname current_directory]#。

Shell命令的基本格式为:

command [选项] [参数]

其中,command是命令名,[选项]和[参数]是可选的,分别用于调整命令的功能和指定命令操作的对象。命令、选项和参数之间用空格分隔,回车表示命令的结束。

command是必须的部分,表示要执行的命令。例如,ls用于列出目录内容,cd用于切换目录等。

选项是可选部分,用于调整命令的功能。在Linux中,选项通常以短格式(如单个字符)或长格式(如完整的单词)的形式出现。

短格式选项:以减号-开始,后跟一个字符。例如,ls -l中的-l表示长格式列出。

长格式选项:以两个减号--开始,后跟完整的英文单词。例如,ls --all中的--all表示列出所有文件和目录。

通常情况下,短格式选项是长格式选项的缩写,但也有例外,比如ls -l就没有对应的长格式选项。

参数也是可选部分,它是命令的操作对象,如文件、目录、用户等。命令一般都需要加入参数,用于指定命令操作的对象。

例如,在ls -l main.c中,main.c就是参数,表示列出main.c这个文件的详细信息。

如果省略参数,则通常命令会有默认参数。

分隔符用于分隔命令、选项和参数,命令、选项和参数之间至少有一个空格分隔。例如,ls -l main.c中,ls、-l和main.c之间都有空格。在命令行中,空格通常用作分隔符。

Linux的文件和目录

在Linux系统中,文件和目录被组织成一个单根嵌套层次结构,其中所有的文件和目录都是从根目录(/)开始。可以把根目录想象成一棵大树的树干,它是所有文件和目录的起点。所有的文件和目录都直接或间接地“挂”在这棵大树上。

Linux的文件和目录结构就像一个倒挂的树,根目录在最顶部,然后分出很多“树枝”(子目录),每个“树枝”上又可以长出更多的“树枝”或“树叶”(文件或更深的子目录)。

以下是一些常用的命令和示例,用于操作Linux文件和目录结构:

ls - 列出目录内容
.
ls / # 列出根目录内容
ls ~ # 列出当前用户的家目录内容
.
cd - 改变当前工作目录
.
cd /path/to/directory # 进入指定目录
cd .. # 返回上一级目录
cd # 返回用户家目录
.
pwd - 打印当前工作目录的全路径
.
pwd # 打印当前工作目录的全路径
.
mkdir - 创建新目录
.
mkdir new_directory # 创建新目录
mkdir -p /path/to/new_directory # 创建一个路径中所有不存在的目录
.
rmdir 或 rm - 删除目录或文件
.
rmdir empty_directory # 删除空目录
rm file.txt # 删除文件
rm -r directory_with_contents # 删除目录及其内容
rm -f file.txt # 强制删除文件
.
cp - 复制文件或目录
.
cp file.txt newfile.txt # 复制文件
cp -r directory newdirectory # 复制目录
.
mv - 移动或重命名文件或目录
.
mv file.txt /path/to/new_directory # 移动文件到新目录
mv oldname.txt newname.txt # 重命名文件
.
touch - 创建空文件或更新文件时间戳
.
touch newfile.txt # 创建新空文件
touch -a existingfile.txt # 只更新访问时间
touch -m existingfile.txt # 只更新修改时间
.
cat - 查看文件内容
.
cat file.txt # 在终端显示文件内容
cat file1.txt file2.txt > mergedfile.txt # 合并文件并输出到新文件
.
find - 在文件系统中查找文件
.
find /path -name filename # 在指定路径下查找文件
find / -type d # 在根目录下查找所有目录

Linux的常见目录

/bin:存放了基本的命令和可执行文件,比如ls、cp等。这些命令是系统启动时就需要用到的。

/boot:存放了引导加载程序的相关文件,用于系统启动。

/dev:包含了设备文件,比如你的键盘、鼠标、硬盘等,它们都被当作文件来处理。

/etc:存放了系统的配置文件,比如网络配置、用户账户配置等。

/home:存放了用户的个人文件夹,每个用户都有自己的一个目录。

/lib 和 /usr/lib:存放了系统使用的函数库文件,这些库文件是程序执行时需要的。

/media 和 /mnt:用于挂载可移动介质或文件系统。

/opt:给主机额外安装软件所摆放的目录。

/root:系统管理员(root用户)的宿主目录。

/sbin, /usr/sbin, /usr/local/sbin:存放系统管理员使用的可执行命令。

/tmp:用于存放临时文件,这些文件在系统重启时会被删除。

/usr:包含了绝大多数用户都能访问的应用程序和文件。

/var:存放了经常变化的文件,比如日志文件或数据库等。

Linux的常用命令

grep - 搜索文本

grep "pattern" filename 在filename中搜索包含pattern的行

find - 在文件系统中查找文件

find /path/to/search -name "*.txt" 在指定路径下查找所有.txt文件

chmod - 更改文件或目录的权限

chmod 755 filename 更改filename的权限为755(rwxr-xr-x)

chown - 更改文件或目录的所有者和组

chown user:group filename 更改filename的所有者为user,组为group

tar - 打包和解包文件

tar -cvf archive.tar files_or_directories 打包文件和目录到archive.tar

tar -xvf archive.tar 解包archive.tar到当前目录

df - 显示磁盘空间使用情况

du - 显示文件和目录的磁盘使用情况

du -sh directoryname 显示directoryname的总磁盘使用情况

ps - 显示进程状态

ps -ef 显示所有进程

kill - 终止进程

kill PID 终止进程ID为PID的进程

top 和 htop - 显示系统运行状态(包括CPU、内存使用情况和进程列表)

wget - 从网络下载文件

wget http://example.com/file.txt 从指定URL下载文件

些只是Linux常用命令的冰山一角,但它们是日常工作和系统管理中最常用的。