文件及目录操作

创建文件

通过touch命令,或者流的重定向 如果文件不存在就创建一个空的。

$ touch file_name 

$ > file_name


ls 命令显示文件列表

ls -[abdhiklrRs] all/escape/directory/human-readable(Mb,G)/inode/block-size(kb)/format/reverse/Recursion/size.

-l 命令会列出文件类型,访问权限,链接数,用户属主,用户组,文件大小,最后修改日期,文件名,如果是特殊文件,文件大小字段会分为两段,分别表示文件的主次设备号。如果是符号链接文件,按“filename->被引用文件的路径名”形式给出文件名字段。

-l 第一列的文件类型分为7类:

- 普通文件,d 目录 ,l 符号链接文件 ,b 块特殊文件, c 字符特殊文件,p管道(FIFO)文件, s套接文件


ls 利用通配符显示文件点击打开链接

显示隐藏文件 -a 命令显示出.开头的文件 如: ls -al

ls -R 递归的显示当前目录下及其子目录中的文件


显示文件内容,cat 缺点是不能够分屏

$ cat    /etc/passwd 

$ cat    file01 file02 file03 > file_merge  输出重定向合并到一个文件中

$ cat    file01 >>file02                    类似于上面重定向一个文件中,只是现在是追加到file01后面

$ cat    file01 file02 > file01             将清空file01,然后写入file02


分页显示

$ more   /etc/passwd

$ less   /etc/passwd


显示文件的前几行,head 默认是显示前10行, head [-number | -n number] file

$ head /etc/passwd

显示文件的最后几行,tail 默认是显示最后10行 tail [+/- number [-lbcf]] file 

+表示从头开始,-表示从尾开始。


复制文件

cp -[ir] source_file target_file i是交互式命令,首先询问你是否确实执行。r是迭代行复制,会将当前目录及其子目录中的东西全部复制。


移动文件和改名

mv -[fi] source_file target_file f表示强制移动或改名,i同上是交互性命令。

mv -i test.sh  test_new.sh       更改名字为test_new.sh

mv -i test.sh /etc               移动文件到目录/etc下面


basename string [suffix] 

basename /home/ryu/scripts/test.sh      ==> test.sh 它是去掉string中最后一个/前的所有部分。

basename /home/ryu/scripts/test.sh  .sh ==> test    如果后面有后缀suffix的话,就同时去掉后缀。


如何把目录下的.old都改为.c

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


删除文件

rm -[fir] /home/ryu/test r递归删除目录中的东西,f强制删除,i交互式命令


显示当前工作目录 pwd

改换目录        cd /etc/apt ;   cd ~ ;

创建目录        mkdir src    ==> /home/ryu/src

移动目录        mv /home/ryu/scripts ..     把scripts移动到上一层目录

目录改名        mv  scripts new_scripts     把目录名更改为new_scripts   

复制目录        cp -r dir1 dir2

删除目录        rmdir -r dir                如果dir中有文件的话,必须加-r,进行递归删除,否则会报错


比较两个文件的不同

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx


你可能感兴趣的:(文件及目录操作)