今天继续分享一些Redhat Linux 8.0的知识,记得关注,会一直更新~
通过名称指定文件
学习目标
能够指定文件相对于当前工作目录的位置和绝对位置,确定并更改工作目录,以及列出目录的内容。
绝对路径和相对路径
文件或目录的路径指定其唯一的文件系统位置。跟随文件路径会遍历一个或多个指定的子目录,用正斜杠(/)分隔,直到到达目标位置。目录也称为文件夹,包含其他文件和其他子目录。它们的引用方式可以与文件相同。
绝对路径
绝对路径是一个完全限定的名称,用于指定文件在文件系统层次结构中的确切位置。它从根(/)目录开始,并指定为到达特定文件所必须遍历的每个子目录。
文件系统中的每个文件都有一个唯一绝对路径名,可通过一个简单的规则识别:第一个字符是正斜杠(/)的路径名是绝对路径名。
例如,系统消息日志文件的绝对路径名是/var/log/messages。绝对路径名键入起来可能会太长,所以也可通过相对于sheⅡ提示符当前工作目录的位置来查找文件。
当前工作目录和相对路径
与绝对路径一样,相对路径也标识唯一文件,仅指定从工作目录到达该文件所需的路径。识别相对路径名遵循一个简单规则:第一个字符是正斜杠之外的其他字符的路径名是相对路径名。位于/var目录的用户可以将消息日志文件相对指代为1og/messages。
Linux文件系统,包含但不限于ext4、XFS、GFS2和GlusterFS,都是区分大小写的。在同一目录中创建FileCase.txt和filecase.txt将生成两个不同的文件。
导航路径
pwd命令显示该shell的当前工作目录的完整路径名。这可以帮助您确定使用相对路径名来访问文件的语法。1s命令列出指定目录的目录内容;如果未指定目录,则列出当前工作目录的内容。
[user@host -]$pwd
/home/user
[user@host -]$1s
Desktop Documents Downloads Music Pictures Public Templates Videos
[user@host -]$
使用cd命令可更改shell的当前工作目录。如果没有为该命令指定任何参数,它将切换到您的主目录。
在下面的示例中,cd命令混用了绝对路径和相对路径,以更改shell的当前工作目录。
[userehost -]s pwd
/home/user
[user@host -]s cd Videos
[userehost Videos]$pwd
/home/user/Videos
[user@host Videos]$cd /home/user/Documents
[userehost Documents]$pwd
/home/user/Documents
[userghost Documents]$cd
[user@host -]$pwd
/home/user
[user@host ~]$
正如您在上述示例中所看到的,默认shell提示符还显示当前工作目录绝对路径的最后一个组件。例如,对于/home/user/Videos,仅显示Videos。当您的当前工作目录是主目录时,提示符显示波形符字符(~)。
touch该命令通常将文件的时间戳更新为当前日期和时间,而不进行其他修改。这通常可用于创建空文件(可供练习使用),因为“触碰”不存在的文件名会导致创建该文件。在以下示例中,touch命令在Documents和videos子目录中创建练习文件。
[user@host -]s touch videos/blockbuster1.0gg
[userghost -]s touch Videos/blockbuster2.0gg
[userghost -]s touch Documents/thesis chapter1.odf
[userehost ~]S touch Documents/thesis chapter2.odf
[userehost -]5
1s命令具有多个选项,用于显示文件的属性。最常见且最有用的选项是-1(长列表格式)、-a(包含隐藏文件在内的所有文件),以及-R(递归方式,包含所有子目录的内容)。
[user@host -]$ ls -1
total 15
drwxr-xr-x.2 user user 4096 Feb 7 14:02 Desktop
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Documents
drwxr-xr-x.3 user user 4096 Jan 9 15:00 Downloads
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Music
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Pictures
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Public
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Templates
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Videos
[user@host -]$ 1s -la
total 15
drwx------.16 user user 4096 Feb 8 16:15.
drwxr-xr-x.6 root root 4096 Feb 8 16:13..
-rw-------.1 user user 22664 Feb 8 00:37 .bash_history
-rw-r--r--.1 user user 18 Jul 9 2013 .bash_logout
-rw-r--r--.1 user user 176 Jul 9 2013 .bash_profile
-rw-r--r--.1 user user 124 Jul 9 2013 .bashrc
drwxr-xr-x.4 user user 4096 Jan 20 14:02.cache
drwxr-xr-x.8 user user 4096 Feb 5 11:45.config
drwxr-xr-x.2 user user 4096 Feb 7 14:02 Desktop
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Documents
drwxr-xr-x.3 user user 4096 Jan 25 20:48 Downloads
drwxr-xr-x.11 user user 4096 Feb 6 13:07 .gnome2
drwx------.2 user user 4096 Jan 20 14:02.gnome2_private
-rw-------.1 user user 15190 Feb 8 09:49.ICEauthority
drwxr-xr-x.3 user user 4096 Jan 9 15:00.local
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Music
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Pictures
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Public
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Templates
drwxr-xr-x.2 user user 4096 Jan 9 15:00 Videos
[user@host -]$
列表顶部的两个特殊目录是当前目录(.)和父目录(…)。这些特殊目录存在于系统中的每一目录。开始使用文件管理命令时,您将发现它们的用处。
[userehost ~]$1s -R
.;
Desktop Documents Downloads Music Pictures Public Templates Videos
./Desktop
./Documents:thesis_chapter1.odf thesis_chapter2.odf
,/Downloads:
./Music:
./Pictures:
./Public:
,/Templates:
./Videos:
blockbuster1.ogg blockbuster2.ogg
[userghost -]$
cd命令有许多选项。其中一些非常有用,值得您尽早练习和经常使用。
cd-命令可更改到用户在进入当前目录之前所处的目录。
以下示例演示了这一行为,在两个目录之间交替,这在处理一系列类似任务时很有用。
[user@host -]$cd videos
[userghost Videos]$pwd
/home/user/Videos
[userghost Videos]$cd /home/user/Documents
[userghost Documents]$pwd
/home/user/Documents
[user@host Documents]$cd -
[userghost Videos]$pwd
/home/user /videos
[user@host Videos]$cd -
[userehost Documents]$pwd
/home/user/Documents
[userghost Documents]$cd -
[user@host Videos]$pwd
/home/user/Videos
[user@host Videos]$cd
[userghost -]5
cd …命令使用…隐藏目录上移一个级别,进入其父目录,而不必知道确切的父目录名称。
其他隐藏目录(.)可为当前位置是来源或目标参数的命令指定当前目录,以此免除键入目录绝对路径名的必要。
[user@host Videos]$pwd
/home/user/Videos
[user@host Videos]$cd .
[userghost videos]$pwd
/home/user/Videos
[userehost Videos]$cd ..
[user@host -]$pwd
/home/user
[userghost -]s cd ..
[userghost home]$pwd
/home
[user@host home]$cd ..
[userghost /]s pwd
/
[userehost /]$cd
[user@host ~]$pwd
/home/user
[user@host -]$
带你玩转Redhat Linux 8.0
想了解 新技术 9.0
想获取完整的电子档
可👇咨询
关注公众号↑↑↑:IT运维大本营