Linux学习笔记
当前位置:Linux学习笔记 > Linux 教程 > 正文

linux查看目录和文件命令

bbs.yuanmawu.net.jpg

显示当前目录:pwd

pwd 命令会显示当前所在的位置,即工作目录。例如,执行如下命令:

$ cd /usr/local/bin/ ##进入/usr/local/bin/目录 
$ pwd ##显示当前所在位置 
/usr/local/bin

改变目录:cd

cd 命令是在 Linux 文件系统的不同部分之间移动的基本工具。当登录系统之后,总是
处在用户主目录中。这个目录有一个名字,也就是“路径名”,它是由/home/开头,后面跟
着登录的用户名。
输入 cd 命令,后面跟着一个路径名作为参数,就可以直接进入另外一个子目录中去。
举例来说,使用下面的命令进入/usr/bin 子目录。

$ cd /usr/bin

在/usr/bin 子目录中时,可以用以下命令进入/usr 子目录。

$ cd ..

在/usr/bin 子目录中还可以使用下面的命令直接进入根目录,即“/”目录。

$ cd .. / ..

最后,总能够用下面的命令回到自己的用户主目录。

$ cd

或者

$ cd ~

列出目录内容:ls

ls 命令是 list 的简化形式, ls 的命令选项非常之多,这里只讨论一些最常用的选项。
ls 的基本语法如下:

ls [OPTION]… [FILE]…

不带任何参数的 ls 命令,用于列出当前目录下的所有文件和子目录。例如:

$ cd ##进入用户主目录 
$ ls 
bin Examples programming text 公共的 视频 文档 桌面 
Desktop Huawei share vmware 模板 图片 音乐

 

在这个列表中,可以方便地区分目录和文件。默认情况下,目录显示为蓝色;普通文
件显示为黑色;可执行文件显示为草绿色;淡蓝色则表示这个文件是一个链接文件(相当
于 Windows 下的快捷方式)。用户也可以使用带-F 选项的 ls 命令。

$ ls -F
bin/ Examples@ programming/ text* 公共的/ 视频/ 文档/ 桌面/
Desktop/ Huawei/ share/ vmware/ 模板/ 图片/ 音乐/

可以看到,-F 选项会在每个目录后加上/,在可执行文件后加*,在链接文件后加上@。
这个选项在某些无法显示颜色的终端上会比较有用。
但是这些文件就是主目录下所有的文件了吗?尝试一下-a 选项。如下:

$ ls -a 
. .gstreamer-0.10 .sudo_as_admin_successful 
.. .gtk-bookmarks .sudoku 
.adobe .gvfs .Tencent 
.anjuta Huawei text 
.aptitude .ICEauthority .themes 
.bash_history .icons .thumbnails 
.bash_logout .ies4linux .tomboy 
.bashrc .kde .tomboy.log 
bin .local .update-manager-core 
.cache .macromedia .update-notifier 
.chewing .metacity .viminfo 

在 Linux 上,这些文件被称作隐含文件,在默
认情况下并不会显示。除非指定了-a 选项,用于显示所有文件。命令的选项可以组合使用,
指定多个选项只需要使用一个短线。例如:

$ ls -aF 
./ .gstreamer-0.10/ .sudo_as_admin_successful 
../ .gtk-bookmarks .sudoku/ 
.adobe/ .gvfs/ .Tencent/ 
.anjuta/ Huawei/ text* 
.aptitude/ .ICEauthority .themes/ 
.bash_history .icons/ .thumbnails/ 
.bash_logout .ies4linux/ .tomboy/ 
.bashrc .kde/ .tomboy.log 
bin/ .local/ .update-manager-core/ 
.cache/ .macromedia/ .update-notifier/ 
.chewing/ .metacity/ .viminfo 


 

另一个常用选项是-l 选项。这个选项可以用来查看文件的各种属性。例如:

$ cd /etc/fonts/ 
$ ls -l 
总用量 24 
drwxr-xr-x 2 root root 4096 2008-08-01 21:25 conf.avail 
drwxr-xr-x 2 root root 4096 2008-08-01 21:25 conf.d 
-rw-r--r-- 1 root root 5283 2008-02-29 01:22 fonts.conf 
-rw-r--r-- 1 root root 6961 2008-02-29 01:22 fonts.dtd

