终端是提供对操作系统 (OS) 的用户 shell 的访问的应用程序。传统上,shell 是用户和操作系统可以直接交互的地方。从历史上看,终端是一个物理接入点,由键盘和读数器(很久以前是打印机,后来是阴极射线管)组成,可以方便地访问大型机。不要被这段“古老”的历史所迷惑。终端在今天和半个世纪前一样重要,在本文中,我提供了五种常见的文件管理任务,您只需要 shell 就可以完成。
1. 打开一个终端并环顾四周
今天,每个人的办公桌上或包里都有一台电脑。大型机和终端模型现在基本上是通过应用程序模拟的。您的操作系统可能有一个唯一的名称,但通常它通常被称为“终端”或“控制台”。
- Linux:寻找Console、Konsole或Terminal。无论名称如何,您通常都可以使用关键字“终端”从应用程序菜单中启动它。
- macOS:默认的终端应用程序不是开源的,并且被广泛认为缺乏功能。下载iTerm2以获得功能丰富的 GPLv2 替代品。
- Windows:PowerShell是开源终端应用程序,但它使用自己的语言和语法。要使本文在 Windows 上有用,您可以安装提供 POSIX 环境的Cygwin 。
打开终端应用程序后,您可以使用命令查看文件系统ls。
ls
2.打开一个文件夹
在图形文件管理器中,您可以通过双击打开文件夹。打开后,该文件夹通常会在窗口中占主导地位。它成为您当前的位置。
在终端中,思维过程略有不同。您不是打开文件夹,而是更改到一个位置。最终结果是一样的:一旦你切换到一个文件夹,你就“在”那个文件夹中。它成为您当前的位置。
例如,假设您要打开“下载”文件夹。要使用的命令cd加上您要更改到的位置:
cd Downloads
要“关闭”文件夹,您需要更改该位置。离开您输入的文件夹由cd命令和两个点 ( ..) 表示:
cd ..
您可以练习进入文件夹然后再次离开,经常使用ls环顾四周并确认您已更改位置:
$ cd Downloads $ ls cat-photo.jpg $ cd .. $ ls Documents Downloads Music Pictures Videos $ cd Documents $ ls zombie-apocalypse-plan-C.txt zombie-apocalypse-plan-D.txt $ cd .. $ ls Desktop Documents Downloads Music Pictures Videos
经常重复,直到你习惯为止!
此练习的高级级别是使用点和文件夹名称的组合来浏览文件。
假设您想查看您的文档文件夹,然后查看您的桌面。这是初学者级别的方法:
$ cd Documents $ ls zombie-apocalypse-plan-C.txt zombie-apocalypse-plan-D.txt $ cd .. $ ls Desktop Documents Downloads Music Pictures Videos $ cd Desktop $ ls zombie-apocalypse-plan-A.txt
这种方法没有错。它有效,如果您清楚,那就使用它!但是,这是中间方法:
$ cd Documents $ ls zombie-apocalypse-plan-C.txt zombie-apocalypse-plan-D.txt $ cd ../Desktop $ ls zombie-apocalypse-plan-A.txt
您有效地直接从文档文件夹传送到桌面文件夹。
这也有一种高级方法,但是因为您知道推断它所需知道的一切,所以我把它留给您作为练习。(提示:它根本不使用cd。)
3.查找文件
承认吧,您有时会放错文件。有一个很棒的 Linux 命令可以帮助您再次找到它,该命令的名称很恰当find:
$ find $HOME -iname "*holiday*" /home/tux/Pictures/holiday-photos /home/tux/Pictures/holiday-photos/winter-holiday.jpeg
几点:
- 该find命令要求您告诉它在哪里查看。
- 广撒网通常是最好的(如果您知道在哪里查看,您可能就不必使用find),所以我$HOME习惯于find查看我的个人数据而不是系统文件。
- 该-iname选项指示find按名称搜索文件,忽略大小写。
- 最后,"*holiday*"参数告诉find我们文件名中某处出现了“holiday”这个词。* 字符是通配符,因此find定位任何包含“holiday”的文件名,无论“holiday”出现在文件名的开头、中间还是结尾。
命令的输出find是您要查找的文件或文件夹的位置。cd您可以使用以下命令更改到文件夹:
$ cd / home / tux / Pictures / holiday-photos $ ls winter-holiday.jpeg
但是,您不能cd访问文件:
$ cd /home/tux/Pictures/holiday-photos/winter-holiday.jpeg cd: Not a directory
4.打开一个文件
如果您有想要从终端打开的文件,请使用以下xdg-open命令:
$ xdg-open /home/tux/Pictures/holiday-photos/winter-holiday.jpeg
或者,您可以在特定应用程序中打开文件:
$ kate /home/tux/Desktop/zombie-apocalypse-plan-A.txt
5. 复制或移动文件或文件夹
cp命令复制并且文件mv移动。您可以通过提供文件的当前位置,然后提供其预期目的地来复制或移动文件。
例如,以下是将文件从 Documents 文件夹移动到其父目录的方法:
$ cd Documents $ ls zombie-apocalypse-plan-C.txt zombie-apocalypse-plan-D.txt $ mv zombie-apocalypse-plan-C.txt .. $ cd .. $ ls Documents Downloads Music Pictures Videos zombie-apocalypse-plan-C.txt
在移动或复制时,您还可以重命名它。以下是如何example.txt使用新名称将名为的文件移出目录old-example.txt:
$ mv example.txt ../old-example.txt
您实际上不必将文件从一个目录移动到另一个目录只是为了重命名它:
$ mv example.txt old-example.txt
用于文件的 Linux 终端
Linux 桌面有很多可用的文件管理器。有简单的,网络透明的,还有双面板的。有些是为 GTK、Qt、ncurses 和 Swing 编写的。大的,小的,等等。但是,如果不谈论从一开始就存在的那个:终端,就不能谈论 Linux 文件管理器。
终端是一个强大的工具,需要练习才能熟练使用它。我在学习终端的时候,能用就用,然后打开一个图形化的文件管理器,进行终端还没有学过的高级操作。如果您有兴趣学习如何使用终端,现在正是时候,所以今天就开始吧!