千罗网
千罗网,你的生活秘书.

资讯动态

联系方式

联系地址:广东省珠海市斗门区白藤湖幸福南路9栋1号商铺

联系电话:136 0244 7383

E--mail:518 5438@qq.com

联 系 人:雷先生

邮政编号:519090

当前位置: 首页 > 资讯动态 > 运维技术文章
运维技术文章

Linux基础之实例解说目录/文件命令

 

一、列出文件列表的ls命令

ls命令(list)是很常用的命令,可以让用户显示目前目录中有哪些文件和子目录。因为ls的参数相当多,但是有些极少在使用,所以这里仅介绍常用的部分:

1、不加任何参数时,显示当前目录的内容。

[root@localhost /root]# ls

Desktop

2、-a 显示所有文件和目录(若无此参数,句点开始的文件和目录不会显示出来)。

[root@localhost /root]# ls -a

. .bash_logout .Desktop_big5 .gv .tcshrc

.. .bash_profile .Desktop_en .kde .Xauthority

.abcuser.dict .bashrc .Desktop_gb .kderc .Xdefaults

.abcuser.rem .cshrc .gnome .lynx_cookies

.bash_history Desktop .gnome-desktop .sawfish

3、-A 显示所有文件和目录(它比-a少显示.和..两项)。

4、-l 以长格式显示

[root@localhost /root]# ls -l

total 0

lrwxrwxrwx 1 root root 12 6月19 11:20 Desktop ->; .Desktop_gb/

5、混合使用参数:命令的大部分参数可以合并使用。

读者可能已经注意到,藏格式显示提供了许多信息,其中各个字段的意义将在以后的系列中介绍。


二、切换目录的cd命令

cd(change directory)可以让用户切换目前的目录,下面来看几个cd命令的常见用法:

[root@localhost /root]#cd data <==切换到data子目录

[root@localhost /root]#cd .. <==切换到上一级目录

[root@localhost /root]#cd / <==切换到根目录

[root@localhost /root]#cd ~ <==切换到用户根目录

[root@localhost /root]#cd /usr/bin <==切换到/usr/bin目录

在Linux的目录中,有几个特别的目录:"."表示当前目录,".."表示上一层目录,"/"表示根目录,"~"表示用户根目录(用户登录时所在的目录)。


三、建立目录的mkdir命令

mkdir(make directory)可用来建立子目录。例如:

[root@localhost /root]#mkdir data <==在当前目录下建立data目录

[root@localhost /root]#mkdir /data <==在根目录下建立data目录

注意:用户不能在一个不存在的目录中建立子目录。例如:目录/home2若不存在,则不能直接建立/home2/tony目录。


四、删除目录的rmdir命令

rmdir(remove directory)可以用来删除"空"的子目录:

[root@localhost /root]#rmdir data <==删除data目录

[root@localhost /root]#rmdir /data <==删除根目录下的data目录


五、拷贝文件的cp命令

cp(copy)可以将文件拷贝成另一个文件,或是拷贝到另一个目录中。例如,下面实例可以在目前所在目录中,将data1.txt拷贝成data2.txt。

[root@localhost /root]#cp data1.txt data2.txt

下面范例可以将data3.txt拷贝到/tmp/data目录中:

[root@localhost /root]#cp data3.txt /tmp/data

为了方便进行各种拷贝操作,cp命令包含了许多参数:

1、-i 覆盖相同名称文件前先询问用户。下面实例会将data.txt拷贝到backup目录中,如果有覆盖情况发生,则询问用户。

[root@localhost /root]#cp -i data.txt bachup

cpverwrite 'backup/data.txt'? y

2、-v 显示用命令执行过程。例如:

[root@localhost /root]# cp -v data.txt data1.txt

`data.txt' ->; `data1.txt' <==执行过程

3、-R 递归拷贝,即拷贝时将所有目录一并拷贝。下面范例会将目前目录下的所有文件(含子目录)拷贝到backup目录中:

[root@localhost /root]#cp -R * bachup


六、删除文件或目录的rm命令

rm(remove)可用来删除文件或目录。一般用法如下:

[root@localhost /root]#rm data.txt <==删除data.txt文件

[root@localhost /root]#rm * <==删除目前目录中所有文件

rm有一些常用参数:

1、-f 强迫删除文件爱你。在某些Unix系统默认状态下,rm命令会对每个要删除的文件提出确认询问。如果用户确定要删除这些文件,可以使用-f参数来避免询问。

[root@localhost /root]#rm -f *.txt

2、-i 在删除文件时提出询问。

[root@localhost /root]#rm -i *

rm:back:is a directory <==遇到目录会略过

rm:remove 'data1.txt'? y <==删除文件时会询问

rm:remove 'data2.txt'? n