在 ls 命令后跟上路径名可以查看该子目录中的内容。例如:

$ ls /etc/init.d/ 
acpid hwclock.sh reboot 
acpi-support keyboard-setup rmnologin 
alsa-utils killprocs rsync 
anacron klogd samba 
apparmor laptop-mode screen-cleanup 
apport linux-restricted-modules-common sendsigs 


列出目录内容:dir 和 vdir
Windows 用户可能更熟悉 dir 这个命令。在 Linux 中,dir 除了比 ls 的功能更少,其他
都是一样的。

 Shell 基本命令

 

$ dir /etc/init.d/ 
acpid killprocs reboot 
acpi-support klogd rmnologin 
alsa-utils laptop-mode rsync 
anacron linux-restricted-modules-common samba 
apache2 loopback screen-cleanup 
apparmor module-init-tools sendsigs 
apport mountall-bootclean.sh single 
atd mountall.sh skeleton

 

vdir 相当于为 ls 命令加上-l 选项,默认情况下列出目录和文件的完整信息。

$ vdir /etc/init.d/
总用量 508

-rwxr-xr-x 1 root root 2710 2008-04-19 01:05 acpid 
-rwxr-xr-x 1 root root 762 2007-08-31 10:48 acpi-support 
-rwxr-xr-x 1 root root 9708 2008-02-27 21:21 alsa-utils 
-rwxr-xr-x 1 root root 1084 2007-03-05 22:32 anacron 
-rwxr-xr-x 1 root root 5736 2008-06-25 21:50 apache2 
-rwxr-xr-x 1 root root 2653 2008-04-08 04:50 apparmor 


查看文本文件:cat 和 more
cat 命令用于查看文件内容(通常这是一个文本文件),后跟文件名作为参数。例如:

$ cat day
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

cat 可以跟多个文件名作为参数。当然也可以使用通配符:

$ cat day weather
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
sunny
rainy
cloudy
windy

对于程序员而言,为了调试方便,常常需要显示行号。为此,cat 命令提供了-n 选项,
在每一行前显示行号。

$ cat -n stack.h
1 /*Header file of stack */
2 /* 2008-9-3 */
3

 

4 #ifndef STACK_H 
5 #define STACK_H 
6 
7 struct list { 
8 int data; 
9 struct list *next; 
10 }; 
11 
12 struct stack { 
13 int size; /* the size of the stack */ 
14 struct list *top; 
15 }; 
16 
17 typedef struct list list; 
18 typedef struct stack stack; 
19 
20 void push( int d, stack *s ); 
21 int pop( stack *s ); 
22 
23 int is_empty( stack *s ); 
24 
25 #endif

 

cat 命令会一次将所有内容全部显示在屏幕上,这看起来是一个致命的缺陷。因为对于
一个长达几页甚至几十页的文件而言,cat 显得毫无用处。为此,Linux 提供 more 命令来
一页一页地显示文件内容。如下:

$ more fstab 
# /etc/fstab: static file system information. 
# 
# <file system> <mount point> <type> <options> <dump> <pass> 
proc /proc proc defaults 0 0 
# /dev/sda5 
…… 
# /dev/sda6 
UUID=da9367d2-dabb-4817-8e6a-21c782911ee1 /home ext3 relatime 
0 2 
# /dev/sda9 
UUID=3973793e-2390-4c47-b3d6-499db983d463 /labs ext3 relatime 
0 2 
# /dev/sda10 
UUID=3ac7978d-6fb4-4dcf-baa9-bdec0cb51222 /station ext3 relatime 
0 2 
# /dev/sda7 
UUID=fc5440b8-5558-4e9f-99c0-e85062083895 /usr ext3 relatime 
0 2 
# /dev/sda8 
--More--(75%)

 

可以看到,more 命令会在最后显示一个百分比,表示已显示内容占整个文件的比例。
按下空格键向下翻动一页,按 Enter 键向下滚动一行。按 Q 键退出

未经允许不得转载:Linux学习笔记 » linux查看目录和文件命令

赞 (0)
分享到:更多 ()