Linux常用命令总结——文件管理


Linux常用命令总结——文件管理
 
Linux中的目录
路径:也就是linux中的目录(文件夹)有绝对路径和相对路径
根目录:/
用户主目录(home directory):位于/home目录下,用户登录时
工作目录(working directory):当前目录
当前目录查看命令:pwd (print working directory)
当前目录:./
当前目录的上一级目录:../或..
返回到上一级目录:cd ..
进入当前目录下的dirfile目录:cd dirfile
cd ~ :进入用户主目录(账号所在目录)  或者直接cd回车
cd - :(回到先前的目录)
创建、删除查看和显示目录
1.创建目录
格式:mkdir [选项]  目录
功能:创建目录
常用选项说明:
 -m  创建目录的同时设置访问权限
-p  一次性创建多级目录
【例】:在rootfile文件夹下创建test文件夹,并在test文件夹下创建file文件夹。
[cpp] 
[root@localhost rootfile]# mkdir -p test/file  
[root@localhost rootfile]# ls  
test  
[root@localhost rootfile]# cd test  
[root@localhost test]# ls  
file  
[root@localhost test]#  
 
【例】:在rootfile文件夹下创建test2文件夹,并设置test2的权限为766
[cpp] 
[root@localhost rootfile]# mkdir -m 766 test2  
[root@localhost rootfile]# ls  
test  test2  
[root@localhost rootfile]# ls -l  
total 16  
drwxr-xr-x 3 root root 4096 Jul 21 21:27 test  
drwxrw-rw- 2 root root 4096 Jul 21 21:30 test2  
 
注释:rwxrw-rw-分别对应三种不同用户的权限,分别有三们二进制表示,766对应111 110 110
2.删除目录
格式:rmdir  [选项]  目录
功能:删除目录
常用选项说明:
-p  递归删除目录,当子目录删除后其父目录为空时,也一同删除
【例】:删除test下的file目录(文件夹),同时test也一并删除
[cpp] 
[root@localhost rootfile]# ls  
test  test2  
[root@localhost rootfile]# rmdir -p test/file  
[root@localhost rootfile]# ls  
test2  
 
3.查看当前目录
格式:pwd
功能:pwd (print working directory),查看当前目录.
常用选项说明:
【例】:查看当前目录
[cpp] 
[root@localhost rootfile]# pwd  
/home/rootfile  
 
5.显示目录内容
格式:ls  [选项]  [文件目录]
功能:显示指定目录中的文件和了目录信息,当不指定目录时,显示当前目录下的文件和子目录信息
常用选项说明:
-a  显示所有文件和子目录,包括隐藏文件和主目录
-l  显示文件和子目录的详细信息,包括文件类型、权限、所有者和所属群组、文件大小、最后修改时间、文件名
-d  如果参数是目录,则只显示目录信息,而不显示其中所包含的文件信息
-t  按时间顺序显示
-R  不仅显示指定目录下的文件和子目录信息,而且还递归地显示子目录下的文件和子目录信息
创建和查看文件
创建文件
格式:touch filename
功能:创建文件
常用选项说明:
【例】:在rootfile下创建文件file.txt和test2/file2.txt
[cpp] 
[root@localhost rootfile]# touch file.txt  
[root@localhost rootfile]# touch test2/file2.txt  
[root@localhost rootfile]# ls  
file.txt  test2  
[root@localhost rootfile]# cd tes*  
[root@localhost test2]# ls  
file2.txt  
 
cat命令
格式:cat  [选项]  filename
功能:依次读取filename中的内容
常用选项说明:
【例】:读取rootfile下Test.java和file中的文件内容
[cpp] 
[root@localhost rootfile]# ls  
file.txt  test2  Test.class  Test.java  
[root@localhost rootfile]# vi test2  
[root@localhost rootfile]# vi file*  
[root@localhost rootfile]# cat Test.java  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
        }  
}  
[root@localhost rootfile]# cat Test.java file.txt  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
        }  
}  
this is a file test.  
 
【例】:把Test.java和file.txt文件合并到combine.txt文件中
[cpp] 
[root@localhost rootfile]# cat Test.java file.txt > combine.txt  
[root@localhost rootfile]# cat comb*  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
        }  
}  
this is a file test.  
 
more命令
格式:more  [选项]  filename
功能:依次读取filename中的内容,该命令与cat的不同是可以逐屏往下翻页显示,按q退出。
常用选项说明:
-p  显示下一屏之前先清屏
-s  文件中连续的空白行压缩成一个空白行显示
【例】:显示file.txt的内容
[cpp] 
[root@localhost rootfile]# more file.txt  
this is a file test.  
 
 
【例】:显示Test.java和file.txt的内容
[cpp] 
[root@localhost rootfile]# more Test.java file.txt  
::::::::::::::  
Test.java  
::::::::::::::  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
        }  
}  
::::::::::::::  
file.txt  
::::::::::::::  
this is a file test.  
 
 
less命令
格式:less  [选项]  filename
功能:依次读取filename中的内容,该命令与more的不同是不仅可以向下翻页,还可以向上翻页,使用上下键、Enter、空格、pageDown、pageUp可以实现前后翻页,按q退出。
常用选项说明:
【例】:显示Test.java的内容
[cpp] 
[root@localhost rootfile]# less Test.java  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
        }  
}  
 
