Linux 常用命令之文件和目录

时间:2021-07-01 16:28:15

1. cd 

命令格式:cd  [dirName]cd和目录之间使用空格隔开)

作用:切换当前目录至dirName

实例:

cd /home 切换当前目录到/home (查看当前目录命令为pwd)

cd .. 返回上一级目录 
cd ../.. 返回上两级目录 
cd ~ 进入个人的主目录 

2. ls

命令格式:ls [选项] [目录名] (目录名为空时表示当前目录)

作用: 查看目录中的文件

常用选项:

-a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件。

-l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来。

-r, –reverse 依相反次序排列。
-R, –recursive 同时列出所有子目录层。
–help 显示此帮助信息并离开。
-S 根据文件大小排序
–sort=WORD 以下是可选用的 WORD 和它们代表的相应选项:
extension -X status -c
none -U time -t
size -S atime -u
time -t access -u
version -v use -u

实例:
ls -l 显示当前目录中的文件和目录的详细资料 
ls -a 显示当前目录中的所有文件(包括隐藏文件)

3. mkdir

使用方式: mkdir [选项] dirName
说明:建立名称为 dirName 的子目录。
常用参数:
-p 确保目录名称存在,如果目录不存在的就新创建一个,例如 mkdir -p test2/test1,可用于创建多层目录。
-m, --mode= 模式,设定权限,例如mkdir -m 777 test3 标识创建一个所有用户均可以rw的目录test3

实例:

mkdir dir1 创建一个叫做 'dir1' 的目录' 
mkdir dir1 dir2 同时创建两个目录 
mkdir -p /tmp/dir1/dir2 创建一个目录树 

4. rm

使用方式:rm [选项] fileOrdir

作用:删除不需要的目录及文件。

常用选项:

-f, --force 强制删除。忽略不存在的文件,不提示确认
-i 在删除前需要确认
-r, -R, --recursive 递归删除目录及其内容

实例:

rm -f file1 删除一个叫做 'file1' 的文件' 
rmdir dir1 删除一个叫做 'dir1' 的目录' 
rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 
rm -rf dir1 dir2 同时删除两个目录及它们的内容 

5. cp

使用方式:cp [选项] 源文件 目的文件

作用:复制文件或目录

常用参数:

-f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
-i 或 --interactive 覆盖文件之前先询问用户
-r或-R  递归处理,将指定目录下的文件及子目录一并处理
 -p 或 --preserve  保留源文件或目录的属性,包括所有者、所属组、权限与时间
-b或--backup  删除,覆盖目标文件之前的备份,备份文件会在字尾加上一个备份字符串。
 
实例:

cp dir/* . 复制一个目录下的所有文件到当前工作目录 

6. mv

使用方式:mv [选项] 源文件 目的文件

作用:为文件或目录改名或将文件由一个目录移入另一个目录中

常用参数:

-b :若需覆盖文件,则覆盖前先行备份。 

-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;

-i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

实例:

mv dir1 new_dir 重命名/移动 一个目录

mv test.log test1.txt  重命名文件

mv test1.txt test3 移动文件

7. ln 

使用方式:ln [参数][源文件或目录][目标文件或目录]

作用:为某一个文件在另外一个位置建立一个同步的链接

常用参数:

-s : 进行软链接(symbolic link)

默认参数为硬链接

实例:

ln -s file1 lnk1 创建一个指向文件或目录的软链接 
ln file1 lnk1 创建一个指向文件或目录的硬链接 

软链接和硬链接的区别:

(1)软连接可以跨文件系统,硬连接不可以。
(2)关于inode节点的问题 。硬连接不管有多少个,都指向的是同一个inode节点,会把结点连接数增加,只要结点的连接数不是0,文件就一直存在,不管你删除的是源文件还是连接的文件 。只要有一个存在 ,文件就存在(其实也不分什么源文件连接文件的 ,因为他们指向都是同一个inode节点)。 当你修改源文件或者连接文件任何一个的时候 ,其他的文件都会做同步的修改。软链接不直接使用inode节点号作为文件指针,而是使用文件路径名作为指针。所以删除连接文件对源文件无影响,但是删除源文件,连接文件就会找不到要指向的文件 。软链接有自己的inode,并在磁盘上有一小片空间存放路径名.
(3)软连接可以对一个不存在的文件名进行连接 。
(4)软连接可以对目录进行连接。

8. touch

使用方式:touch [选项] 文件

作用:不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件

常用参数:

-a   或--time=atime或--time=access或--time=use  只更改存取时间。

-c   或--no-create  不建立任何文档。

-d  使用指定的日期时间,而非现在的时间。

-m   或--time=mtime或--time=modify  只更改变动时间。

-r  把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

-t  使用指定的日期时间,而非现在的时间。

touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm) 

touch log2012.log log2013.log 创建文件