rm:remove 'data3.txt'? n

3、-r 递归删除(连子目录一并删除)。下列命令会删除backup目录和backup目录下的所有文件和子目录。

[root@localhost /root]#rm -r backup


七、让显示画面暂停的more命令

当所要显示的内容会超过屏幕大小时,用户可以使用more命令来显示内容按多页方式进行显示,在用户按下任何键时,继续显示下一个画面:

[root@localhost /root]#ls -al |more

total 132

drwxr-x--- 9 root root 4096 6月27 21:18 .

drwxr-xr-x 22 root root 4096 6月27 21:06 ..

-rw-r--r-- 1 root root 42256 6月19 17:25 .abcuser.dict

......略

--More-- <==暂停,按下任何键会继续显示

more命令也可以单独使用,可以用来显示文字文件的内容。下面实例会显示data.txt文件的内容,并会在画面满屏时,暂时停止显示:

[root@localhost /root]#more data.txt


八、连接或显示文件的cat命令

cat(concatenate)可以显示文件的内容(经常和more搭配使用),或将多个文件合并成一个文件。以下命令会显示/etc/issue文件的内容:

[root@localhost root]# cat /etc/issue |more

Red Flag Linux release 4.0 (HOT)

Kernel \r on an \m

以下实例会用cat命令将data.txt的内容显示出来,而>;>;命令将显示结果重新定向附加到all_data.txt后面:

[root@localhost root]# cat data.txt >;>; all_data.txt

用户也可使用cat命令将文件内容合并到另一个文件中。例如,下面命令会将data1.txt和data2.txt的内容合并到all_data.txt文件中:

[root@localhost root]# cat data1.txt data2.txt >; all_data.txt

关于">;"与">;>;"的用法,稍后介绍。


九、移动或更改文件名的mv命令

mv(move)可以将文件移动到另一个地方,或者更改文件名称(Lniux中并没有ren或rename命令来更改文件名)。下面范例可将data.txt文件移动到别的目录中:

[root@localhost root]#mv data.txt .. <==将data.txt文件移动到上一层目录

[root@localhost root]#mv data.txt / <==将data.txt文件移动到根目录

下面范例可将data1.txt改名为data2.txt:

[root@localhost root]#mv data1.txt data2.txt


十、显示目前所在目录的pwd命令

pwd(print working directory)可显示用户目前所在目录。

[root@localhost root]#pwd

/root


十一、寻找文件的find命令

find命令可以指定搜索目录,并在搜索目录(和它所有的子目录)中搜索特定文件。

下面实例指定搜索目录为根目录(/)和根目录以下的所有子目录(这等于是搜索整个系统),搜寻文件名(-name参数)为gzip,如果能够找到相符合的文件,则显示出来(如果不加-print,搜寻结果不会显示出来):

[root@localhost root]# find / -name gzip -print

/usr/bin/gzip

/bin/gzip

搜寻结果表示/usr/bin/和/bin/目录都有名为gzip的文件。


十二、显示文件类型的file命令

file命令可以用来显示文件类型。下面范例会显示当前中所有文件的文件类型:

[root@localhost root]# file ./*

./Desktop: directory

./install.log: Non-ISO extended-ASCII text

./install.log.syslog: empty

./partitioninfo: ASCII text


十三、搜索字符串的grep命令

grep命令可以搜索特定字符串并显示出来,一般用来过滤先前结果,而避免显示太多不必要的信息。下面实例显示了file ./*命令所显示的结果中,包含ASCII字符串的行:

[root@localhost root]# file ./* |grep ASCII

./install.log: Non-ISO extended-ASCII text

./partitioninfo: ASCII text

"|"是管道符,稍后会介绍。


十四、重新定向与管道符

重新定向(redirect)可将某命令的结果输出到文件中,它有两种命令">;"和">;>;"。>;可将结果输出到文件中,如果该文件原本就存在,则该文件原有的内容会被删除;>;>;则将结果附加在原文件后面,原文件的内容不会被清除。

下面实例可将目前目录下的文件名输出到dir.txt文件中:

[root@localhost root]#ls -al >; dir.txt

下面实例可将data1.txt文件内容附加到all_data.txt文件中:

[root@localhost root]#cat data1.txt >;>; all_data.txt


管道符|(pipe)可将某命令的结果输出给另一命令。下面范例可将file ./*命令的结果输出给grep ASCII命令处理:

[root@localhost root]# file ./* |grep ASCII

./install.log: Non-ISO extended-ASCII text

./partitioninfo: ASCII text

 

点击次数:  更新时间:2017-06-30  【打印此页】  【关闭
在线交流 
千罗1 千罗1 千罗1
千罗2 千罗2
千罗3 千罗3
在线咨询若无回应,请电话联系。