head命令
格式:head  [选项]  filename
功能:显示文件的头几行
常用选项说明:
-n  显示文件的前n行,如果没有n值,默认为10行
【例】:显示Test.java的前3行
[cpp] 
[root@localhost rootfile]# head -3 Test.java  
public class Test {  
        public static void main(String args[]) {  
                System.out.println("Hello Linux!");  
 
tail命令
格式:tail  [选项]  filename
功能:显示文件的末尾几行
常用选项说明:
+n  从第n行开始显示
-n  显示文件的最后n行,如果没有n值,默认为最后10行
【例】:显示Test.java的最后3行
[cpp] 
[root@localhost rootfile]# tail -3 Test.java  
                System.out.println("Hello Linux!");  
        }  
}  
 
文件查找
格式:find  [选项]  filename
功能:从指定的目录开始,递归地搜索其子目录,查找满足条件的文件并对之采取相关的操作
常用选项说明:
-name ‘字串’  要查找的文件名,可以用通配符*、?、[]
-group ‘字串’  文件所属的用户组名
-user  文件所属的用户名
find命令提供的查询条件可以是一个用逻辑符and、or、not组成的复合条件
-a  逻辑与
-o  逻辑或
-!  逻辑非
【例】:查找当前目录下文件名含有Test的文件
[root@localhost rootfile]# find -name 'Test*'
./Test.class
./Test.java
【例】:在根目录下查找文件名为’temp’或是匹配’install*’的所有文件
[java] 
[root@localhost rootfile]# find / -name 'temp' -o -name 'instal*'  
/etc/rhgb/temp  
/etc/yum/pluginconf.d/installonlyn.conf  
/etc/vmware-tools/installer.sh  
/software/tomcat5/webapps/docs/appdev/installation.html  
/software/tomcat5/temp  
/sbin/install-info  
/sbin/installkernel  
/usr/share/aclocal-1.9/install-sh.m4  
/usr/share/icons/Bluecurve/96x96/mimetypes/install.png  
/usr/share/icons/Bluecurve/24x24/mimetypes/install.png  
/usr/share/icons/Bluecurve/16x16/mimetypes/install.png  
/usr/share/icons/Bluecurve/48x48/mimetypes/install.png  
/usr/share/aclocal-1.7/install-sh.m4  
/usr/share/doc/cyrus-sasl-lib-2.1.22/install.html  
/usr/share/doc/sgml-common-0.6.3/html/install-catalog.html  
/usr/share/doc/m2crypto-0.16/demo/Zope27/install_dir  
/usr/share/doc/m2crypto-0.16/demo/ZopeX3/install_dir  
/usr/share/doc/libstdc++-devel-4.1.1/html/install.html  
……  
 
【例】:在rootfile下查找不含Test*的文件
[java] 
[root@localhost rootfile]# find ! -name 'Test*'  
.  
./.Test2.swp  
./1q  
./.Test.java.swp  
./test2  
./test2/file2.txt  
./combine.txt  
./file.txt  
 
文字统计命令
格式:wc  [选项]  filename
功能:统计文件的字节数、字数、行数
常用选项说明:
-c  统计字节数
-l  统计行数
-w  统计字数
【例】:统计Test.java的字节数、行数、字数
[java] 
[root@localhost rootfile]# wc Test.java  
  5  14 105 Test.java  
[root@localhost rootfile]# wc -wcl Test.java  
  5  14 105 Test.java  
 
复制、移动和删除文件或文件夹
cp 命令
格式:cp  [选项]  源目录或文件  目标目录或文件
功能:将给出的文件或目录复制到另一个文件或目录中
常用选项说明:
-b  若存在同名文件,则覆盖前备份原来的文件
-f  强制覆盖同名文件
-r或R  按递归方式,保留原目录结构复制文件
【例】:复制file.txt文件到file2,若file2已经存在,则备份file2.
[java] 
[root@localhost rootfile]# ls  
1q  combine.txt  file.txt  test2  Test.class  Test.java  
[root@localhost rootfile]# cp -b file.txt file2  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file.txt  test2  Test.class  Test.java  
[root@localhost rootfile]# cp -b file.txt file2  
cp: overwrite `file2'? n  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file.txt  test2  Test.class  Test.java  
[root@localhost rootfile]# cp -b file.txt file2  
cp: overwrite `file2'? y  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  Test.class  Test.java  
 
【例】:把test2文件复制到test3文件夹
[java] 
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  Test.class  Test.java  
[root@localhost rootfile]#  
[root@localhost rootfile]# cp -r test2 test3  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class  Test.java  
 
mv命令
格式:mv  [选项]  源目录或文件  目标目录或文件
功能:移动或重命名文件或目录
常用选项说明:
-b  若存在同名文件,则覆盖前备份原来的文件
-f  强制覆盖同名文件
【例】:将/home/rootfile下的Test.java移动到/home/rootfile /test2下
[java] 
[root@localhost rootfile]# mv Test.java test2/Test  
[root@localhost rootfile]# ls -R  
.:  
1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class  
./test2:  
file2.txt  Test  
./test3:  
file2.txt  
 
rm 命令
格式:rm  [选项]  文件夹或目录
功能:删除文件夹或目录
常用选项说明:
-f  强制删除文件,不出现确认提示
-r或R  按递归方式删除目录,默认只删除文件
【例】:删除当前目录下的test3文件夹
[java] 
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  test3  Test.class  
[root@localhost rootfile]# ls test3  
file2.txt  
[root@localhost rootfile]# rm -r test3  
rm: descend into directory `test3'? y  
rm: remove regular empty file `test3/file2.txt'? y  
rm: remove directory `test3'? y  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  Test.class  
 
【例】: 强制删除当前目录下的test2文件夹
[java] 
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  test2  Test.class  
[root@localhost rootfile]# rm -rf test2  
[root@localhost rootfile]# ls  
1q  combine.txt  file2  file2~  file.txt  Test.class  
 

相关内容

    暂无相关文章